| line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
|
1
|
|
|
|
|
|
|
package Paws::IAM::EvaluationResult; |
|
2
|
1
|
|
|
1
|
|
788
|
use Moose; |
|
|
1
|
|
|
|
|
3
|
|
|
|
1
|
|
|
|
|
11
|
|
|
3
|
|
|
|
|
|
|
has EvalActionName => (is => 'ro', isa => 'Str', required => 1); |
|
4
|
|
|
|
|
|
|
has EvalDecision => (is => 'ro', isa => 'Str', required => 1); |
|
5
|
|
|
|
|
|
|
has EvalDecisionDetails => (is => 'ro', isa => 'Paws::IAM::EvalDecisionDetailsType'); |
|
6
|
|
|
|
|
|
|
has EvalResourceName => (is => 'ro', isa => 'Str'); |
|
7
|
|
|
|
|
|
|
has MatchedStatements => (is => 'ro', isa => 'ArrayRef[Paws::IAM::Statement]'); |
|
8
|
|
|
|
|
|
|
has MissingContextValues => (is => 'ro', isa => 'ArrayRef[Str|Undef]'); |
|
9
|
|
|
|
|
|
|
has OrganizationsDecisionDetail => (is => 'ro', isa => 'Paws::IAM::OrganizationsDecisionDetail'); |
|
10
|
|
|
|
|
|
|
has ResourceSpecificResults => (is => 'ro', isa => 'ArrayRef[Paws::IAM::ResourceSpecificResult]'); |
|
11
|
|
|
|
|
|
|
1; |
|
12
|
|
|
|
|
|
|
|
|
13
|
|
|
|
|
|
|
### main pod documentation begin ### |
|
14
|
|
|
|
|
|
|
|
|
15
|
|
|
|
|
|
|
=head1 NAME |
|
16
|
|
|
|
|
|
|
|
|
17
|
|
|
|
|
|
|
Paws::IAM::EvaluationResult |
|
18
|
|
|
|
|
|
|
|
|
19
|
|
|
|
|
|
|
=head1 USAGE |
|
20
|
|
|
|
|
|
|
|
|
21
|
|
|
|
|
|
|
This class represents one of two things: |
|
22
|
|
|
|
|
|
|
|
|
23
|
|
|
|
|
|
|
=head3 Arguments in a call to a service |
|
24
|
|
|
|
|
|
|
|
|
25
|
|
|
|
|
|
|
Use the attributes of this class as arguments to methods. You shouldn't make instances of this class. |
|
26
|
|
|
|
|
|
|
Each attribute should be used as a named argument in the calls that expect this type of object. |
|
27
|
|
|
|
|
|
|
|
|
28
|
|
|
|
|
|
|
As an example, if Att1 is expected to be a Paws::IAM::EvaluationResult object: |
|
29
|
|
|
|
|
|
|
|
|
30
|
|
|
|
|
|
|
$service_obj->Method(Att1 => { EvalActionName => $value, ..., ResourceSpecificResults => $value }); |
|
31
|
|
|
|
|
|
|
|
|
32
|
|
|
|
|
|
|
=head3 Results returned from an API call |
|
33
|
|
|
|
|
|
|
|
|
34
|
|
|
|
|
|
|
Use accessors for each attribute. If Att1 is expected to be an Paws::IAM::EvaluationResult object: |
|
35
|
|
|
|
|
|
|
|
|
36
|
|
|
|
|
|
|
$result = $service_obj->Method(...); |
|
37
|
|
|
|
|
|
|
$result->Att1->EvalActionName |
|
38
|
|
|
|
|
|
|
|
|
39
|
|
|
|
|
|
|
=head1 DESCRIPTION |
|
40
|
|
|
|
|
|
|
|
|
41
|
|
|
|
|
|
|
Contains the results of a simulation. |
|
42
|
|
|
|
|
|
|
|
|
43
|
|
|
|
|
|
|
This data type is used by the return parameter of C< |
|
44
|
|
|
|
|
|
|
SimulateCustomPolicy > and C< SimulatePrincipalPolicy >. |
|
45
|
|
|
|
|
|
|
|
|
46
|
|
|
|
|
|
|
=head1 ATTRIBUTES |
|
47
|
|
|
|
|
|
|
|
|
48
|
|
|
|
|
|
|
|
|
49
|
|
|
|
|
|
|
=head2 B<REQUIRED> EvalActionName => Str |
|
50
|
|
|
|
|
|
|
|
|
51
|
|
|
|
|
|
|
The name of the API action tested on the indicated resource. |
|
52
|
|
|
|
|
|
|
|
|
53
|
|
|
|
|
|
|
|
|
54
|
|
|
|
|
|
|
=head2 B<REQUIRED> EvalDecision => Str |
|
55
|
|
|
|
|
|
|
|
|
56
|
|
|
|
|
|
|
The result of the simulation. |
|
57
|
|
|
|
|
|
|
|
|
58
|
|
|
|
|
|
|
|
|
59
|
|
|
|
|
|
|
=head2 EvalDecisionDetails => L<Paws::IAM::EvalDecisionDetailsType> |
|
60
|
|
|
|
|
|
|
|
|
61
|
|
|
|
|
|
|
Additional details about the results of the evaluation decision. When |
|
62
|
|
|
|
|
|
|
there are both IAM policies and resource policies, this parameter |
|
63
|
|
|
|
|
|
|
explains how each set of policies contributes to the final evaluation |
|
64
|
|
|
|
|
|
|
decision. When simulating cross-account access to a resource, both the |
|
65
|
|
|
|
|
|
|
resource-based policy and the caller's IAM policy must grant access. |
|
66
|
|
|
|
|
|
|
See How IAM Roles Differ from Resource-based Policies |
|
67
|
|
|
|
|
|
|
|
|
68
|
|
|
|
|
|
|
|
|
69
|
|
|
|
|
|
|
=head2 EvalResourceName => Str |
|
70
|
|
|
|
|
|
|
|
|
71
|
|
|
|
|
|
|
The ARN of the resource that the indicated API action was tested on. |
|
72
|
|
|
|
|
|
|
|
|
73
|
|
|
|
|
|
|
|
|
74
|
|
|
|
|
|
|
=head2 MatchedStatements => ArrayRef[L<Paws::IAM::Statement>] |
|
75
|
|
|
|
|
|
|
|
|
76
|
|
|
|
|
|
|
A list of the statements in the input policies that determine the |
|
77
|
|
|
|
|
|
|
result for this scenario. Remember that even if multiple statements |
|
78
|
|
|
|
|
|
|
allow the action on the resource, if only one statement denies that |
|
79
|
|
|
|
|
|
|
action, then the explicit deny overrides any allow, and the deny |
|
80
|
|
|
|
|
|
|
statement is the only entry included in the result. |
|
81
|
|
|
|
|
|
|
|
|
82
|
|
|
|
|
|
|
|
|
83
|
|
|
|
|
|
|
=head2 MissingContextValues => ArrayRef[Str|Undef] |
|
84
|
|
|
|
|
|
|
|
|
85
|
|
|
|
|
|
|
A list of context keys that are required by the included input policies |
|
86
|
|
|
|
|
|
|
but that were not provided by one of the input parameters. This list is |
|
87
|
|
|
|
|
|
|
used when the resource in a simulation is "*", either explicitly, or |
|
88
|
|
|
|
|
|
|
when the C<ResourceArns> parameter blank. If you include a list of |
|
89
|
|
|
|
|
|
|
resources, then any missing context values are instead included under |
|
90
|
|
|
|
|
|
|
the C<ResourceSpecificResults> section. To discover the context keys |
|
91
|
|
|
|
|
|
|
used by a set of policies, you can call GetContextKeysForCustomPolicy |
|
92
|
|
|
|
|
|
|
or GetContextKeysForPrincipalPolicy. |
|
93
|
|
|
|
|
|
|
|
|
94
|
|
|
|
|
|
|
|
|
95
|
|
|
|
|
|
|
=head2 OrganizationsDecisionDetail => L<Paws::IAM::OrganizationsDecisionDetail> |
|
96
|
|
|
|
|
|
|
|
|
97
|
|
|
|
|
|
|
A structure that details how AWS Organizations and its service control |
|
98
|
|
|
|
|
|
|
policies affect the results of the simulation. Only applies if the |
|
99
|
|
|
|
|
|
|
simulated user's account is part of an organization. |
|
100
|
|
|
|
|
|
|
|
|
101
|
|
|
|
|
|
|
|
|
102
|
|
|
|
|
|
|
=head2 ResourceSpecificResults => ArrayRef[L<Paws::IAM::ResourceSpecificResult>] |
|
103
|
|
|
|
|
|
|
|
|
104
|
|
|
|
|
|
|
The individual results of the simulation of the API action specified in |
|
105
|
|
|
|
|
|
|
EvalActionName on each resource. |
|
106
|
|
|
|
|
|
|
|
|
107
|
|
|
|
|
|
|
|
|
108
|
|
|
|
|
|
|
|
|
109
|
|
|
|
|
|
|
=head1 SEE ALSO |
|
110
|
|
|
|
|
|
|
|
|
111
|
|
|
|
|
|
|
This class forms part of L<Paws>, describing an object used in L<Paws::IAM> |
|
112
|
|
|
|
|
|
|
|
|
113
|
|
|
|
|
|
|
=head1 BUGS and CONTRIBUTIONS |
|
114
|
|
|
|
|
|
|
|
|
115
|
|
|
|
|
|
|
The source code is located here: https://github.com/pplu/aws-sdk-perl |
|
116
|
|
|
|
|
|
|
|
|
117
|
|
|
|
|
|
|
Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues |
|
118
|
|
|
|
|
|
|
|
|
119
|
|
|
|
|
|
|
=cut |
|
120
|
|
|
|
|
|
|
|