File Coverage

blib/lib/Paws/STS/AssumeRoleWithWebIdentity.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::STS::AssumeRoleWithWebIdentity;
3 1     1   511 use Moose;
  1         4  
  1         7  
4             has DurationSeconds => (is => 'ro', isa => 'Int');
5             has Policy => (is => 'ro', isa => 'Str');
6             has ProviderId => (is => 'ro', isa => 'Str');
7             has RoleArn => (is => 'ro', isa => 'Str', required => 1);
8             has RoleSessionName => (is => 'ro', isa => 'Str', required => 1);
9             has WebIdentityToken => (is => 'ro', isa => 'Str', required => 1);
10              
11 1     1   7380 use MooseX::ClassAttribute;
  1         2  
  1         12  
12              
13             class_has _api_call => (isa => 'Str', is => 'ro', default => 'AssumeRoleWithWebIdentity');
14             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::STS::AssumeRoleWithWebIdentityResponse');
15             class_has _result_key => (isa => 'Str', is => 'ro', default => 'AssumeRoleWithWebIdentityResult');
16             1;
17              
18             ### main pod documentation begin ###
19              
20             =head1 NAME
21              
22             Paws::STS::AssumeRoleWithWebIdentity - Arguments for method AssumeRoleWithWebIdentity on Paws::STS
23              
24             =head1 DESCRIPTION
25              
26             This class represents the parameters used for calling the method AssumeRoleWithWebIdentity on the
27             AWS Security Token Service service. Use the attributes of this class
28             as arguments to method AssumeRoleWithWebIdentity.
29              
30             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to AssumeRoleWithWebIdentity.
31              
32             As an example:
33              
34             $service_obj->AssumeRoleWithWebIdentity(Att1 => $value1, Att2 => $value2, ...);
35              
36             Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object.
37              
38             =head1 ATTRIBUTES
39              
40              
41             =head2 DurationSeconds => Int
42              
43             The duration, in seconds, of the role session. The value can range from
44             900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the
45             value is set to 3600 seconds.
46              
47             This is separate from the duration of a console session that you might
48             request using the returned credentials. The request to the federation
49             endpoint for a console sign-in token takes a C<SessionDuration>
50             parameter that specifies the maximum length of the console session,
51             separately from the C<DurationSeconds> parameter on this API. For more
52             information, see Creating a URL that Enables Federated Users to Access
53             the AWS Management Console in the I<IAM User Guide>.
54              
55              
56              
57             =head2 Policy => Str
58              
59             An IAM policy in JSON format.
60              
61             The policy parameter is optional. If you pass a policy, the temporary
62             security credentials that are returned by the operation have the
63             permissions that are allowed by both the access policy of the role that
64             is being assumed, I< B<and> > the policy that you pass. This gives you
65             a way to further restrict the permissions for the resulting temporary
66             security credentials. You cannot use the passed policy to grant
67             permissions that are in excess of those allowed by the access policy of
68             the role that is being assumed. For more information, see Permissions
69             for AssumeRoleWithWebIdentity in the I<IAM User Guide>.
70              
71             The format for this parameter, as described by its regex pattern, is a
72             string of characters up to 2048 characters in length. The characters
73             can be any ASCII character from the space character to the end of the
74             valid character list (\u0020-\u00FF). It can also include the tab
75             (\u0009), linefeed (\u000A), and carriage return (\u000D) characters.
76              
77             The policy plain text must be 2048 bytes or shorter. However, an
78             internal conversion compresses it into a packed binary format with a
79             separate limit. The PackedPolicySize response element indicates by
80             percentage how close to the upper size limit the policy is, with 100%
81             equaling the maximum allowed size.
82              
83              
84              
85             =head2 ProviderId => Str
86              
87             The fully qualified host component of the domain name of the identity
88             provider.
89              
90             Specify this value only for OAuth 2.0 access tokens. Currently
91             C<www.amazon.com> and C<graph.facebook.com> are the only supported
92             identity providers for OAuth 2.0 access tokens. Do not include URL
93             schemes and port numbers.
94              
95             Do not specify this value for OpenID Connect ID tokens.
96              
97              
98              
99             =head2 B<REQUIRED> RoleArn => Str
100              
101             The Amazon Resource Name (ARN) of the role that the caller is assuming.
102              
103              
104              
105             =head2 B<REQUIRED> RoleSessionName => Str
106              
107             An identifier for the assumed role session. Typically, you pass the
108             name or identifier that is associated with the user who is using your
109             application. That way, the temporary security credentials that your
110             application will use are associated with that user. This session name
111             is included as part of the ARN and assumed role ID in the
112             C<AssumedRoleUser> response element.
113              
114             The regex used to validate this parameter is a string of characters
115             consisting of upper- and lower-case alphanumeric characters with no
116             spaces. You can also include underscores or any of the following
117             characters: =,.@-
118              
119              
120              
121             =head2 B<REQUIRED> WebIdentityToken => Str
122              
123             The OAuth 2.0 access token or OpenID Connect ID token that is provided
124             by the identity provider. Your application must get this token by
125             authenticating the user who is using your application with a web
126             identity provider before the application makes an
127             C<AssumeRoleWithWebIdentity> call.
128              
129              
130              
131              
132             =head1 SEE ALSO
133              
134             This class forms part of L<Paws>, documenting arguments for method AssumeRoleWithWebIdentity in L<Paws::STS>
135              
136             =head1 BUGS and CONTRIBUTIONS
137              
138             The source code is located here: https://github.com/pplu/aws-sdk-perl
139              
140             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
141              
142             =cut
143