File Coverage

blib/lib/Paws/STS/GetFederationToken.pm
Criterion Covered Total %
statement 12 12 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 16 16 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::STS::GetFederationToken;
3 1     1   496 use Moose;
  1     1   4  
  1         8  
  1         393  
  1         2  
  1         7  
4             has DurationSeconds => (is => 'ro', isa => 'Int');
5             has Name => (is => 'ro', isa => 'Str', required => 1);
6             has Policy => (is => 'ro', isa => 'Str');
7              
8 1     1   7216 use MooseX::ClassAttribute;
  1     1   3  
  1         10  
  1         5667  
  1         3  
  1         6  
9              
10             class_has _api_call => (isa => 'Str', is => 'ro', default => 'GetFederationToken');
11             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::STS::GetFederationTokenResponse');
12             class_has _result_key => (isa => 'Str', is => 'ro', default => 'GetFederationTokenResult');
13             1;
14              
15             ### main pod documentation begin ###
16              
17             =head1 NAME
18              
19             Paws::STS::GetFederationToken - Arguments for method GetFederationToken on Paws::STS
20              
21             =head1 DESCRIPTION
22              
23             This class represents the parameters used for calling the method GetFederationToken on the
24             AWS Security Token Service service. Use the attributes of this class
25             as arguments to method GetFederationToken.
26              
27             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to GetFederationToken.
28              
29             As an example:
30              
31             $service_obj->GetFederationToken(Att1 => $value1, Att2 => $value2, ...);
32              
33             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.
34              
35             =head1 ATTRIBUTES
36              
37              
38             =head2 DurationSeconds => Int
39              
40             The duration, in seconds, that the session should last. Acceptable
41             durations for federation sessions range from 900 seconds (15 minutes)
42             to 129600 seconds (36 hours), with 43200 seconds (12 hours) as the
43             default. Sessions obtained using AWS account (root) credentials are
44             restricted to a maximum of 3600 seconds (one hour). If the specified
45             duration is longer than one hour, the session obtained by using AWS
46             account (root) credentials defaults to one hour.
47              
48              
49              
50             =head2 B<REQUIRED> Name => Str
51              
52             The name of the federated user. The name is used as an identifier for
53             the temporary security credentials (such as C<Bob>). For example, you
54             can reference the federated user name in a resource-based policy, such
55             as in an Amazon S3 bucket policy.
56              
57             The regex used to validate this parameter is a string of characters
58             consisting of upper- and lower-case alphanumeric characters with no
59             spaces. You can also include underscores or any of the following
60             characters: =,.@-
61              
62              
63              
64             =head2 Policy => Str
65              
66             An IAM policy in JSON format that is passed with the
67             C<GetFederationToken> call and evaluated along with the policy or
68             policies that are attached to the IAM user whose credentials are used
69             to call C<GetFederationToken>. The passed policy is used to scope down
70             the permissions that are available to the IAM user, by allowing only a
71             subset of the permissions that are granted to the IAM user. The passed
72             policy cannot grant more permissions than those granted to the IAM
73             user. The final permissions for the federated user are the most
74             restrictive set based on the intersection of the passed policy and the
75             IAM user policy.
76              
77             If you do not pass a policy, the resulting temporary security
78             credentials have no effective permissions. The only exception is when
79             the temporary security credentials are used to access a resource that
80             has a resource-based policy that specifically allows the federated user
81             to access the resource.
82              
83             The format for this parameter, as described by its regex pattern, is a
84             string of characters up to 2048 characters in length. The characters
85             can be any ASCII character from the space character to the end of the
86             valid character list (\u0020-\u00FF). It can also include the tab
87             (\u0009), linefeed (\u000A), and carriage return (\u000D) characters.
88              
89             The policy plain text must be 2048 bytes or shorter. However, an
90             internal conversion compresses it into a packed binary format with a
91             separate limit. The PackedPolicySize response element indicates by
92             percentage how close to the upper size limit the policy is, with 100%
93             equaling the maximum allowed size.
94              
95             For more information about how permissions work, see Permissions for
96             GetFederationToken.
97              
98              
99              
100              
101             =head1 SEE ALSO
102              
103             This class forms part of L<Paws>, documenting arguments for method GetFederationToken in L<Paws::STS>
104              
105             =head1 BUGS and CONTRIBUTIONS
106              
107             The source code is located here: https://github.com/pplu/aws-sdk-perl
108              
109             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
110              
111             =cut
112