File Coverage

blib/lib/Paws/KMS/GenerateDataKey.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::KMS::GenerateDataKey;
3 1     1   501 use Moose;
  1         2  
  1         8  
4             has EncryptionContext => (is => 'ro', isa => 'Paws::KMS::EncryptionContextType');
5             has GrantTokens => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
6             has KeyId => (is => 'ro', isa => 'Str', required => 1);
7             has KeySpec => (is => 'ro', isa => 'Str');
8             has NumberOfBytes => (is => 'ro', isa => 'Int');
9              
10 1     1   7070 use MooseX::ClassAttribute;
  1         3  
  1         8  
11              
12             class_has _api_call => (isa => 'Str', is => 'ro', default => 'GenerateDataKey');
13             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::KMS::GenerateDataKeyResponse');
14             class_has _result_key => (isa => 'Str', is => 'ro');
15             1;
16              
17             ### main pod documentation begin ###
18              
19             =head1 NAME
20              
21             Paws::KMS::GenerateDataKey - Arguments for method GenerateDataKey on Paws::KMS
22              
23             =head1 DESCRIPTION
24              
25             This class represents the parameters used for calling the method GenerateDataKey on the
26             AWS Key Management Service service. Use the attributes of this class
27             as arguments to method GenerateDataKey.
28              
29             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to GenerateDataKey.
30              
31             As an example:
32              
33             $service_obj->GenerateDataKey(Att1 => $value1, Att2 => $value2, ...);
34              
35             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.
36              
37             =head1 ATTRIBUTES
38              
39              
40             =head2 EncryptionContext => L<Paws::KMS::EncryptionContextType>
41              
42             A set of key-value pairs that represents additional authenticated data.
43              
44             For more information, see Encryption Context in the I<AWS Key
45             Management Service Developer Guide>.
46              
47              
48              
49             =head2 GrantTokens => ArrayRef[Str|Undef]
50              
51             A list of grant tokens.
52              
53             For more information, see Grant Tokens in the I<AWS Key Management
54             Service Developer Guide>.
55              
56              
57              
58             =head2 B<REQUIRED> KeyId => Str
59              
60             The identifier of the CMK under which to generate and encrypt the data
61             encryption key.
62              
63             A valid identifier is the unique key ID or the Amazon Resource Name
64             (ARN) of the CMK, or the alias name or ARN of an alias that refers to
65             the CMK. Examples:
66              
67             =over
68              
69             =item *
70              
71             Unique key ID: C<1234abcd-12ab-34cd-56ef-1234567890ab>
72              
73             =item *
74              
75             CMK ARN:
76             C<arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab>
77              
78             =item *
79              
80             Alias name: C<alias/ExampleAlias>
81              
82             =item *
83              
84             Alias ARN: C<arn:aws:kms:us-east-2:111122223333:alias/ExampleAlias>
85              
86             =back
87              
88              
89              
90              
91             =head2 KeySpec => Str
92              
93             The length of the data encryption key. Use C<AES_128> to generate a
94             128-bit symmetric key, or C<AES_256> to generate a 256-bit symmetric
95             key.
96              
97             Valid values are: C<"AES_256">, C<"AES_128">
98              
99             =head2 NumberOfBytes => Int
100              
101             The length of the data encryption key in bytes. For example, use the
102             value 64 to generate a 512-bit data key (64 bytes is 512 bits). For
103             common key lengths (128-bit and 256-bit symmetric keys), we recommend
104             that you use the C<KeySpec> field instead of this one.
105              
106              
107              
108              
109             =head1 SEE ALSO
110              
111             This class forms part of L<Paws>, documenting arguments for method GenerateDataKey in L<Paws::KMS>
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