aws-sdk-core 2.0.0.rc4 → 2.0.0.rc5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. checksums.yaml +4 -4
  2. data/apis/CloudFront-2013-11-11.json +5502 -0
  3. data/apis/CloudWatch-2010-08-01.json +186 -1
  4. data/apis/DirectConnect-2012-10-25.json +758 -140
  5. data/apis/DynamoDB-2012-08-10.json +860 -2
  6. data/apis/EC2-2013-10-15.json +14698 -0
  7. data/apis/EMR-2009-03-31.json +86 -0
  8. data/apis/ElastiCache-2013-06-15.json +13 -5
  9. data/apis/ElasticBeanstalk-2010-12-01.json +141 -16
  10. data/apis/ElasticLoadBalancing-2012-06-01.json +0 -72
  11. data/apis/IAM-2010-05-08.json +156 -0
  12. data/apis/Kinesis-2013-12-02.json +9 -1
  13. data/apis/OpsWorks-2013-02-18.json +180 -6
  14. data/apis/RDS-2013-02-12.json +2 -1
  15. data/apis/RDS-2013-09-09.json +7963 -0
  16. data/apis/Redshift-2012-12-01.json +3273 -702
  17. data/apis/Route53-2012-12-12.json +2 -2
  18. data/apis/S3-2006-03-01.json +579 -538
  19. data/apis/SNS-2010-03-31.json +14 -0
  20. data/apis/SQS-2012-11-05.json +43 -6
  21. data/apis/STS-2011-06-15.json +81 -0
  22. data/apis/StorageGateway-2013-06-30.json +28 -28
  23. data/apis/source/cloudformation-2010-05-15.json +199 -199
  24. data/apis/source/cloudfront-2013-11-11.json +8828 -0
  25. data/apis/source/cloudfront-2013-11-11.paginators.json +32 -0
  26. data/apis/source/cloudfront-2013-11-11.waiters.json +29 -0
  27. data/apis/source/cloudsearch-2011-02-01.json +16 -23
  28. data/apis/source/datapipeline-2012-10-29.paginators.json +3 -2
  29. data/apis/source/directconnect-2012-10-25.json +1302 -363
  30. data/apis/source/dynamodb-2011-12-05.paginators.json +4 -1
  31. data/apis/source/dynamodb-2011-12-05.waiters.json +27 -0
  32. data/apis/source/dynamodb-2012-08-10.json +1634 -417
  33. data/apis/source/dynamodb-2012-08-10.paginators.json +4 -1
  34. data/apis/source/dynamodb-2012-08-10.waiters.json +25 -0
  35. data/apis/source/ec2-2013-10-15.json +19911 -0
  36. data/apis/source/ec2-2013-10-15.paginators.json +126 -0
  37. data/apis/source/ec2-2013-10-15.waiters.json +146 -0
  38. data/apis/source/elasticache-2013-06-15.json +10 -8
  39. data/apis/source/elasticache-2013-06-15.paginators.json +8 -2
  40. data/apis/source/elasticbeanstalk-2010-12-01.json +186 -32
  41. data/apis/source/elasticloadbalancing-2012-06-01.json +166 -293
  42. data/apis/source/elasticmapreduce-2009-03-31.json +229 -134
  43. data/apis/source/elastictranscoder-2012-09-25.json +1 -1
  44. data/apis/source/glacier-2012-06-01.paginators.json +3 -3
  45. data/apis/source/glacier-2012-06-01.waiters.json +23 -0
  46. data/apis/source/iam-2010-05-08.json +1306 -626
  47. data/apis/source/iam-2010-05-08.paginators.json +3 -0
  48. data/apis/source/kinesis-2013-12-02.json +4 -4
  49. data/apis/source/kinesis-2013-12-02.paginators.json +10 -4
  50. data/apis/source/monitoring-2010-08-01.json +336 -28
  51. data/apis/source/opsworks-2013-02-18.json +385 -102
  52. data/apis/source/rds-2013-01-10.paginators.json +6 -2
  53. data/apis/source/rds-2013-02-12.paginators.json +6 -2
  54. data/apis/source/rds-2013-09-09.json +10658 -0
  55. data/apis/source/rds-2013-09-09.paginators.json +110 -0
  56. data/apis/source/rds-2013-09-09.waiters.json +36 -0
  57. data/apis/source/redshift-2012-12-01.json +4759 -1237
  58. data/apis/source/redshift-2012-12-01.paginators.json +20 -1
  59. data/apis/source/redshift-2012-12-01.waiters.json +43 -0
  60. data/apis/source/route53-2012-12-12.paginators.json +2 -2
  61. data/apis/source/s3-2006-03-01.json +1032 -985
  62. data/apis/source/s3-2006-03-01.paginators.json +14 -3
  63. data/apis/source/s3-2006-03-01.waiters.json +27 -0
  64. data/apis/source/sns-2010-03-31.paginators.json +10 -0
  65. data/apis/source/sqs-2012-11-05.json +153 -101
  66. data/apis/source/storagegateway-2013-06-30.json +403 -442
  67. data/apis/source/storagegateway-2013-06-30.paginators.json +24 -0
  68. data/apis/source/sts-2011-06-15.json +258 -75
  69. data/apis/source/support-2013-04-15.paginators.json +0 -6
  70. data/apis/source/swf-2012-01-25.paginators.json +7 -7
  71. data/features/autoscaling/client.feature +6 -10
  72. data/features/autoscaling/{setup.rb → step_definitions.rb} +1 -1
  73. data/features/cloudformation/client.feature +5 -6
  74. data/features/cloudformation/{setup.rb → step_definitions.rb} +1 -1
  75. data/features/cloudfront/client.feature +5 -9
  76. data/features/cloudfront/{setup.rb → step_definitions.rb} +1 -1
  77. data/features/cloudsearch/client.feature +4 -6
  78. data/features/cloudsearch/{setup.rb → step_definitions.rb} +1 -1
  79. data/features/cloudwatch/client.feature +7 -9
  80. data/features/cloudwatch/{setup.rb → step_definitions.rb} +1 -1
  81. data/features/datapipeline/client.feature +5 -7
  82. data/features/datapipeline/{setup.rb → step_definitions.rb} +1 -1
  83. data/features/directconnect/client.feature +5 -7
  84. data/features/directconnect/{setup.rb → step_definitions.rb} +1 -1
  85. data/features/dynamodb/client.feature +6 -10
  86. data/features/dynamodb/simplified.feature +5 -9
  87. data/features/dynamodb/step_definitions.rb +9 -1
  88. data/features/ec2/client.feature +4 -9
  89. data/features/ec2/step_definitions.rb +3 -16
  90. data/features/elasticache/client.feature +4 -6
  91. data/features/elasticache/{setup.rb → step_definitions.rb} +1 -1
  92. data/features/elasticbeanstalk/client.feature +4 -6
  93. data/features/elasticbeanstalk/{setup.rb → step_definitions.rb} +1 -1
  94. data/features/elasticloadbalancing/client.feature +4 -6
  95. data/features/elasticloadbalancing/{setup.rb → step_definitions.rb} +1 -1
  96. data/features/elastictranscoder/client.feature +4 -6
  97. data/features/elastictranscoder/{setup.rb → step_definitions.rb} +1 -1
  98. data/features/emr/client.feature +4 -6
  99. data/features/emr/{setup.rb → step_definitions.rb} +1 -1
  100. data/features/env.rb +0 -2
  101. data/features/glacier/client.feature +10 -34
  102. data/features/glacier/step_definitions.rb +25 -8
  103. data/features/glacier/upload.feature +27 -0
  104. data/features/iam/client.feature +4 -6
  105. data/features/iam/{setup.rb → step_definitions.rb} +1 -1
  106. data/features/importexport/client.feature +4 -6
  107. data/features/importexport/{setup.rb → step_definitions.rb} +1 -1
  108. data/features/kinesis/client.feature +4 -6
  109. data/features/kinesis/{setup.rb → step_definitions.rb} +1 -1
  110. data/features/opsworks/client.feature +4 -6
  111. data/features/opsworks/{setup.rb → step_definitions.rb} +1 -1
  112. data/features/rds/client.feature +4 -6
  113. data/features/rds/{setup.rb → step_definitions.rb} +1 -1
  114. data/features/redshift/client.feature +4 -6
  115. data/features/redshift/{setup.rb → step_definitions.rb} +1 -1
  116. data/features/route53/client.feature +4 -6
  117. data/features/route53/{setup.rb → step_definitions.rb} +1 -1
  118. data/features/s3/buckets.feature +8 -0
  119. data/features/s3/step_definitions.rb +42 -3
  120. data/features/sdb/client.feature +4 -6
  121. data/features/sdb/{setup.rb → step_definitions.rb} +1 -1
  122. data/features/ses/client.feature +4 -6
  123. data/features/ses/{setup.rb → step_definitions.rb} +1 -1
  124. data/features/sns/client.feature +5 -6
  125. data/features/sns/{setup.rb → step_definitions.rb} +1 -1
  126. data/features/sqs/client.feature +5 -7
  127. data/features/sqs/step_definitions.rb +11 -0
  128. data/features/step_definitions.rb +88 -0
  129. data/features/storagegateway/client.feature +4 -6
  130. data/features/storagegateway/{setup.rb → step_definitions.rb} +1 -1
  131. data/features/sts/client.feature +5 -6
  132. data/features/sts/{setup.rb → step_definitions.rb} +1 -1
  133. data/features/swf/client.feature +5 -9
  134. data/features/swf/{setup.rb → step_definitions.rb} +1 -1
  135. data/lib/aws/api/shape_translator.rb +1 -0
  136. data/lib/aws/errors.rb +35 -11
  137. data/lib/aws/plugins/credentials.rb +11 -5
  138. data/lib/aws/plugins/regional_endpoint.rb +7 -3
  139. data/lib/aws/plugins/s3_regional_endpoint.rb +0 -2
  140. data/lib/aws/request_handler.rb +8 -3
  141. data/lib/aws/signers/s3.rb +14 -18
  142. data/lib/aws/version.rb +1 -1
  143. data/spec/aws/errors_spec.rb +39 -0
  144. data/spec/aws/plugins/credentials_spec.rb +12 -0
  145. data/spec/aws/plugins/region_endpoint_spec.rb +16 -4
  146. data/spec/aws/plugins/retry_errors_spec.rb +26 -26
  147. data/spec/aws/service_spec.rb +1 -1
  148. data/spec/fixtures/operations/route53/change_resource_record_sets.yml +18 -0
  149. data/tasks/test.rake +6 -18
  150. data/vendor/seahorse/lib/seahorse/client/http/headers.rb +20 -0
  151. data/vendor/seahorse/tasks/test.rake +2 -15
  152. metadata +77 -64
  153. data/features/common/step_definitions.rb +0 -63
  154. data/features/dynamodb/setup.rb +0 -8
  155. data/features/ec2/setup.rb +0 -6
  156. data/features/glacier/setup.rb +0 -16
  157. data/features/s3/setup.rb +0 -17
  158. data/features/sqs/setup.rb +0 -10
@@ -6,6 +6,30 @@
6
6
  "DescribeStorediSCSIVolumes": {
7
7
  "result_key": "StorediSCSIVolumes"
8
8
  },
9
+ "DescribeTapeArchives": {
10
+ "input_token": "Marker",
11
+ "output_token": "Marker",
12
+ "limit_key": "Limit",
13
+ "result_key": "TapeArchives"
14
+ },
15
+ "DescribeTapeRecoveryPoints": {
16
+ "input_token": "Marker",
17
+ "output_token": "Marker",
18
+ "limit_key": "Limit",
19
+ "result_key": "TapeRecoveryPointInfos"
20
+ },
21
+ "DescribeTapes": {
22
+ "input_token": "Marker",
23
+ "output_token": "Marker",
24
+ "limit_key": "Limit",
25
+ "result_key": "Tapes"
26
+ },
27
+ "DescribeVTLDevices": {
28
+ "input_token": "Marker",
29
+ "output_token": "Marker",
30
+ "limit_key": "Limit",
31
+ "result_key": "VTLDevices"
32
+ },
9
33
  "ListGateways": {
10
34
  "input_token": "Marker",
11
35
  "output_token": "Marker",
@@ -8,7 +8,7 @@
8
8
  "global_endpoint": "sts.amazonaws.com",
9
9
  "endpoint_prefix": "sts",
10
10
  "xmlnamespace": "https://sts.amazonaws.com/doc/2011-06-15/",
11
- "documentation": "\n <fullname>AWS Security Token Service</fullname>\n\n <p>\n The AWS Security Token Service is a web service that enables you to request temporary, limited-privilege\n credentials for AWS Identity and Access Management (IAM) users or for users that you authenticate (federated users).\n This guide provides descriptions of the AWS Security Token Service API.\n </p>\n\n <p>\n For more detailed information about using this service, go to\n <a href=\"http://docs.aws.amazon.com/IAM/latest/UsingSTS/Welcome.html\" target=\"_blank\">Using Temporary Security Credentials</a>.\n </p>\n <p>\n For information about setting up signatures and authorization through the API, go to\n <a href=\"http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html\" target=\"_blank\">Signing AWS API Requests</a>\n in the <i>AWS General Reference</i>. For general information about the Query API, go to\n <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html\" target=\"_blank\">Making Query Requests</a>\n in <i>Using IAM</i>. For information about using security tokens with other AWS products, go to\n <a href=\"http://docs.aws.amazon.com/IAM/latest/UsingSTS/UsingTokens.html\">Using Temporary Security Credentials to Access AWS</a>\n in <i>Using Temporary Security Credentials</i>.\n </p>\n <p>\n If you're new to AWS and need additional technical information about a specific AWS product, you can find the product's\n technical documentation at <a href=\"http://aws.amazon.com/documentation/\" target=\"_blank\">http://aws.amazon.com/documentation/</a>.\n </p>\n\n <p>\n We will refer to Amazon Identity and Access Management using the abbreviated form IAM.\n All copyrights and legal protections still apply.\n </p>\n\n ",
11
+ "documentation": "\n\t\t<fullname>AWS Security Token Service</fullname>\n\n\t\t<p> The AWS Security Token Service (AWS STS) is a web service that enables you to request temporary,\n\t\t\tlimited-privilege credentials for AWS Identity and Access Management (AWS IAM) users or for users that you authenticate\n\t\t\t(federated users). This guide provides descriptions of the AWS STS API. For more detailed\n\t\t\tinformation about using this service, go to <a href=\"http://docs.aws.amazon.com/IAM/latest/UsingSTS/Welcome.html\" target=\"_blank\">Using\n\t\t\t\tTemporary Security Credentials</a>. </p>\n\n\t\t<note> As an alternative to using the API, you can use one of the AWS SDKs, which consist of\n\t\t\tlibraries and sample code for various programming languages and platforms (Java, Ruby, .NET,\n\t\t\tiOS, Android, etc.). The SDKs provide a convenient way to create programmatic access to\n\t\t\tAWS STS. For example, the SDKs take care of cryptographically signing requests, managing\n\t\t\terrors, and retrying requests automatically. For information about the AWS SDKs, including how\n\t\t\tto download and install them, see the <a href=\"http://aws.amazon.com/tools/\">Tools for Amazon\n\t\t\t\tWeb Services page</a>. </note>\n\n\t\t<p> For information about setting up signatures and authorization through the API, go to <a href=\"http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html\" target=\"_blank\">Signing AWS API Requests</a> in the <i>AWS General Reference</i>. For\n\t\t\tgeneral information about the Query API, go to <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html\" target=\"_blank\">Making Query Requests</a> in <i>Using IAM</i>. For information about using\n\t\t\tsecurity tokens with other AWS products, go to <a href=\"http://docs.aws.amazon.com/IAM/latest/UsingSTS/UsingTokens.html\">Using Temporary\n\t\t\t\tSecurity Credentials to Access AWS</a> in <i>Using Temporary Security Credentials</i>. </p>\n\n\t\t<p> If you're new to AWS and need additional technical information about a specific AWS product,\n\t\t\tyou can find the product's technical documentation at <a href=\"http://aws.amazon.com/documentation/\" target=\"_blank\">http://aws.amazon.com/documentation/</a>. </p>\n\n\t\t<p><b>Endpoints</b></p>\n\t\t<p>For information about AWS STS endpoints, see <a href=\"http://docs.aws.amazon.com/general/latest/gr/rande.html#sts_region\" target=\"_blank\">Regions and Endpoints</a> in the <i>AWS General Reference</i>.</p>\n\n\t\t<p><b>Recording API requests</b></p>\n\t\t<p>AWS STS supports AWS CloudTrail, which is a service that records AWS calls for your AWS account and delivers \n\t\t\tlog files to an Amazon S3 bucket. By using information collected by CloudTrail, you can determine what \n\t\t\trequests were successfully made to AWS STS, who made the request, when it was made, and so on. To learn more about \n\t\t\tCloudTrail, including how to turn it on and find your log files, see the \n\t\t\t<a href=\"http://docs.aws.amazon.com/awscloudtrail/latest/userguide/whatisawscloudtrail.html\">AWS CloudTrail User Guide</a>.</p>\n\n\n\t",
12
12
  "operations": {
13
13
  "AssumeRole": {
14
14
  "name": "AssumeRole",
@@ -21,7 +21,7 @@
21
21
  "type": "string",
22
22
  "min_length": 20,
23
23
  "max_length": 2048,
24
- "documentation": "\n <p>The Amazon Resource Name (ARN) of the role that the caller is assuming.</p>\n ",
24
+ "documentation": "\n\t\t<p>The Amazon Resource Name (ARN) of the role that the caller is assuming.</p>\n\t",
25
25
  "required": true
26
26
  },
27
27
  "RoleSessionName": {
@@ -30,7 +30,7 @@
30
30
  "min_length": 2,
31
31
  "max_length": 32,
32
32
  "pattern": "[\\w+=,.@-]*",
33
- "documentation": "\n <p>\n An identifier for the assumed role session. The session name is included as part of the \n <code>AssumedRoleUser</code>.\n </p>\n ",
33
+ "documentation": "\n\t\t<p> An identifier for the assumed role session. The session name is included as part of the\n\t\t\t\t<code>AssumedRoleUser</code>. </p>\n\t",
34
34
  "required": true
35
35
  },
36
36
  "Policy": {
@@ -39,14 +39,14 @@
39
39
  "pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+",
40
40
  "min_length": 1,
41
41
  "max_length": 2048,
42
- "documentation": "\n <p>\n A supplemental policy that is associated with the temporary security credentials from\n the <code>AssumeRole</code> call. The resulting permissions of the\n temporary security credentials are an intersection of this policy and the access policy that\n is associated with the role. Use this policy to further restrict the permissions of\n the temporary security credentials.\n </p>\n "
42
+ "documentation": "\n\t\t<p>An AWS IAM policy in JSON format.</p>\n\t\t\n\t\t<p>The temporary security credentials that are returned by the operation have the permissions that are \n\t\t\tassociated with the access policy of the role being assumed, except for any permissions explicitly denied \n\t\t\tby the policy you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. \n\t\t\tThese policies and any applicable resource-based policies are evaluated when calls to AWS are made \n\t\t\tusing the temporary security credentials. \n\t\t</p>\n\t"
43
43
  },
44
44
  "DurationSeconds": {
45
45
  "shape_name": "roleDurationSecondsType",
46
46
  "type": "integer",
47
47
  "min_length": 900,
48
48
  "max_length": 3600,
49
- "documentation": "\n <p>\n The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour).\n By default, the value is set to 3600 seconds.\n </p>\n "
49
+ "documentation": "\n\t\t<p> The duration, in seconds, of the role session. The value can range from 900 seconds (15\n\t\t\tminutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds. </p>\n\t"
50
50
  },
51
51
  "ExternalId": {
52
52
  "shape_name": "externalIdType",
@@ -54,7 +54,7 @@
54
54
  "min_length": 2,
55
55
  "max_length": 96,
56
56
  "pattern": "[\\w+=,.@:-]*",
57
- "documentation": "\n <p>\n A unique identifier that is used by third parties to assume a role in their customers' accounts. For each role that the third party can assume,\n they should instruct their customers to create a role with the external ID that the third party generated.\n Each time the third party assumes the role, they must pass the customer's external ID.\n The external ID is useful in order to help third parties bind a role to the customer who created it.\n For more information about the external ID, see <a href=\"http://docs.aws.amazon.com/STS/latest/UsingSTS/sts-delegating-externalid.html\" target=\"_blank\">About the External ID</a>\n in <i>Using Temporary Security Credentials</i>.\n </p>\n "
57
+ "documentation": "\n\t\t<p> A unique identifier that is used by third parties to assume a role in their customers'\n\t\t\taccounts. For each role that the third party can assume, they should instruct their customers\n\t\t\tto create a role with the external ID that the third party generated. Each time the third\n\t\t\tparty assumes the role, they must pass the customer's external ID. The external ID is useful\n\t\t\tin order to help third parties bind a role to the customer who created it. For more\n\t\t\tinformation about the external ID, see <a href=\"http://docs.aws.amazon.com/STS/latest/UsingSTS/sts-delegating-externalid.html\" target=\"_blank\">About the External ID</a> in <i>Using Temporary Security Credentials</i>.\n\t\t</p>\n\t"
58
58
  }
59
59
  },
60
60
  "documentation": null
@@ -73,29 +73,29 @@
73
73
  "min_length": 16,
74
74
  "max_length": 32,
75
75
  "pattern": "[\\w]*",
76
- "documentation": "\n <p>The access key ID that identifies the temporary security credentials.</p>\n ",
76
+ "documentation": "\n\t\t<p>The access key ID that identifies the temporary security credentials.</p>\n\t",
77
77
  "required": true
78
78
  },
79
79
  "SecretAccessKey": {
80
80
  "shape_name": "accessKeySecretType",
81
81
  "type": "string",
82
- "documentation": "\n <p>The secret access key that can be used to sign requests.</p>\n ",
82
+ "documentation": "\n\t\t<p>The secret access key that can be used to sign requests.</p>\n\t",
83
83
  "required": true
84
84
  },
85
85
  "SessionToken": {
86
86
  "shape_name": "tokenType",
87
87
  "type": "string",
88
- "documentation": "\n <p>The token that users must pass to the service API to use the temporary credentials.</p>\n ",
88
+ "documentation": "\n\t\t<p>The token that users must pass to the service API to use the temporary credentials.</p>\n\t",
89
89
  "required": true
90
90
  },
91
91
  "Expiration": {
92
92
  "shape_name": "dateType",
93
93
  "type": "timestamp",
94
- "documentation": "\n <p>The date on which the current credentials expire.</p>\n ",
94
+ "documentation": "\n\t\t<p>The date on which the current credentials expire.</p>\n\t",
95
95
  "required": true
96
96
  }
97
97
  },
98
- "documentation": "\n <p>The temporary security credentials, which include an access key ID, a secret access key, and a security token.</p>\n "
98
+ "documentation": "\n\t\t<p>The temporary security credentials, which include an access key ID, a secret access key, and\n\t\t\ta security token.</p>\n\t"
99
99
  },
100
100
  "AssumedRoleUser": {
101
101
  "shape_name": "AssumedRoleUser",
@@ -107,7 +107,7 @@
107
107
  "min_length": 2,
108
108
  "max_length": 96,
109
109
  "pattern": "[\\w+=,.@:-]*",
110
- "documentation": "\n <p>A unique identifier that contains the role ID and the role session name of the role that is being assumed. The \n role ID is generated by AWS when the role is created.</p>\n ",
110
+ "documentation": "\n\t\t<p>A unique identifier that contains the role ID and the role session name of the role that is\n\t\t\tbeing assumed. The role ID is generated by AWS when the role is created.</p>\n\t",
111
111
  "required": true
112
112
  },
113
113
  "Arn": {
@@ -115,20 +115,20 @@
115
115
  "type": "string",
116
116
  "min_length": 20,
117
117
  "max_length": 2048,
118
- "documentation": "\n <p>\n The ARN of the temporary security credentials that are returned from the <a>AssumeRole</a> action.\n For more information about ARNs and how to use them in policies,\n see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html\" target=\"_blank\">\n Identifiers for IAM Entities\n </a> in <i>Using IAM</i>.\n </p>\n ",
118
+ "documentation": "\n\t\t<p> The ARN of the temporary security credentials that are returned from the <a>AssumeRole</a>\n\t\t\taction. For more information about ARNs and how to use them in policies, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html\" target=\"_blank\"> Identifiers for IAM Entities </a> in <i>Using IAM</i>. </p>\n\t",
119
119
  "required": true
120
120
  }
121
121
  },
122
- "documentation": "\n <p>\n The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers that you can use to refer to the resulting temporary security credentials. For example, you can reference these credentials as a principal in a resource-based policy by using the ARN or assumed role ID. The ARN and ID include the <code>RoleSessionName</code> that you specified when you called <code>AssumeRole</code>.\n </p>\n "
122
+ "documentation": "\n\t\t<p> The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers that you can\n\t\t\tuse to refer to the resulting temporary security credentials. For example, you can reference\n\t\t\tthese credentials as a principal in a resource-based policy by using the ARN or assumed role\n\t\t\tID. The ARN and ID include the <code>RoleSessionName</code> that you specified when you called\n\t\t\t\t<code>AssumeRole</code>. </p>\n\t"
123
123
  },
124
124
  "PackedPolicySize": {
125
125
  "shape_name": "nonNegativeIntegerType",
126
126
  "type": "integer",
127
127
  "min_length": 0,
128
- "documentation": "\n <p>\n A percentage value that indicates the size of the policy in packed form. The service rejects\n any policy with a packed size greater than 100 percent, which means the policy exceeded the allowed space.\n </p>\n "
128
+ "documentation": "\n\t\t<p> A percentage value that indicates the size of the policy in packed form. The service rejects\n\t\t\tany policy with a packed size greater than 100 percent, which means the policy exceeded the\n\t\t\tallowed space. </p>\n\t"
129
129
  }
130
130
  },
131
- "documentation": "\n <p>\n Contains the result of a successful invocation of the <a>AssumeRole</a> action.\n </p>\n "
131
+ "documentation": "\n\t\t<p> Contains the result of a successful call to the <a>AssumeRole</a> action, including\n\t\t\ttemporary AWS credentials that can be used to make AWS requests. </p>\n\t"
132
132
  },
133
133
  "errors": [
134
134
  {
@@ -141,7 +141,7 @@
141
141
  "documentation": null
142
142
  }
143
143
  },
144
- "documentation": "\n <p>The request was rejected because the policy document was malformed. The error message describes the specific error.</p>\n"
144
+ "documentation": "\n\t\t<p>The request was rejected because the policy document was malformed. The error message\n\t\t\tdescribes the specific error.</p>\n\t"
145
145
  },
146
146
  {
147
147
  "shape_name": "PackedPolicyTooLargeException",
@@ -153,10 +153,193 @@
153
153
  "documentation": null
154
154
  }
155
155
  },
156
- "documentation": "\n <p>The request was rejected because the policy document was too large. The error message describes how big the policy document\n is, in packed form, as a percentage of what the API allows.</p>\n"
156
+ "documentation": "\n\t\t<p>The request was rejected because the policy document was too large. The error message\n\t\t\tdescribes how big the policy document is, in packed form, as a percentage of what the API\n\t\t\tallows.</p>\n\t"
157
157
  }
158
158
  ],
159
- "documentation": "\n <p>\n Returns a set of temporary security credentials\n (consisting of an access key ID, a secret access key, and a security token)\n that you can use to access AWS resources that you might not normally have access to. Typically, you use <code>AssumeRole</code> for cross-account access or federation.\n </p>\n <p>\n For cross-account access, imagine that you own multiple accounts and need to access resources in each account. You could create long-term credentials in each account to access those resources. However, managing all those credentials and remembering which one can access which account can be time consuming. Instead, you can create one set of long-term credentials in one account and then use temporary security credentials to access all the other accounts by assuming roles in those accounts. For more information about roles, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html\">Roles</a> in <i>Using IAM</i>.\n </p>\n <p>\n For federation, you can, for example, grant single sign-on access to the AWS Management Console. If you already have an identity and authentication system in your corporate network, you don't have to recreate user identities in AWS in order to grant those user identities access to AWS. Instead, after a user has been authenticated, you call <code>AssumeRole</code> (and specify the role with the appropriate permissions) to get temporary security credentials for that user. With those temporary security credentials, you construct a sign-in URL that users can use to access the console. For more information, see <a href=\"http://docs.aws.amazon.com/STS/latest/UsingSTS/STSUseCases.html\">Scenarios for Granting Temporary Access</a> in\n <i>AWS Security Token Service</i>.\n </p>\n <p>\n The temporary security credentials are valid for the duration that you specified when calling <code>AssumeRole</code>, which can be from 900 seconds (15 minutes) to 3600 seconds (1 hour). The default is 1 hour.\n </p>\n <p>\n The temporary security credentials that are returned from the\n <code>AssumeRoleWithWebIdentity</code> response have the permissions that are\n associated with the access policy of the role being assumed and any policies that are associated with the AWS resource being accessed. You can further\n restrict the permissions of the temporary security credentials by passing a policy\n in the request. The resulting permissions are an intersection of the role's access\n policy and the policy that you passed. These policies and any applicable\n resource-based policies are evaluated when calls to AWS service APIs are made\n using the temporary security credentials.\n </p>\n <p>\n To assume a role, your AWS account must be trusted by the role. The trust relationship is defined in the role's trust policy when the IAM role is created. You must also have a policy that allows you to call <code>sts:AssumeRole</code>.\n </p>\n <p>\n <b>Important:</b> You cannot call <code>Assumerole</code> by using AWS account credentials; access will be denied. You must use IAM user credentials or temporary security credentials to call <code>AssumeRole</code>.\n </p>\n\n <member name=\"RoleArn\" target=\"arnType\"></member>\n <member name=\"RoleSessionName\" target=\"userNameType\"></member>\n <member name=\"Policy\" target=\"sessionPolicyDocumentType\"></member>\n <member name=\"DurationSeconds\" target=\"roleDurationSecondsType\"></member>\n <member name=\"ExternalId\" target=\"externalIdType\"></member>\n <examples>\n <queryrequest>\n https://sts.amazonaws.com/\n?Version=2011-06-15\n&Action=AssumeRole\n&RoleSessionName=Bob\n&RoleArn=arn:aws:iam::123456789012:role/demo\n&Policy=%7B%22Version%22%3A%222012-10-17%22%2C%22Statement%22%3A%5B%7B%22Sid%22%3A%22Stmt1%22%2C%22Effect%22%\n 3A%22Allow%22%2C%22Action%22%3A%22s3%3A*%22%2C%22Resource%22%3A%22*%22%7D\n %5D%7D\n&DurationSeconds=3600\n&ExternalId=123ABC\n&AUTHPARAMS\n </queryrequest>\n\n <queryresponse>\n <AssumeRoleResponse xmlns=\"https://sts.amazonaws.com/doc/\n2011-06-15/\">\n <AssumeRoleResult>\n <Credentials>\n <SessionToken>\n AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQW\n LWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGd\n QrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU\n 9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz\n +scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==\n </SessionToken>\n <SecretAccessKey>\n wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY\n </SecretAccessKey>\n <Expiration>2011-07-15T23:28:33.359Z</Expiration>\n <AccessKeyId>AKIAIOSFODNN7EXAMPLE</AccessKeyId>\n </Credentials>\n <AssumedRoleUser>\n <Arn>arn:aws:sts::123456789012:assumed-role/demo/Bob</Arn>\n <AssumedRoleId>ARO123EXAMPLE123:Bob</AssumedRoleId>\n </AssumedRoleUser>\n <PackedPolicySize>6</PackedPolicySize>\n </AssumeRoleResult>\n <ResponseMetadata>\n <RequestId>c6104cbe-af31-11e0-8154-cbc7ccf896c7</RequestId>\n </ResponseMetadata>\n</AssumeRoleResponse>\n </queryresponse>\n\n </examples>\n "
159
+ "documentation": "\n\t\t<p> Returns a set of temporary security credentials (consisting of an access key ID, a secret\n\t\t\taccess key, and a security token) that you can use to access AWS resources that you might not\n\t\t\tnormally have access to. Typically, you use <code>AssumeRole</code> for cross-account access\n\t\t\tor federation. </p>\n\t\t\n\t\t<p> For cross-account access, imagine that you own multiple accounts and need to access\n\t\t\tresources in each account. You could create long-term credentials in each account to access\n\t\t\tthose resources. However, managing all those credentials and remembering which one can access\n\t\t\twhich account can be time consuming. Instead, you can create one set of long-term credentials\n\t\t\tin one account and then use temporary security credentials to access all the other accounts by\n\t\t\tassuming roles in those accounts. For more information about roles, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html\">Roles</a> in\n\t\t\t\t<i>Using IAM</i>. </p>\n\t\t\n\t\t<p> For federation, you can, for example, grant single sign-on access to the AWS Management\n\t\t\tConsole. If you already have an identity and authentication system in your corporate network,\n\t\t\tyou don't have to recreate user identities in AWS in order to grant those user identities\n\t\t\taccess to AWS. Instead, after a user has been authenticated, you call <code>AssumeRole</code>\n\t\t\t(and specify the role with the appropriate permissions) to get temporary security credentials\n\t\t\tfor that user. With those temporary security credentials, you construct a sign-in URL that\n\t\t\tusers can use to access the console. For more information, see <a href=\"http://docs.aws.amazon.com/STS/latest/UsingSTS/STSUseCases.html\">Scenarios for\n\t\t\t\tGranting Temporary Access</a> in <i>AWS Security Token Service</i>. </p>\n\t\t\n\t\t<p> The temporary security credentials are valid for the duration that you specified when\n\t\t\tcalling <code>AssumeRole</code>, which can be from 900 seconds (15 minutes) to 3600 seconds (1\n\t\t\thour). The default is 1 hour. </p>\n\t\t\n\t\t\n\t\t<p>Optionally, you can pass an AWS IAM access policy to this operation. The temporary security credentials that \n\t\t\tare returned by the operation have the permissions that are associated with the access policy\n\t\t\tof the role that is being assumed, except for any permissions explicitly denied by the policy you pass.\n\t\t\tThis gives you a way to further restrict the permissions for the resulting temporary security credentials. These policies and any \n\t\t\tapplicable resource-based policies are evaluated when calls to AWS are made using the temporary security \n\t\t\tcredentials. \n\t\t</p>\n\t\t\n\t\t<p> To assume a role, your AWS account must be trusted by the role. The trust relationship is\n\t\t\tdefined in the role's trust policy when the IAM role is created. You must also have a policy\n\t\t\tthat allows you to call <code>sts:AssumeRole</code>. </p>\n\t\t<p>\n\t\t\t<b>Important:</b> You cannot call <code>AssumeRole</code> by using AWS account credentials;\n\t\t\taccess will be denied. You must use IAM user credentials or temporary security credentials to\n\t\t\tcall <code>AssumeRole</code>. </p>\n\n\t\t<member name=\"RoleArn\" target=\"arnType\"></member>\n\t\t<member name=\"RoleSessionName\" target=\"userNameType\"></member>\n\t\t<member name=\"Policy\" target=\"sessionPolicyDocumentType\"></member>\n\t\t<member name=\"DurationSeconds\" target=\"roleDurationSecondsType\"></member>\n\t\t<member name=\"ExternalId\" target=\"externalIdType\"></member>\n\t\t<examples>\n\t\t\t<queryrequest>\n\t\t\t\thttps://sts.amazonaws.com/\n?Version=2011-06-15\n&Action=AssumeRole\n&RoleSessionName=Bob\n&RoleArn=arn:aws:iam::123456789012:role/demo\n&Policy=%7B%22Version%22%3A%222012-10-17%22%2C%22Statement%22%3A%5B%7B%22Sid%22%3A%22Stmt1%22%2C%22Effect%22%\n 3A%22Allow%22%2C%22Action%22%3A%22s3%3A*%22%2C%22Resource%22%3A%22*%22%7D\n %5D%7D\n&DurationSeconds=3600\n&ExternalId=123ABC\n&AUTHPARAMS\n\t\t\t</queryrequest>\n\n\t\t\t<queryresponse>\n\t\t\t\t<AssumeRoleResponse xmlns=\"https://sts.amazonaws.com/doc/\n2011-06-15/\">\n <AssumeRoleResult>\n <Credentials>\n <SessionToken>\n AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQW\n LWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGd\n QrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU\n 9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz\n +scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==\n </SessionToken>\n <SecretAccessKey>\n wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY\n </SecretAccessKey>\n <Expiration>2011-07-15T23:28:33.359Z</Expiration>\n <AccessKeyId>AKIAIOSFODNN7EXAMPLE</AccessKeyId>\n </Credentials>\n <AssumedRoleUser>\n <Arn>arn:aws:sts::123456789012:assumed-role/demo/Bob</Arn>\n <AssumedRoleId>ARO123EXAMPLE123:Bob</AssumedRoleId>\n </AssumedRoleUser>\n <PackedPolicySize>6</PackedPolicySize>\n </AssumeRoleResult>\n <ResponseMetadata>\n <RequestId>c6104cbe-af31-11e0-8154-cbc7ccf896c7</RequestId>\n </ResponseMetadata>\n</AssumeRoleResponse>\n\t\t\t</queryresponse>\n\n\t\t</examples>\n\t"
160
+ },
161
+ "AssumeRoleWithSAML": {
162
+ "name": "AssumeRoleWithSAML",
163
+ "input": {
164
+ "shape_name": "AssumeRoleWithSAMLRequest",
165
+ "type": "structure",
166
+ "members": {
167
+ "RoleArn": {
168
+ "shape_name": "arnType",
169
+ "type": "string",
170
+ "min_length": 20,
171
+ "max_length": 2048,
172
+ "documentation": "\n\t\t<p>The Amazon Resource Name (ARN) of the role that the caller is assuming.</p>\n\t",
173
+ "required": true
174
+ },
175
+ "PrincipalArn": {
176
+ "shape_name": "arnType",
177
+ "type": "string",
178
+ "min_length": 20,
179
+ "max_length": 2048,
180
+ "documentation": "\n\t\t<p>The Amazon Resource Name (ARN) of the SAML provider in AWS IAM that describes the IdP.</p>\n\t",
181
+ "required": true
182
+ },
183
+ "SAMLAssertion": {
184
+ "shape_name": "SAMLAssertionType",
185
+ "type": "string",
186
+ "min_length": 4,
187
+ "max_length": 50000,
188
+ "documentation": "\n\t\t<p>The base-64 encoded SAML authentication response provided by the IdP.</p>\n\t\t<p>For more information, see \n\t\t\t<a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/create-role-saml-IdP-tasks.html\">Configuring a Relying Party and Adding Claims</a>\n\t\t\tin the <i>Using IAM</i> guide.\n\t\t</p>\n\t",
189
+ "required": true
190
+ },
191
+ "Policy": {
192
+ "shape_name": "sessionPolicyDocumentType",
193
+ "type": "string",
194
+ "pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+",
195
+ "min_length": 1,
196
+ "max_length": 2048,
197
+ "documentation": "\n\t\t<p>An AWS IAM policy in JSON format.</p> \n\t\t\t\n\t\t<p>The temporary security credentials that are returned by this operation have the permissions that are associated \n\t\t\twith the access policy of the role being assumed, except for any permissions explicitly denied by the \n\t\t\tpolicy you pass. These policies and any applicable resource-based policies are evaluated when \n\t\t\tcalls to AWS are made using the temporary security credentials. \n\t\t</p>\n\t\t\n\t\t<note>The policy must be 2048 bytes or shorter, and its packed size must be less than 450\n\t\t\tbytes.</note>\n\t"
198
+ },
199
+ "DurationSeconds": {
200
+ "shape_name": "durationSecondsType",
201
+ "type": "integer",
202
+ "min_length": 900,
203
+ "max_length": 129600,
204
+ "documentation": "\n\t\t<p>The duration, in seconds, of the role session. The value can range from 900 seconds (15\n\t\t\tminutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds. An expiration\n\t\t\tcan also be specified in the SAML authentication response's <code>NotOnOrAfter</code> value.\n\t\t\tThe actual expiration time is whichever value is shorter. </p>\n\t\t\n\t\t<note>The maximum duration for a session is 1 hour, and the minimum duration is 15 minutes, even if\n\t\t\tvalues outside this range are specified.\n\t\t</note>\n\t"
205
+ }
206
+ },
207
+ "documentation": null
208
+ },
209
+ "output": {
210
+ "shape_name": "AssumeRoleWithSAMLResponse",
211
+ "type": "structure",
212
+ "members": {
213
+ "Credentials": {
214
+ "shape_name": "Credentials",
215
+ "type": "structure",
216
+ "members": {
217
+ "AccessKeyId": {
218
+ "shape_name": "accessKeyIdType",
219
+ "type": "string",
220
+ "min_length": 16,
221
+ "max_length": 32,
222
+ "pattern": "[\\w]*",
223
+ "documentation": "\n\t\t<p>The access key ID that identifies the temporary security credentials.</p>\n\t",
224
+ "required": true
225
+ },
226
+ "SecretAccessKey": {
227
+ "shape_name": "accessKeySecretType",
228
+ "type": "string",
229
+ "documentation": "\n\t\t<p>The secret access key that can be used to sign requests.</p>\n\t",
230
+ "required": true
231
+ },
232
+ "SessionToken": {
233
+ "shape_name": "tokenType",
234
+ "type": "string",
235
+ "documentation": "\n\t\t<p>The token that users must pass to the service API to use the temporary credentials.</p>\n\t",
236
+ "required": true
237
+ },
238
+ "Expiration": {
239
+ "shape_name": "dateType",
240
+ "type": "timestamp",
241
+ "documentation": "\n\t\t<p>The date on which the current credentials expire.</p>\n\t",
242
+ "required": true
243
+ }
244
+ },
245
+ "documentation": "\n\t\t<p>AWS credentials for API authentication.</p>\n\t"
246
+ },
247
+ "AssumedRoleUser": {
248
+ "shape_name": "AssumedRoleUser",
249
+ "type": "structure",
250
+ "members": {
251
+ "AssumedRoleId": {
252
+ "shape_name": "assumedRoleIdType",
253
+ "type": "string",
254
+ "min_length": 2,
255
+ "max_length": 96,
256
+ "pattern": "[\\w+=,.@:-]*",
257
+ "documentation": "\n\t\t<p>A unique identifier that contains the role ID and the role session name of the role that is\n\t\t\tbeing assumed. The role ID is generated by AWS when the role is created.</p>\n\t",
258
+ "required": true
259
+ },
260
+ "Arn": {
261
+ "shape_name": "arnType",
262
+ "type": "string",
263
+ "min_length": 20,
264
+ "max_length": 2048,
265
+ "documentation": "\n\t\t<p> The ARN of the temporary security credentials that are returned from the <a>AssumeRole</a>\n\t\t\taction. For more information about ARNs and how to use them in policies, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html\" target=\"_blank\"> Identifiers for IAM Entities </a> in <i>Using IAM</i>. </p>\n\t",
266
+ "required": true
267
+ }
268
+ },
269
+ "documentation": "\n\t\t<p>The identifiers for the temporary security credentials that the operation returns. </p>\n\t"
270
+ },
271
+ "PackedPolicySize": {
272
+ "shape_name": "nonNegativeIntegerType",
273
+ "type": "integer",
274
+ "min_length": 0,
275
+ "documentation": "\n\t\t<p> A percentage value that indicates the size of the policy in packed form. The service rejects\n\t\t\tany policy with a packed size greater than 100 percent, which means the policy exceeded the\n\t\t\tallowed space. </p>\n\t"
276
+ }
277
+ },
278
+ "documentation": "\n\t\t<p> Contains the result of a successful call to the <a>AssumeRoleWithSAML</a> action, including\n\t\t\ttemporary AWS credentials that can be used to make AWS requests. </p>\n\t"
279
+ },
280
+ "errors": [
281
+ {
282
+ "shape_name": "MalformedPolicyDocumentException",
283
+ "type": "structure",
284
+ "members": {
285
+ "message": {
286
+ "shape_name": "malformedPolicyDocumentMessage",
287
+ "type": "string",
288
+ "documentation": null
289
+ }
290
+ },
291
+ "documentation": "\n\t\t<p>The request was rejected because the policy document was malformed. The error message\n\t\t\tdescribes the specific error.</p>\n\t"
292
+ },
293
+ {
294
+ "shape_name": "PackedPolicyTooLargeException",
295
+ "type": "structure",
296
+ "members": {
297
+ "message": {
298
+ "shape_name": "packedPolicyTooLargeMessage",
299
+ "type": "string",
300
+ "documentation": null
301
+ }
302
+ },
303
+ "documentation": "\n\t\t<p>The request was rejected because the policy document was too large. The error message\n\t\t\tdescribes how big the policy document is, in packed form, as a percentage of what the API\n\t\t\tallows.</p>\n\t"
304
+ },
305
+ {
306
+ "shape_name": "IDPRejectedClaimException",
307
+ "type": "structure",
308
+ "members": {
309
+ "message": {
310
+ "shape_name": "idpRejectedClaimMessage",
311
+ "type": "string",
312
+ "documentation": null
313
+ }
314
+ },
315
+ "documentation": "\n\t\t<p>The identity provider (IdP) reported that authentication failed. This might be because the \n\t\t\t claim is invalid.</p>\n\t\t<p>If this error is returned for the <code>AssumeRoleWithWebIdentity</code> operation,\n\t\t\t it can also mean that the claim has expired or has been explicitly revoked.\n\t\t</p>\n\t"
316
+ },
317
+ {
318
+ "shape_name": "InvalidIdentityTokenException",
319
+ "type": "structure",
320
+ "members": {
321
+ "message": {
322
+ "shape_name": "invalidIdentityTokenMessage",
323
+ "type": "string",
324
+ "documentation": null
325
+ }
326
+ },
327
+ "documentation": "\n\t\t<p>The web identity token that was passed could not be validated by AWS. Get a new identity\n\t\t\ttoken from the identity provider and then retry the request. </p>\n\t"
328
+ },
329
+ {
330
+ "shape_name": "ExpiredTokenException",
331
+ "type": "structure",
332
+ "members": {
333
+ "message": {
334
+ "shape_name": "expiredIdentityTokenMessage",
335
+ "type": "string",
336
+ "documentation": null
337
+ }
338
+ },
339
+ "documentation": "\n\t\t<p>The web identity token that was passed is expired or is not valid. Get a new identity token from the identity\n\t\t\tprovider and then retry the request. </p>\n\t"
340
+ }
341
+ ],
342
+ "documentation": "\n\t\t<p> Returns a set of temporary security credentials for users who have been authenticated via a\n\t\t\tSAML authentication response. This operation provides a mechanism for tying an enterprise\n\t\t\tidentity store or directory to role-based AWS access without user-specific credentials or\n\t\t\tconfiguration. </p>\n\n\t\t<p> The temporary security credentials returned by this operation consist of an access key ID, a\n\t\t\tsecret access key, and a security token. Applications can use these temporary security\n\t\t\tcredentials to sign calls to AWS services. The credentials are valid for the duration that you\n\t\t\tspecified when calling <code>AssumeRoleWithSAML</code>, which can be up to 3600 seconds (1\n\t\t\thour) or until the time specified in the SAML authentication response's\n\t\t\t\t<code>NotOnOrAfter</code> value, whichever is shorter.</p>\n\t\t\n\t\t<note>The maximum duration for a session is 1 hour, and the minimum duration is 15 minutes, even if\n\t\t\tvalues outside this range are specified.\n\t\t</note>\n\t\t\n\t\t<p>Optionally, you can pass an AWS IAM access policy to this operation. The temporary security credentials that \n\t\t\tare returned by the operation have the permissions that are associated with the access policy of\n\t\t\tthe role being assumed, except for any permissions explicitly denied by the policy you pass.\n\t\t\tThis gives you a way to further restrict the permissions for the resulting temporary security credentials. These policies and any \n\t\t\tapplicable resource-based policies are evaluated when calls to AWS are made using the temporary security \n\t\t\tcredentials. \n\t\t</p>\n\t\t\n\t\t<p> Before your application can call <code>AssumeRoleWithSAML</code>, you must configure your\n\t\t\tSAML identity provider (IdP) to issue the claims required by AWS. Additionally, you must use\n\t\t\tAWS Identity and Access Management (AWS IAM) to create a SAML provider entity in your AWS account that represents your\n\t\t\tidentity provider, and create an AWS IAM role that specifies this SAML provider in its trust\n\t\t\tpolicy. </p>\n\n\t\t<p> Calling <code>AssumeRoleWithSAML</code> does not require the use of AWS security\n\t\t\tcredentials. The identity of the caller is validated by using keys in the metadata document\n\t\t\tthat is uploaded for the SAML provider entity for your identity provider. </p>\n\t\t\n\t\t<p>For more information, see the following resources:</p>\n\n\t\t<ul>\n\t\t\t<li>\n<a href=\"http://docs.aws.amazon.com/STS/latest/UsingSTS/CreatingSAML.html\">Creating Temporary Security Credentials for SAML\n\t\t\t\t\tFederation</a> in the <i>Using Temporary Security Credentials</i> guide. </li>\n\t\t\t\n\t\t\t<li>\n\t\t\t\t<a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/idp-managing-identityproviders.html\">SAML Providers</a> in the\n\t\t\t\t\t<i>Using IAM</i> guide. </li>\n\n\t\t\t<li>\n\t\t\t\t<a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/create-role-saml-IdP-tasks.html\">Configuring a Relying Party and Claims\n\t\t\t\t\tin the <i>Using IAM</i> guide. \n\t\t\t\t</a>\n\t\t\t</li>\n\t\t\t\n\t\t\t<li>\n\t\t\t\t<a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/create-role-saml.html\">Creating a Role for SAML-Based Federation</a>\n\t\t\t\tin the <i>Using IAM</i> guide. \n\t\t\t</li>\n\t\t\t</ul>\n\n\t\t<member name=\"RoleArn\" target=\"arnType\"></member>\n\t\t<member name=\"SAMLAssertion\" target=\"SAMLAssertionType\"></member>\n\t\t<member name=\"Policy\" target=\"sessionPolicyDocumentType\"></member>\n\t\t<member name=\"DurationSeconds\" target=\"roleDurationSecondsType\"></member>\n\t"
160
343
  },
161
344
  "AssumeRoleWithWebIdentity": {
162
345
  "name": "AssumeRoleWithWebIdentity",
@@ -169,7 +352,7 @@
169
352
  "type": "string",
170
353
  "min_length": 20,
171
354
  "max_length": 2048,
172
- "documentation": "\n <p>The Amazon Resource Name (ARN) of the role that the caller is assuming.</p>\n ",
355
+ "documentation": "\n\t\t<p>The Amazon Resource Name (ARN) of the role that the caller is assuming.</p>\n\t",
173
356
  "required": true
174
357
  },
175
358
  "RoleSessionName": {
@@ -178,7 +361,7 @@
178
361
  "min_length": 2,
179
362
  "max_length": 32,
180
363
  "pattern": "[\\w+=,.@-]*",
181
- "documentation": "\n <p>\n An identifier for the assumed role session. Typically, you pass the name or\n identifier that is associated with the user who is using your application. That way,\n the temporary security credentials that your application will use are associated with\n that user. This session name is included as part of the ARN and assumed role ID in the\n <code>AssumedRoleUser</code> response element.\n </p>\n ",
364
+ "documentation": "\n\t\t<p> An identifier for the assumed role session. Typically, you pass the name or identifier that\n\t\t\tis associated with the user who is using your application. That way, the temporary security\n\t\t\tcredentials that your application will use are associated with that user. This session name is\n\t\t\tincluded as part of the ARN and assumed role ID in the <code>AssumedRoleUser</code> response\n\t\t\telement. </p>\n\t",
182
365
  "required": true
183
366
  },
184
367
  "WebIdentityToken": {
@@ -186,7 +369,7 @@
186
369
  "type": "string",
187
370
  "min_length": 4,
188
371
  "max_length": 2048,
189
- "documentation": "\n <p>\n The OAuth 2.0 access token or OpenID Connect ID token that is provided by the\n identity provider. Your application must get this token by authenticating the user who\n is using your application with a web identity provider before the application makes an\n <code>AssumeRoleWithWebIdentity</code> call.\n </p>\n ",
372
+ "documentation": "\n\t\t<p> The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity\n\t\t\tprovider. Your application must get this token by authenticating the user who is using your\n\t\t\tapplication with a web identity provider before the application makes an\n\t\t\t\t<code>AssumeRoleWithWebIdentity</code> call. </p>\n\t",
190
373
  "required": true
191
374
  },
192
375
  "ProviderId": {
@@ -194,7 +377,7 @@
194
377
  "type": "string",
195
378
  "min_length": 4,
196
379
  "max_length": 2048,
197
- "documentation": "\n <p>\n The fully-qualified host component of the domain name of the identity provider. Specify this value only for \n OAuth access tokens. Do not specify this value for OpenID Connect ID tokens, such as \n <code>accounts.google.com</code>. Do not include URL schemes and port numbers. \n Currently, <code>www.amazon.com</code> and <code>graph.facebook.com</code> are supported.\n </p>\n "
380
+ "documentation": "\n\t\t<p> The fully-qualified host component of the domain name of the identity provider. Specify this\n\t\t\tvalue only for OAuth access tokens. Do not specify this value for OpenID Connect ID tokens,\n\t\t\tsuch as <code>accounts.google.com</code>. Do not include URL schemes and port numbers.\n\t\t\tCurrently, <code>www.amazon.com</code> and <code>graph.facebook.com</code> are supported. </p>\n\t"
198
381
  },
199
382
  "Policy": {
200
383
  "shape_name": "sessionPolicyDocumentType",
@@ -202,14 +385,14 @@
202
385
  "pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+",
203
386
  "min_length": 1,
204
387
  "max_length": 2048,
205
- "documentation": "\n <p>\n A supplemental policy that is associated with the temporary security credentials from\n the <code>AssumeRoleWithWebIdentity</code> call. The resulting permissions of the\n temporary security credentials are an intersection of this policy and the access\n policy that\tis associated with the role. Use this policy to further restrict the\n permissions of the temporary security credentials.\n </p>\n "
388
+ "documentation": "\n\t\t<p>An AWS IAM policy in JSON format.</p>\n\t\t\n\t\t<p>The temporary security credentials that are returned by the operation have the permissions that are \n\t\t\tassociated with the access policy of the role being assumed, except for any permissions explicitly denied \n\t\t\tby the policy you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. \n\t\t\tThese policies and any applicable resource-based policies are evaluated when calls to AWS are made \n\t\t\tusing the temporary security credentials. \n\t\t</p>\n\t"
206
389
  },
207
390
  "DurationSeconds": {
208
391
  "shape_name": "durationSecondsType",
209
392
  "type": "integer",
210
393
  "min_length": 900,
211
394
  "max_length": 129600,
212
- "documentation": "\n <p>\n The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour).\n By default, the value is set to 3600 seconds.\n </p>\n "
395
+ "documentation": "\n\t\t<p> The duration, in seconds, of the role session. The value can range from 900 seconds (15\n\t\t\tminutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds. </p>\n\t"
213
396
  }
214
397
  },
215
398
  "documentation": null
@@ -228,36 +411,36 @@
228
411
  "min_length": 16,
229
412
  "max_length": 32,
230
413
  "pattern": "[\\w]*",
231
- "documentation": "\n <p>The access key ID that identifies the temporary security credentials.</p>\n ",
414
+ "documentation": "\n\t\t<p>The access key ID that identifies the temporary security credentials.</p>\n\t",
232
415
  "required": true
233
416
  },
234
417
  "SecretAccessKey": {
235
418
  "shape_name": "accessKeySecretType",
236
419
  "type": "string",
237
- "documentation": "\n <p>The secret access key that can be used to sign requests.</p>\n ",
420
+ "documentation": "\n\t\t<p>The secret access key that can be used to sign requests.</p>\n\t",
238
421
  "required": true
239
422
  },
240
423
  "SessionToken": {
241
424
  "shape_name": "tokenType",
242
425
  "type": "string",
243
- "documentation": "\n <p>The token that users must pass to the service API to use the temporary credentials.</p>\n ",
426
+ "documentation": "\n\t\t<p>The token that users must pass to the service API to use the temporary credentials.</p>\n\t",
244
427
  "required": true
245
428
  },
246
429
  "Expiration": {
247
430
  "shape_name": "dateType",
248
431
  "type": "timestamp",
249
- "documentation": "\n <p>The date on which the current credentials expire.</p>\n ",
432
+ "documentation": "\n\t\t<p>The date on which the current credentials expire.</p>\n\t",
250
433
  "required": true
251
434
  }
252
435
  },
253
- "documentation": "\n <p>The temporary security credentials, which include an access key ID, a secret access key, and a security token.</p>\n "
436
+ "documentation": "\n\t\t<p>The temporary security credentials, which include an access key ID, a secret access key, and\n\t\t\ta security token.</p>\n\t"
254
437
  },
255
438
  "SubjectFromWebIdentityToken": {
256
439
  "shape_name": "webIdentitySubjectType",
257
440
  "type": "string",
258
441
  "min_length": 6,
259
442
  "max_length": 255,
260
- "documentation": "\n <p>\n The unique user identifier that is returned by the identity provider. This\n identifier is associated with the <code>WebIdentityToken</code> that was submitted with the <code>AssumeRoleWithWebIdentity</code> call.\n The identifier is typically unique to the user and the\n application that acquired the <code>WebIdentityToken</code> (pairwise identifier). If\n an OpenID Connect ID token was submitted in the <code>WebIdentityToken</code>, this\n value is returned by the identity provider as the token's <code>sub</code> (Subject) claim.\n </p>\n "
443
+ "documentation": "\n\t\t<p> The unique user identifier that is returned by the identity provider. This identifier is\n\t\t\tassociated with the <code>WebIdentityToken</code> that was submitted with the\n\t\t\t\t<code>AssumeRoleWithWebIdentity</code> call. The identifier is typically unique to the user\n\t\t\tand the application that acquired the <code>WebIdentityToken</code> (pairwise identifier). If\n\t\t\tan OpenID Connect ID token was submitted in the <code>WebIdentityToken</code>, this value is\n\t\t\treturned by the identity provider as the token's <code>sub</code> (Subject) claim. </p>\n\t"
261
444
  },
262
445
  "AssumedRoleUser": {
263
446
  "shape_name": "AssumedRoleUser",
@@ -269,7 +452,7 @@
269
452
  "min_length": 2,
270
453
  "max_length": 96,
271
454
  "pattern": "[\\w+=,.@:-]*",
272
- "documentation": "\n <p>A unique identifier that contains the role ID and the role session name of the role that is being assumed. The \n role ID is generated by AWS when the role is created.</p>\n ",
455
+ "documentation": "\n\t\t<p>A unique identifier that contains the role ID and the role session name of the role that is\n\t\t\tbeing assumed. The role ID is generated by AWS when the role is created.</p>\n\t",
273
456
  "required": true
274
457
  },
275
458
  "Arn": {
@@ -277,20 +460,20 @@
277
460
  "type": "string",
278
461
  "min_length": 20,
279
462
  "max_length": 2048,
280
- "documentation": "\n <p>\n The ARN of the temporary security credentials that are returned from the <a>AssumeRole</a> action.\n For more information about ARNs and how to use them in policies,\n see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html\" target=\"_blank\">\n Identifiers for IAM Entities\n </a> in <i>Using IAM</i>.\n </p>\n ",
463
+ "documentation": "\n\t\t<p> The ARN of the temporary security credentials that are returned from the <a>AssumeRole</a>\n\t\t\taction. For more information about ARNs and how to use them in policies, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html\" target=\"_blank\"> Identifiers for IAM Entities </a> in <i>Using IAM</i>. </p>\n\t",
281
464
  "required": true
282
465
  }
283
466
  },
284
- "documentation": "\n <p>\n The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers that you can use \n to refer to the resulting temporary security credentials. For example, you can reference these \n credentials as a principal in a resource-based policy by using the ARN or assumed role ID. The ARN \n and ID include the <code>RoleSessionName</code> that you specified when you called <code>AssumeRole</code>.\n </p>\n "
467
+ "documentation": "\n\t\t<p> The Amazon Resource Name (ARN) and the assumed role ID, which are identifiers that you can\n\t\t\tuse to refer to the resulting temporary security credentials. For example, you can reference\n\t\t\tthese credentials as a principal in a resource-based policy by using the ARN or assumed role\n\t\t\tID. The ARN and ID include the <code>RoleSessionName</code> that you specified when you called\n\t\t\t\t<code>AssumeRole</code>. </p>\n\t"
285
468
  },
286
469
  "PackedPolicySize": {
287
470
  "shape_name": "nonNegativeIntegerType",
288
471
  "type": "integer",
289
472
  "min_length": 0,
290
- "documentation": "\n <p>\n A percentage value that indicates the size of the policy in packed form. The service rejects\n any policy with a packed size greater than 100 percent, which means the policy exceeded the allowed space.\n </p>\n "
473
+ "documentation": "\n\t\t<p> A percentage value that indicates the size of the policy in packed form. The service rejects\n\t\t\tany policy with a packed size greater than 100 percent, which means the policy exceeded the\n\t\t\tallowed space. </p>\n\t"
291
474
  }
292
475
  },
293
- "documentation": "\n <p>\n Contains the result of a successful invocation of the <a>AssumeRoleWithWebIdentity</a> action, including temporary\n AWS credentials that can be used to make AWS requests.\n </p>\n "
476
+ "documentation": "\n\t\t<p> Contains the result of a successful call to the <a>AssumeRoleWithWebIdentity</a> action,\n\t\t\tincluding temporary AWS credentials that can be used to make AWS requests. </p>\n\t"
294
477
  },
295
478
  "errors": [
296
479
  {
@@ -303,7 +486,7 @@
303
486
  "documentation": null
304
487
  }
305
488
  },
306
- "documentation": "\n <p>The request was rejected because the policy document was malformed. The error message describes the specific error.</p>\n"
489
+ "documentation": "\n\t\t<p>The request was rejected because the policy document was malformed. The error message\n\t\t\tdescribes the specific error.</p>\n\t"
307
490
  },
308
491
  {
309
492
  "shape_name": "PackedPolicyTooLargeException",
@@ -315,7 +498,7 @@
315
498
  "documentation": null
316
499
  }
317
500
  },
318
- "documentation": "\n <p>The request was rejected because the policy document was too large. The error message describes how big the policy document\n is, in packed form, as a percentage of what the API allows.</p>\n"
501
+ "documentation": "\n\t\t<p>The request was rejected because the policy document was too large. The error message\n\t\t\tdescribes how big the policy document is, in packed form, as a percentage of what the API\n\t\t\tallows.</p>\n\t"
319
502
  },
320
503
  {
321
504
  "shape_name": "IDPRejectedClaimException",
@@ -327,7 +510,7 @@
327
510
  "documentation": null
328
511
  }
329
512
  },
330
- "documentation": "\n\t<p>The non-AWS identity provider (IDP) that was asked to verify the incoming identity token\n\trejected the identity claim. This might be because the claim is invalid, has expired, or has\n\tbeen explicitly revoked by the user. The error message contains\n\tdetails about the response from the non-AWS identity provider.</p>\n"
513
+ "documentation": "\n\t\t<p>The identity provider (IdP) reported that authentication failed. This might be because the \n\t\t\t claim is invalid.</p>\n\t\t<p>If this error is returned for the <code>AssumeRoleWithWebIdentity</code> operation,\n\t\t\t it can also mean that the claim has expired or has been explicitly revoked.\n\t\t</p>\n\t"
331
514
  },
332
515
  {
333
516
  "shape_name": "IDPCommunicationErrorException",
@@ -339,7 +522,7 @@
339
522
  "documentation": null
340
523
  }
341
524
  },
342
- "documentation": "\n\t<p>The request could not be fulfilled because the non-AWS identity provider (IDP) that was\n\tasked to verify the incoming identity token could not be reached. This is often a transient\n\terror caused by network conditions. Retry the request a limited number of times so that you don't exceed the request rate. If the error persists, the\n\tnon-AWS identity provider might be down or not responding.\n\t</p>\n"
525
+ "documentation": "\n\t\t<p>The request could not be fulfilled because the non-AWS identity provider (IDP) that was asked\n\t\t\tto verify the incoming identity token could not be reached. This is often a transient error\n\t\t\tcaused by network conditions. Retry the request a limited number of times so that you don't\n\t\t\texceed the request rate. If the error persists, the non-AWS identity provider might be down or\n\t\t\tnot responding. </p>\n\t"
343
526
  },
344
527
  {
345
528
  "shape_name": "InvalidIdentityTokenException",
@@ -351,7 +534,7 @@
351
534
  "documentation": null
352
535
  }
353
536
  },
354
- "documentation": "\n\t<p>The web identity token that was passed could not be validated by AWS. Get a new identity token from the identity provider and then retry the request.\n\t</p>\n"
537
+ "documentation": "\n\t\t<p>The web identity token that was passed could not be validated by AWS. Get a new identity\n\t\t\ttoken from the identity provider and then retry the request. </p>\n\t"
355
538
  },
356
539
  {
357
540
  "shape_name": "ExpiredTokenException",
@@ -363,10 +546,10 @@
363
546
  "documentation": null
364
547
  }
365
548
  },
366
- "documentation": "\n\t<p>The web identity token that was passed is expired. Get a new identity token from the identity provider and then retry the request.\n\t</p>\n"
549
+ "documentation": "\n\t\t<p>The web identity token that was passed is expired or is not valid. Get a new identity token from the identity\n\t\t\tprovider and then retry the request. </p>\n\t"
367
550
  }
368
551
  ],
369
- "documentation": "\n <p>\n Returns a set of temporary security\n credentials\tfor users who have been authenticated in a mobile or web application\n with a web identity provider, such as Login with Amazon, Facebook, or Google.\n <code>AssumeRoleWithWebIdentity</code> is an API call that does\n not require the use of AWS security credentials. Therefore, you can distribute an\n application\t(for example, on mobile devices) that requests temporary security\n credentials without including long-term AWS credentials in the application or by\n deploying server-based proxy services that use long-term AWS credentials. For more information, see <a href=\"http://docs.aws.amazon.com/STS/latest/UsingSTS/STSUseCases.html#MobileApplication-KnownProvider\">Creating a Mobile Application with Third-Party Sign-In</a> in <i>AWS Security Token Service</i>.\n </p>\n\n <p>\n The temporary security credentials\n consist of an access key ID, a secret access key, and a security token.\n Applications can use these temporary security credentials to sign calls to\n AWS service APIs. The credentials are valid for the duration that you specified\n when calling <code>AssumeRoleWithWebIdentity</code>, which can be from 900 seconds (15 minutes)\n to 3600 seconds (1 hour). By default, the temporary security credentials are valid for 1 hour.\n </p>\n\n <p>\n The temporary security credentials that are returned from the\n <code>AssumeRoleWithWebIdentity</code> response have the permissions that are\n associated with the access policy of the role being assumed. You can further\n restrict the permissions of the temporary security credentials by passing a policy\n in the request. The resulting permissions are an intersection of the role's access\n policy and the policy that you passed. These policies and any applicable\n resource-based policies are evaluated when calls to AWS service APIs are made\n using the temporary security credentials.\n </p>\n\n <p>\n Before your application can call <code>AssumeRoleWithWebIdentity</code>, you must\n have an identity token from a supported identity provider and create a role that the\n application can assume. The role that your application assumes must trust the\n identity provider that is associated with the identity token. In other words, the\n identity provider must be specified in the role's trust policy.\n For more information, see <a href=\"http://docs.aws.amazon.com/STS/latest/UsingSTS/CreatingWIF.html\" target=\"_blank\">\n Creating Temporary Security Credentials for Mobile Apps Using Third-Party Identity\n Providers\n </a>.\n </p>\n\n <member name=\"RoleArn\" target=\"arnType\"></member>\n <member name=\"RoleSessionName\" target=\"userNameType\"></member>\n <member name=\"WebIdentityToken\" target=\"clientTokenType\"></member>\n <member name=\"ProviderId\" target=\"urlType\"></member>\n <member name=\"Policy\" target=\"sessionPolicyDocumentType\"></member>\n <member name=\"DurationSeconds\" target=\"roleDurationSecondsType\"></member>\n\n <examples>\n\n <queryrequest>\n https://sts.amazonaws.com/\n?Action=AssumeRoleWithWebIdentity\n&DurationSeconds=3600\n&ProviderId=www.amazon.com\n&RoleSessionName=app1\n&Version=2011-06-15\n&RoleArn=arn%3Aaws%3Aiam%3A%3A000240903217%3Arole%2FFederatedWebIdentityRole\n&WebIdentityToken=Atza%7CIQEBLjAsAhRFiXuWpUXuRvQ9PZL3GMFcYevydwIUFAHZwXZXX\nXXXXXXJnrulxKDHwy87oGKPznh0D6bEQZTSCzyoCtL_8S07pLpr0zMbn6w1lfVZKNTBdDansFB\nmtGnIsIapjI6xKR02Yc_2bQ8LZbUXSGm6Ry6_BG7PrtLZtj_dfCTj92xNGed-CrKqjG7nPBjNI\nL016GGvuS5gSvPRUxWES3VYfm1wl7WTI7jn-Pcb6M-buCgHhFOzTQxod27L9CqnOLio7N3gZAG\npsp6n1-AJBOCJckcyXe2c6uD0srOJeZlKUm2eTDVMf8IehDVI0r1QOnTV6KzzAI3OY87Vd_cVMQ\n </queryrequest>\n\n <queryresponse>\n <AssumeRoleWithWebIdentityResponse xmlns=\"https://sts.amazonaws.com/doc/2011-06-15/\">\n <AssumeRoleWithWebIdentityResult>\n <SubjectFromWebIdentityToken>\n amzn1.account.AF6RHO7KZU5XRVQJGXK6HB56KR2A\n </SubjectFromWebIdentityToken>\n <AssumedRoleUser>\n <Arn>\n arn:aws:sts::000240903217:assumed-role/FederatedWebIdentityRole/app1\n </Arn>\n <AssumedRoleId>\n AROACLKWSDQRAOFQC3IDI:app1\n </AssumedRoleId>\n </AssumedRoleUser>\n <Credentials>\n <SessionToken>\n AQoDYXdzEE0a8ANXXXXXXXXNO1ewxE5TijQyp+IPfnyowF\n </SessionToken>\n <SecretAccessKey>\n wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY\n </SecretAccessKey>\n <Expiration>\n 2013-05-14T23:00:23Z\n </Expiration>\n <AccessKeyId>\n AKIAIOSFODNN7EXAMPLE\n </AccessKeyId>\n </Credentials>\n </AssumeRoleWithWebIdentityResult>\n <ResponseMetadata>\n <RequestId>ad4156e9-bce1-11e2-82e6-6b6ef249e618</RequestId>\n </ResponseMetadata>\n</AssumeRoleWithWebIdentityResponse>\n </queryresponse>\n </examples>\n "
552
+ "documentation": "\n\t\t<p> Returns a set of temporary security credentials for users who have been authenticated in a\n\t\t\tmobile or web application with a web identity provider, such as Login with Amazon, Facebook,\n\t\t\tor Google. <code>AssumeRoleWithWebIdentity</code> is an API call that does not require the use\n\t\t\tof AWS security credentials. Therefore, you can distribute an application (for example, on\n\t\t\tmobile devices) that requests temporary security credentials without including long-term AWS\n\t\t\tcredentials in the application or by deploying server-based proxy services that use long-term\n\t\t\tAWS credentials. </p>\n\n\t\t<p> The temporary security credentials consist of an access key ID, a secret access key, and a\n\t\t\tsecurity token. Applications can use these temporary security credentials to sign calls to AWS\n\t\t\tservice APIs. The credentials are valid for the duration that you specified when calling\n\t\t\t\t<code>AssumeRoleWithWebIdentity</code>, which can be from 900 seconds (15 minutes) to 3600\n\t\t\tseconds (1 hour). By default, the temporary security credentials are valid for 1 hour. </p>\n\n\t\t<p>Optionally, you can pass an AWS IAM access policy to this operation. The temporary security credentials that are \n\t\t\treturned by the operation have the permissions that are associated with the access policy of the role being assumed, \n\t\t\texcept for any permissions explicitly denied by the policy you pass. This gives you a way\n\t\t\tto further restrict the permissions for the resulting temporary security credentials. These policies and any applicable \n\t\t\tresource-based policies are evaluated when calls to AWS are made using the temporary security credentials. \n\t\t</p>\n\t\t\n\t\t<p> Before your application can call <code>AssumeRoleWithWebIdentity</code>, you must have an\n\t\t\tidentity token from a supported identity provider and create a role that the application can\n\t\t\tassume. The role that your application assumes must trust the identity provider that is\n\t\t\tassociated with the identity token. In other words, the identity provider must be specified in\n\t\t\tthe role's trust policy. </p>\n\n\t\t<p> For more information about how to use web identity federation and the\n\t\t\t\t<code>AssumeRoleWithWebIdentity</code>, see the following resources: </p>\n\n\t\t<ul>\n\t\t\t<li>\n\t\t\t\t<a href=\"http://docs.aws.amazon.com/STS/latest/UsingSTS/STSUseCases.html#MobileApplication-KnownProvider\" target=\"_blank\"> Creating a Mobile Application with Third-Party Sign-In</a> and <a href=\"http://docs.aws.amazon.com/STS/latest/UsingSTS/CreatingWIF.html\" target=\"_blank\">\n\t\t\t\t\tCreating Temporary Security Credentials for Mobile Apps Using Third-Party Identity\n\t\t\t\t\tProviders</a> in <i>Using Temporary Security Credentials</i>. </li>\n\n\t\t\t<li>\n<a href=\"https://web-identity-federation-playground.s3.amazonaws.com/index.html\" target=\"_blank\"> Web Identity Federation Playground</a>. This interactive website lets you\n\t\t\t\twalk through the process of authenticating via Login with Amazon, Facebook, or Google,\n\t\t\t\tgetting temporary security credentials, and then using those credentials to make a request\n\t\t\t\tto AWS. </li>\n\n\t\t\t<li>\n<a href=\"http://aws.amazon.com/sdkforios/\">AWS SDK for iOS</a> and <a href=\"http://aws.amazon.com/sdkforandroid/\" target=\"_blank\">AWS SDK for Android</a>. These\n\t\t\t\ttoolkits contain sample apps that show how to invoke the identity providers, and then how to\n\t\t\t\tuse the information from these providers to get and use temporary security credentials. </li>\n\n\t\t\t<li>\n<a href=\"http://aws.amazon.com/articles/4617974389850313\" target=\"_blank\">Web Identity\n\t\t\t\t\tFederation with Mobile Applications</a>. This article discusses web identity federation\n\t\t\t\tand shows an example of how to use web identity federation to get access to content in\n\t\t\t\tAmazon S3. </li>\n\t\t</ul>\n\n\t\t<member name=\"RoleArn\" target=\"arnType\"></member>\n\t\t<member name=\"RoleSessionName\" target=\"userNameType\"></member>\n\t\t<member name=\"WebIdentityToken\" target=\"clientTokenType\"></member>\n\t\t<member name=\"ProviderId\" target=\"urlType\"></member>\n\t\t<member name=\"Policy\" target=\"sessionPolicyDocumentType\"></member>\n\t\t<member name=\"DurationSeconds\" target=\"roleDurationSecondsType\"></member>\n\n\t\t<examples>\n\n\t\t\t<queryrequest>\n\t\t\t\thttps://sts.amazonaws.com/\n?Action=AssumeRoleWithWebIdentity\n&DurationSeconds=3600\n&ProviderId=www.amazon.com\n&RoleSessionName=app1\n&Version=2011-06-15\n&RoleArn=arn%3Aaws%3Aiam%3A%3A000240903217%3Arole%2FFederatedWebIdentityRole\n&WebIdentityToken=Atza%7CIQEBLjAsAhRFiXuWpUXuRvQ9PZL3GMFcYevydwIUFAHZwXZXX\nXXXXXXJnrulxKDHwy87oGKPznh0D6bEQZTSCzyoCtL_8S07pLpr0zMbn6w1lfVZKNTBdDansFB\nmtGnIsIapjI6xKR02Yc_2bQ8LZbUXSGm6Ry6_BG7PrtLZtj_dfCTj92xNGed-CrKqjG7nPBjNI\nL016GGvuS5gSvPRUxWES3VYfm1wl7WTI7jn-Pcb6M-buCgHhFOzTQxod27L9CqnOLio7N3gZAG\npsp6n1-AJBOCJckcyXe2c6uD0srOJeZlKUm2eTDVMf8IehDVI0r1QOnTV6KzzAI3OY87Vd_cVMQ\n\t\t\t</queryrequest>\n\n\t\t\t<queryresponse>\n\t\t\t\t<AssumeRoleWithWebIdentityResponse xmlns=\"https://sts.amazonaws.com/doc/2011-06-15/\">\n <AssumeRoleWithWebIdentityResult>\n <SubjectFromWebIdentityToken>\n amzn1.account.AF6RHO7KZU5XRVQJGXK6HB56KR2A\n </SubjectFromWebIdentityToken>\n <AssumedRoleUser>\n <Arn>\n arn:aws:sts::000240903217:assumed-role/FederatedWebIdentityRole/app1\n </Arn>\n <AssumedRoleId>\n AROACLKWSDQRAOFQC3IDI:app1\n </AssumedRoleId>\n </AssumedRoleUser>\n <Credentials>\n <SessionToken>\n AQoDYXdzEE0a8ANXXXXXXXXNO1ewxE5TijQyp+IPfnyowF\n </SessionToken>\n <SecretAccessKey>\n wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY\n </SecretAccessKey>\n <Expiration>\n 2013-05-14T23:00:23Z\n </Expiration>\n <AccessKeyId>\n AKIAIOSFODNN7EXAMPLE\n </AccessKeyId>\n </Credentials>\n </AssumeRoleWithWebIdentityResult>\n <ResponseMetadata>\n <RequestId>ad4156e9-bce1-11e2-82e6-6b6ef249e618</RequestId>\n </ResponseMetadata>\n</AssumeRoleWithWebIdentityResponse>\n\t\t\t</queryresponse>\n\t\t</examples>\n\t"
370
553
  },
371
554
  "DecodeAuthorizationMessage": {
372
555
  "name": "DecodeAuthorizationMessage",
@@ -379,7 +562,7 @@
379
562
  "type": "string",
380
563
  "min_length": 1,
381
564
  "max_length": 10240,
382
- "documentation": "\n <p>The encoded message that was returned with the response.</p>\n",
565
+ "documentation": "\n\t\t<p>The encoded message that was returned with the response.</p>\n\t",
383
566
  "required": true
384
567
  }
385
568
  },
@@ -392,10 +575,10 @@
392
575
  "DecodedMessage": {
393
576
  "shape_name": "decodedMessageType",
394
577
  "type": "string",
395
- "documentation": "\n <p>An XML document that contains the decoded message.</p>\n"
578
+ "documentation": "\n\t\t<p>An XML document that contains the decoded message. For more information, see\n\t\t\t\t<code>DecodeAuthorizationMessage</code>. </p>\n\t"
396
579
  }
397
580
  },
398
- "documentation": null
581
+ "documentation": "\n\t\t<p>A document that contains additional information about the authorization status of a request\n\t\t\tfrom an encoded message that is returned in response to an AWS request. </p>\n\t"
399
582
  },
400
583
  "errors": [
401
584
  {
@@ -405,13 +588,13 @@
405
588
  "message": {
406
589
  "shape_name": "invalidAuthorizationMessage",
407
590
  "type": "string",
408
- "documentation": "\n <p>The error message associated with the error.</p>\n"
591
+ "documentation": "\n\t\t<p>The error message associated with the error.</p>\n\t"
409
592
  }
410
593
  },
411
- "documentation": "\n\t<p>The error returned if the message passed to <code>DecodeAuthorizationMessage</code> was invalid. This can happen if the token contains invalid characters, such as linebreaks.\n\t</p>\n"
594
+ "documentation": "\n\t\t<p>The error returned if the message passed to <code>DecodeAuthorizationMessage</code> was\n\t\t\tinvalid. This can happen if the token contains invalid characters, such as linebreaks. </p>\n\t"
412
595
  }
413
596
  ],
414
- "documentation": "\n <p>\n Decodes additional information about the authorization status of a request from an encoded message returned in response to an AWS request.\n </p>\n \n <p>\n For example, if a user is not authorized to perform an action that he or she has requested, the request returns a \n <code>Client.UnauthorizedOperation</code> response (an HTTP 403 response). Some AWS actions additionally return an encoded \n message that can provide details about this authorization failure. \n </p>\n \n <note>\n Only certain AWS actions return an encoded authorization message. The documentation for an individual action indicates \n whether that action returns an encoded message in addition to returning an HTTP code.\n </note>\n\n <p>The message is encoded because the details of the authorization status can constitute privileged \n information that the user who requested the action should not see. To decode an authorization status message, \n a user must be granted permissions via an IAM policy to request the \n <code>DecodeAuthorizationMessage</code> (<code>sts:DecodeAuthorizationMessage</code>) action.\n </p>\n\t\n\t<p>\n\t\tThe decoded message includes the following type of information:\n\t</p>\n\t\n\t<ul>\n\t\t<li>Whether the request was denied due to an explicit deny or due to the absence of an explicit allow. For more information, see \n\t\t <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/AccessPolicyLanguage_EvaluationLogic.html#policy-eval-denyallow\">Determining Whether a \n\t\t Request is Allowed or Denied</a> in <i>Using IAM</i>. \n </li>\n\t\t<li>The principal who made the request.</li>\n\t\t<li>The requested action.</li>\n\t\t<li>The requested resource.</li>\n\t\t<li>The values of condition keys in the context of the user's request.</li>\n\t</ul>\n\t\n<examples>\n<queryrequest>\nPOST https://sts.amazonaws.com / HTTP/1.1\nContent-Type: application/x-www-form-urlencoded; charset=utf-8\nHost: sts.amazonaws.com\nContent-Length: 1148\nExpect: 100-continue\nConnection: Keep-Alive\nAction=DecodeAuthorizationMessage\n&EncodedMessage=<encoded-message>\n&Version=2011-06-15\n&AUTHPARAMS</queryrequest>\n \n<queryresponse><?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<DecodeAuthorizationMessageResponse xmlns=\"http://sts.amazonaws.com/doc/2011-06-15/\"> \n <requestId>6624a9ca-cd25-4f50-b2a5-7ba65bf07453</requestId>\n <DecodedMessage>\n {\n \"allowed\": \"false\",\n \"explicitDeny\": \"false\",\n \"matchedStatements\": \"\",\n \"failures\": \"\",\n \"context\": {\n \"principal\": {\n \"id\": \"AIDACKCEVSQ6C2EXAMPLE\",\n \"name\": \"Bob\",\n \"arn\": \"arn:aws:iam::123456789012:user/Bob\"\n },\n \"action\": \"ec2:StopInstances\",\n \"resource\": \"arn:aws:ec2:us-east-1:123456789012:instance/i-dd01c9bd\",\n \"conditions\": [\n {\n \"item\": {\n \"key\": \"ec2:Tenancy\",\n \"values\": [\"default\"]\n },\n {\n \"item\": {\n \"key\": \"ec2:ResourceTag/elasticbeanstalk:environment-name\",\n \"values\": [\"Default-Environment\"]\n }\n },\n (Additional items ...)\n ]\n }\n }\n </DecodedMessage>\n</DecodeAuthorizationMessageResponse></queryresponse>\n</examples>\n"
597
+ "documentation": "\n\t\t<p> Decodes additional information about the authorization status of a request from an encoded\n\t\t\tmessage returned in response to an AWS request. </p>\n\n\t\t<p> For example, if a user is not authorized to perform an action that he or she has requested,\n\t\t\tthe request returns a <code>Client.UnauthorizedOperation</code> response (an HTTP 403\n\t\t\tresponse). Some AWS actions additionally return an encoded message that can provide details\n\t\t\tabout this authorization failure. </p>\n\n\t\t<note> Only certain AWS actions return an encoded authorization message. The documentation for\n\t\t\tan individual action indicates whether that action returns an encoded message in addition to\n\t\t\treturning an HTTP code. </note>\n\n\t\t<p>The message is encoded because the details of the authorization status can constitute\n\t\t\tprivileged information that the user who requested the action should not see. To decode an\n\t\t\tauthorization status message, a user must be granted permissions via an AWS IAM policy to\n\t\t\trequest the <code>DecodeAuthorizationMessage</code>\n\t\t\t\t(<code>sts:DecodeAuthorizationMessage</code>) action. </p>\n\n\t\t<p> The decoded message includes the following type of information: </p>\n\n\t\t<ul>\n\t\t\t<li>Whether the request was denied due to an explicit deny or due to the absence of an\n\t\t\t\texplicit allow. For more information, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/AccessPolicyLanguage_EvaluationLogic.html#policy-eval-denyallow\">Determining Whether a Request is Allowed or Denied</a> in <i>Using AWS IAM</i>. </li>\n\t\t\t<li>The principal who made the request.</li>\n\t\t\t<li>The requested action.</li>\n\t\t\t<li>The requested resource.</li>\n\t\t\t<li>The values of condition keys in the context of the user's request.</li>\n\t\t</ul>\n\n\t\t<examples>\n\t\t\t<queryrequest>\nPOST https://sts.amazonaws.com / HTTP/1.1\nContent-Type: application/x-www-form-urlencoded; charset=utf-8\nHost: sts.amazonaws.com\nContent-Length: 1148\nExpect: 100-continue\nConnection: Keep-Alive\nAction=DecodeAuthorizationMessage\n&EncodedMessage=<encoded-message>\n&Version=2011-06-15\n&AUTHPARAMS</queryrequest>\n\n\t\t\t<queryresponse><?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<DecodeAuthorizationMessageResponse xmlns=\"http://sts.amazonaws.com/doc/2011-06-15/\"> \n <requestId>6624a9ca-cd25-4f50-b2a5-7ba65bf07453</requestId>\n <DecodedMessage>\n {\n \"allowed\": \"false\",\n \"explicitDeny\": \"false\",\n \"matchedStatements\": \"\",\n \"failures\": \"\",\n \"context\": {\n \"principal\": {\n \"id\": \"AIDACKCEVSQ6C2EXAMPLE\",\n \"name\": \"Bob\",\n \"arn\": \"arn:aws:iam::123456789012:user/Bob\"\n },\n \"action\": \"ec2:StopInstances\",\n \"resource\": \"arn:aws:ec2:us-east-1:123456789012:instance/i-dd01c9bd\",\n \"conditions\": [\n {\n \"item\": {\n \"key\": \"ec2:Tenancy\",\n \"values\": [\"default\"]\n },\n {\n \"item\": {\n \"key\": \"ec2:ResourceTag/elasticbeanstalk:environment-name\",\n \"values\": [\"Default-Environment\"]\n }\n },\n (Additional items ...)\n ]\n }\n }\n </DecodedMessage>\n</DecodeAuthorizationMessageResponse></queryresponse>\n\t\t</examples>\n\t"
415
598
  },
416
599
  "GetFederationToken": {
417
600
  "name": "GetFederationToken",
@@ -425,7 +608,7 @@
425
608
  "min_length": 2,
426
609
  "max_length": 32,
427
610
  "pattern": "[\\w+=,.@-]*",
428
- "documentation": "\n <p>\n The name of the federated user. The name is used as an identifier for the temporary security credentials \n (such as <code>Bob</code>). For example, you can reference the federated user name in a resource-based policy, \n such as in an Amazon S3 bucket policy.\n </p>\n ",
611
+ "documentation": "\n\t\t<p> The name of the federated user. The name is used as an identifier for the temporary security\n\t\t\tcredentials (such as <code>Bob</code>). For example, you can reference the federated user name\n\t\t\tin a resource-based policy, such as in an Amazon S3 bucket policy. </p>\n\t",
429
612
  "required": true
430
613
  },
431
614
  "Policy": {
@@ -434,14 +617,14 @@
434
617
  "pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u00FF]+",
435
618
  "min_length": 1,
436
619
  "max_length": 2048,
437
- "documentation": "\n <p>A policy that specifies the permissions that are granted to the federated user. By default, federated users have no permissions; they do not inherit any from the IAM user. When you specify a policy, the federated user's permissions are intersection of the specified policy and the IAM user's policy. If you don't specify a policy, federated users can only access AWS resources that explicitly allow those federated users in a resource policy, such as in an Amazon S3 bucket policy.</p>\n "
620
+ "documentation": "\n\t\t<p>An AWS IAM policy in JSON format.</p>\n\t\t\n\t\t<p>By default, federated users have no permissions; they do not inherit any from the IAM user. When you\n\t\t\tspecify a policy, the federated user's permissions are based on the specified policy and the IAM user's policy. \n\t\t\tIf you don't specify a policy, federated users can only access AWS resources that explicitly allow those federated \n\t\t\tusers in a resource policy, such as in an Amazon S3 bucket policy.\n\t\t</p>\n\t"
438
621
  },
439
622
  "DurationSeconds": {
440
623
  "shape_name": "durationSecondsType",
441
624
  "type": "integer",
442
625
  "min_length": 900,
443
626
  "max_length": 129600,
444
- "documentation": "\n <p>\n The duration, in seconds, that the session should last. Acceptable durations for federation sessions\n range from 900 seconds (15 minutes) to 129600 seconds (36 hours), with 43200 seconds (12 hours) as the default.\n Sessions for AWS account owners are restricted to a maximum of 3600 seconds (one hour). If the duration is longer than one hour, the session for AWS account owners defaults to one hour.\n </p>\n "
627
+ "documentation": "\n\t\t<p> The duration, in seconds, that the session should last. Acceptable durations for federation\n\t\t\tsessions range from 900 seconds (15 minutes) to 129600 seconds (36 hours), with 43200 seconds\n\t\t\t(12 hours) as the default. Sessions for AWS account owners are restricted to a maximum of 3600\n\t\t\tseconds (one hour). If the duration is longer than one hour, the session for AWS account\n\t\t\towners defaults to one hour. </p>\n\t"
445
628
  }
446
629
  },
447
630
  "documentation": null
@@ -460,29 +643,29 @@
460
643
  "min_length": 16,
461
644
  "max_length": 32,
462
645
  "pattern": "[\\w]*",
463
- "documentation": "\n <p>The access key ID that identifies the temporary security credentials.</p>\n ",
646
+ "documentation": "\n\t\t<p>The access key ID that identifies the temporary security credentials.</p>\n\t",
464
647
  "required": true
465
648
  },
466
649
  "SecretAccessKey": {
467
650
  "shape_name": "accessKeySecretType",
468
651
  "type": "string",
469
- "documentation": "\n <p>The secret access key that can be used to sign requests.</p>\n ",
652
+ "documentation": "\n\t\t<p>The secret access key that can be used to sign requests.</p>\n\t",
470
653
  "required": true
471
654
  },
472
655
  "SessionToken": {
473
656
  "shape_name": "tokenType",
474
657
  "type": "string",
475
- "documentation": "\n <p>The token that users must pass to the service API to use the temporary credentials.</p>\n ",
658
+ "documentation": "\n\t\t<p>The token that users must pass to the service API to use the temporary credentials.</p>\n\t",
476
659
  "required": true
477
660
  },
478
661
  "Expiration": {
479
662
  "shape_name": "dateType",
480
663
  "type": "timestamp",
481
- "documentation": "\n <p>The date on which the current credentials expire.</p>\n ",
664
+ "documentation": "\n\t\t<p>The date on which the current credentials expire.</p>\n\t",
482
665
  "required": true
483
666
  }
484
667
  },
485
- "documentation": "\n <p>Credentials for the service API authentication. </p>\n "
668
+ "documentation": "\n\t\t<p>Credentials for the service API authentication. </p>\n\t"
486
669
  },
487
670
  "FederatedUser": {
488
671
  "shape_name": "FederatedUser",
@@ -494,7 +677,7 @@
494
677
  "min_length": 2,
495
678
  "max_length": 96,
496
679
  "pattern": "[\\w+=,.@\\:-]*",
497
- "documentation": "\n <p>The string that identifies the federated user associated with the credentials, similar to the \n unique ID of an IAM user.</p>\n ",
680
+ "documentation": "\n\t\t<p>The string that identifies the federated user associated with the credentials, similar to the\n\t\t\tunique ID of an IAM user.</p>\n\t",
498
681
  "required": true
499
682
  },
500
683
  "Arn": {
@@ -502,20 +685,20 @@
502
685
  "type": "string",
503
686
  "min_length": 20,
504
687
  "max_length": 2048,
505
- "documentation": "\n <p>\n The ARN that specifies the federated user that is associated with the credentials. For more information \n about ARNs and how to use them in policies, see \n <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html\" target=\"_blank\">Identifiers for \n IAM Entities</a> in <i>Using IAM</i>.\n </p>\n ",
688
+ "documentation": "\n\t\t<p> The ARN that specifies the federated user that is associated with the credentials. For more\n\t\t\tinformation about ARNs and how to use them in policies, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html\" target=\"_blank\">Identifiers for IAM Entities</a> in <i>Using IAM</i>. </p>\n\t",
506
689
  "required": true
507
690
  }
508
691
  },
509
- "documentation": "\n <p>\n Identifiers for the federated user associated with the credentials (such as <code>arn:aws:sts::123456789012:federated-user/Bob</code> or <code>123456789012:Bob</code>). You can use the federated user's ARN in\n your resource policies like in an Amazon S3 bucket policy.\n </p>\n "
692
+ "documentation": "\n\t\t<p> Identifiers for the federated user associated with the credentials (such as\n\t\t\t\t<code>arn:aws:sts::123456789012:federated-user/Bob</code> or <code>123456789012:Bob</code>).\n\t\t\tYou can use the federated user's ARN in your resource policies like in an Amazon S3 bucket\n\t\t\tpolicy. </p>\n\t"
510
693
  },
511
694
  "PackedPolicySize": {
512
695
  "shape_name": "nonNegativeIntegerType",
513
696
  "type": "integer",
514
697
  "min_length": 0,
515
- "documentation": "\n <p>\n A percentage value indicating the size of the policy in packed form. The service rejects policies for which the packed size is greater than\n 100 percent of the allowed value.\n </p>\n "
698
+ "documentation": "\n\t\t<p> A percentage value indicating the size of the policy in packed form. The service rejects\n\t\t\tpolicies for which the packed size is greater than 100 percent of the allowed value. </p>\n\t"
516
699
  }
517
700
  },
518
- "documentation": "\n <p>\n Contains the result of a successful invocation of the <a>GetFederationToken</a> action.\n </p>\n "
701
+ "documentation": "\n\t\t<p> Contains the result of a successful call to the <a>GetFederationToken</a> action, including\n\t\t\ttemporary AWS credentials that can be used to make AWS requests. </p>\n\t"
519
702
  },
520
703
  "errors": [
521
704
  {
@@ -528,7 +711,7 @@
528
711
  "documentation": null
529
712
  }
530
713
  },
531
- "documentation": "\n <p>The request was rejected because the policy document was malformed. The error message describes the specific error.</p>\n"
714
+ "documentation": "\n\t\t<p>The request was rejected because the policy document was malformed. The error message\n\t\t\tdescribes the specific error.</p>\n\t"
532
715
  },
533
716
  {
534
717
  "shape_name": "PackedPolicyTooLargeException",
@@ -540,10 +723,10 @@
540
723
  "documentation": null
541
724
  }
542
725
  },
543
- "documentation": "\n <p>The request was rejected because the policy document was too large. The error message describes how big the policy document\n is, in packed form, as a percentage of what the API allows.</p>\n"
726
+ "documentation": "\n\t\t<p>The request was rejected because the policy document was too large. The error message\n\t\t\tdescribes how big the policy document is, in packed form, as a percentage of what the API\n\t\t\tallows.</p>\n\t"
544
727
  }
545
728
  ],
546
- "documentation": "\n <p>\n Returns a set of temporary security credentials (consisting of an access key ID, a secret access key, and a security token) for a federated user. A typical use is in a proxy application that is getting temporary security credentials on behalf of distributed applications inside a corporate network. Because you must call the <code>GetFederationToken</code> action using the long-term security credentials of an IAM user, this call is appropriate in contexts where those credentials can be safely stored, usually in a server-based application.\n </p>\n\n <p>\n <b>Note:</b>\n Do not use this call in mobile applications or client-based web applications that directly get temporary security credentials. For those types of applications, use <code>AssumeRoleWithWebIdentity</code>.\n </p>\n\n <p>\n The <code>GetFederationToken</code> action must be called by using the long-term\n AWS security credentials of the AWS account or an IAM user. Credentials that are created by IAM users are valid for the specified duration, between 900 seconds (15 minutes) and 129600 seconds (36 hours); credentials that are created by using account credentials have a maximum duration of 3600 seconds (1 hour).\n </p>\n\n <p>\n The permissions that are granted to the federated user are the intersection of the policy that is passed with the <code>GetFederationToken</code> request and policies that are associated with of the entity making the <code>GetFederationToken</code> call.\n </p>\n <p>\n For more information about how permissions work, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/TokenPermissions.html\" target=\"_blank\">Controlling Permissions in Temporary Credentials</a>\n in <i>Using Temporary Security Credentials</i>. For information about using <code>GetFederationToken</code> to\n create temporary security credentials,\n see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/CreatingFedTokens.html\" target=\"_blank\">Creating Temporary Credentials to Enable Access for Federated Users</a>\n in <i>Using Temporary Security Credentials</i>.\n </p>\n\n <examples>\n <queryrequest>\n https://sts.amazonaws.com/\n?Version=2011-06-15\n&Action=GetFederationToken\n&Name=Bob\n&Policy=%7B%22Version%22%3A%222012-10-17%22%2C%22Statement%22%3A%5B%7B%22Sid%22%3A%22Stmt1%22%2C%22Effect%22%\n 3A%22Allow%22%2C%22Action%22%3A%22s3%3A*%22%2C%22Resource%22%3A%22*%22%7D\n %5D%7D\n&DurationSeconds=3600\n&AUTHPARAMS\n </queryrequest>\n\n <queryresponse>\n <GetFederationTokenResponse xmlns=\"https://sts.amazonaws.com/doc/\n2011-06-15/\">\n <GetFederationTokenResult>\n <Credentials>\n <SessionToken>\n AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQW\n LWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGd\n QrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU\n 9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz\n +scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==\n </SessionToken>\n <SecretAccessKey>\n wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY\n </SecretAccessKey>\n <Expiration>2011-07-15T23:28:33.359Z</Expiration>\n <AccessKeyId>AKIAIOSFODNN7EXAMPLE</AccessKeyId>\n </Credentials>\n <FederatedUser>\n <Arn>arn:aws:sts::123456789012:federated-user/Bob</Arn>\n <FederatedUserId>123456789012:Bob</FederatedUserId>\n </FederatedUser>\n <PackedPolicySize>6</PackedPolicySize>\n </GetFederationTokenResult>\n <ResponseMetadata>\n <RequestId>c6104cbe-af31-11e0-8154-cbc7ccf896c7</RequestId>\n </ResponseMetadata>\n</GetFederationTokenResponse>\n </queryresponse>\n\n </examples>\n "
729
+ "documentation": "\n\t\t<p> Returns a set of temporary security credentials (consisting of an access key ID, a secret\n\t\t\taccess key, and a security token) for a federated user. A typical use is in a proxy\n\t\t\tapplication that is getting temporary security credentials on behalf of distributed\n\t\t\tapplications inside a corporate network. Because you must call the\n\t\t\t\t<code>GetFederationToken</code> action using the long-term security credentials of an IAM\n\t\t\tuser, this call is appropriate in contexts where those credentials can be safely stored,\n\t\t\tusually in a server-based application. </p>\n\n\t\t<p>\n\t\t\t<b>Note:</b> Do not use this call in mobile applications or client-based web applications that\n\t\t\tdirectly get temporary security credentials. For those types of applications, use\n\t\t\t\t<code>AssumeRoleWithWebIdentity</code>. </p>\n\n\t\t<p>The <code>GetFederationToken</code> action must be called by using the long-term AWS\n\t\t\tsecurity credentials of the AWS account or an IAM user. Credentials that are created by IAM\n\t\t\tusers are valid for the specified duration, between 900 seconds (15 minutes) and 129600\n\t\t\tseconds (36 hours); credentials that are created by using account credentials have a maximum\n\t\t\tduration of 3600 seconds (1 hour). </p>\n\t\t\n\t\t<p>Optionally, you can pass an AWS IAM access policy to this operation. The temporary security credentials that \n\t\t\tare returned by the operation have the permissions that are associated with the entity that is making \n\t\t\tthe <code>GetFederationToken</code> call, except for any permissions explicitly denied by the policy you pass.\n\t\t\tThis gives you a way to further restrict the permissions for the resulting temporary security credentials. These policies and any \n\t\t\tapplicable resource-based policies are evaluated when calls to AWS are made using the temporary security credentials. \n\t\t</p>\n\t\t\n\t\t<p> For more information about how permissions work, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/TokenPermissions.html\" target=\"_blank\">Controlling Permissions in Temporary Credentials</a> in <i>Using Temporary Security\n\t\t\t\tCredentials</i>. For information about using <code>GetFederationToken</code> to create\n\t\t\ttemporary security credentials, see <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/CreatingFedTokens.html\" target=\"_blank\">Creating Temporary Credentials to Enable Access for Federated Users</a> in\n\t\t\t\t<i>Using Temporary Security Credentials</i>. </p>\n\n\t\t<examples>\n\t\t\t<queryrequest>\n\t\t\t\thttps://sts.amazonaws.com/\n?Version=2011-06-15\n&Action=GetFederationToken\n&Name=Bob\n&Policy=%7B%22Version%22%3A%222012-10-17%22%2C%22Statement%22%3A%5B%7B%22Sid%22%3A%22Stmt1%22%2C%22Effect%22%\n 3A%22Allow%22%2C%22Action%22%3A%22s3%3A*%22%2C%22Resource%22%3A%22*%22%7D\n %5D%7D\n&DurationSeconds=3600\n&AUTHPARAMS\n\t\t\t</queryrequest>\n\n\t\t\t<queryresponse>\n\t\t\t\t<GetFederationTokenResponse xmlns=\"https://sts.amazonaws.com/doc/\n2011-06-15/\">\n <GetFederationTokenResult>\n <Credentials>\n <SessionToken>\n AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQW\n LWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGd\n QrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU\n 9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz\n +scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==\n </SessionToken>\n <SecretAccessKey>\n wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY\n </SecretAccessKey>\n <Expiration>2011-07-15T23:28:33.359Z</Expiration>\n <AccessKeyId>AKIAIOSFODNN7EXAMPLE</AccessKeyId>\n </Credentials>\n <FederatedUser>\n <Arn>arn:aws:sts::123456789012:federated-user/Bob</Arn>\n <FederatedUserId>123456789012:Bob</FederatedUserId>\n </FederatedUser>\n <PackedPolicySize>6</PackedPolicySize>\n </GetFederationTokenResult>\n <ResponseMetadata>\n <RequestId>c6104cbe-af31-11e0-8154-cbc7ccf896c7</RequestId>\n </ResponseMetadata>\n</GetFederationTokenResponse>\n\t\t\t</queryresponse>\n\n\t\t</examples>\n\t"
547
730
  },
548
731
  "GetSessionToken": {
549
732
  "name": "GetSessionToken",
@@ -556,7 +739,7 @@
556
739
  "type": "integer",
557
740
  "min_length": 900,
558
741
  "max_length": 129600,
559
- "documentation": "\n <p>\n The duration, in seconds, that the credentials should remain valid. Acceptable durations for\n IAM user sessions range from 900 seconds (15 minutes) to 129600 seconds (36 hours), with 43200 seconds (12 hours) as the\n default. Sessions for AWS account owners are restricted to a maximum of 3600 seconds (one hour). If the duration is longer than one hour, the session for AWS account owners defaults to one hour.\n </p>\n "
742
+ "documentation": "\n\t\t<p> The duration, in seconds, that the credentials should remain valid. Acceptable durations for\n\t\t\tIAM user sessions range from 900 seconds (15 minutes) to 129600 seconds (36 hours), with 43200\n\t\t\tseconds (12 hours) as the default. Sessions for AWS account owners are restricted to a maximum\n\t\t\tof 3600 seconds (one hour). If the duration is longer than one hour, the session for AWS\n\t\t\taccount owners defaults to one hour. </p>\n\t"
560
743
  },
561
744
  "SerialNumber": {
562
745
  "shape_name": "serialNumberType",
@@ -564,7 +747,7 @@
564
747
  "min_length": 9,
565
748
  "max_length": 256,
566
749
  "pattern": "[\\w+=/:,.@-]*",
567
- "documentation": "\n <p>\n The identification number of the MFA device that is associated with the IAM user who is making the <code>GetSessionToken</code> call. Specify this value if the IAM user has a policy that requires MFA authentication. The value is either the serial number for a hardware device (such as <code>GAHT12345678</code>) or an Amazon Resource Name (ARN) for a virtual device (such as <code>arn:aws:iam::123456789012:mfa/user</code>). You can find the device for an IAM user by going to the AWS Management Console and viewing the user's security credentials.\n </p>\n "
750
+ "documentation": "\n\t\t<p> The identification number of the MFA device that is associated with the IAM user who is\n\t\t\tmaking the <code>GetSessionToken</code> call. Specify this value if the IAM user has a policy\n\t\t\tthat requires MFA authentication. The value is either the serial number for a hardware device\n\t\t\t(such as <code>GAHT12345678</code>) or an Amazon Resource Name (ARN) for a virtual device\n\t\t\t(such as <code>arn:aws:iam::123456789012:mfa/user</code>). You can find the device for an IAM\n\t\t\tuser by going to the AWS Management Console and viewing the user's security credentials. </p>\n\t"
568
751
  },
569
752
  "TokenCode": {
570
753
  "shape_name": "tokenCodeType",
@@ -572,7 +755,7 @@
572
755
  "min_length": 6,
573
756
  "max_length": 6,
574
757
  "pattern": "[\\d]*",
575
- "documentation": "\n <p>The value provided by the MFA device, if MFA is required. If any policy requires the IAM user to submit \n an MFA code, specify this value. If MFA authentication is required, and the user does not provide a code \n when requesting a set of temporary security credentials, the user will receive an \"access denied\" response \n when requesting resources that require MFA authentication.</p>\n "
758
+ "documentation": "\n\t\t<p>The value provided by the MFA device, if MFA is required. If any policy requires the IAM user\n\t\t\tto submit an MFA code, specify this value. If MFA authentication is required, and the user\n\t\t\tdoes not provide a code when requesting a set of temporary security credentials, the user will\n\t\t\treceive an \"access denied\" response when requesting resources that require MFA\n\t\t\tauthentication.</p>\n\t"
576
759
  }
577
760
  },
578
761
  "documentation": null
@@ -591,37 +774,37 @@
591
774
  "min_length": 16,
592
775
  "max_length": 32,
593
776
  "pattern": "[\\w]*",
594
- "documentation": "\n <p>The access key ID that identifies the temporary security credentials.</p>\n ",
777
+ "documentation": "\n\t\t<p>The access key ID that identifies the temporary security credentials.</p>\n\t",
595
778
  "required": true
596
779
  },
597
780
  "SecretAccessKey": {
598
781
  "shape_name": "accessKeySecretType",
599
782
  "type": "string",
600
- "documentation": "\n <p>The secret access key that can be used to sign requests.</p>\n ",
783
+ "documentation": "\n\t\t<p>The secret access key that can be used to sign requests.</p>\n\t",
601
784
  "required": true
602
785
  },
603
786
  "SessionToken": {
604
787
  "shape_name": "tokenType",
605
788
  "type": "string",
606
- "documentation": "\n <p>The token that users must pass to the service API to use the temporary credentials.</p>\n ",
789
+ "documentation": "\n\t\t<p>The token that users must pass to the service API to use the temporary credentials.</p>\n\t",
607
790
  "required": true
608
791
  },
609
792
  "Expiration": {
610
793
  "shape_name": "dateType",
611
794
  "type": "timestamp",
612
- "documentation": "\n <p>The date on which the current credentials expire.</p>\n ",
795
+ "documentation": "\n\t\t<p>The date on which the current credentials expire.</p>\n\t",
613
796
  "required": true
614
797
  }
615
798
  },
616
- "documentation": "\n <p>The session credentials for API authentication. </p>\n "
799
+ "documentation": "\n\t\t<p>The session credentials for API authentication. </p>\n\t"
617
800
  }
618
801
  },
619
- "documentation": "\n <p>\n Contains the result of a successful invocation of the <a>GetSessionToken</a> action.\n </p>\n "
802
+ "documentation": "\n\t\t<p> Contains the result of a successful call to the <a>GetSessionToken</a> action, including\n\t\t\ttemporary AWS credentials that can be used to make AWS requests. </p>\n\t"
620
803
  },
621
804
  "errors": [
622
805
 
623
806
  ],
624
- "documentation": "\n <p>\n Returns a set of temporary credentials for an AWS account or IAM user. The credentials consist of an access key ID, a secret access key, and a security token. Typically, you use <code>GetSessionToken</code> if you want use MFA to protect programmatic calls to specific AWS APIs like Amazon EC2 <code>StopInstances</code>. MFA-enabled IAM users would need to call <code>GetSessionToken</code> and submit an MFA code that is associated with their MFA device. Using the temporary security credentials that are returned from the call, IAM users can then make programmatic calls to APIs that require MFA authentication.\n </p>\n\n <p>\n The <code>GetSessionToken</code> action must be called by using the long-term\n AWS security credentials of the AWS account or an IAM user. Credentials that are created by IAM users are valid for the duration that you specify, between 900 seconds (15 minutes) and 129600 seconds (36 hours); credentials that are created by using account credentials have a maximum duration of 3600 seconds (1 hour).\n </p>\n\n <p>\n The permissions that are granted to the federated user are the intersection of the policy that is passed with the <code>GetSessionToken</code> request and policies that are associated with of the entity making the <code>GetSessionToken</code> call.\n </p>\n\n <p>\n For more information about using <code>GetSessionToken</code> to create temporary credentials, go to <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/CreatingSessionTokens.html\" target=\"_blank\">\n Creating Temporary Credentials to Enable Access\n for IAM Users\n </a> in <i>Using IAM</i>.\n </p>\n\n\n <examples>\n <queryrequest>\n https://sts.amazonaws.com/\n?Version=2011-06-15\n&Action=GetSessionToken\n&DurationSeconds=3600\n&SerialNumber=YourMFADeviceSerialNumber\n&TokenCode=123456\n&AUTHPARAMS\n </queryrequest>\n\n <queryresponse>\n <GetSessionTokenResponse xmlns=\"https://sts.amazonaws.com/doc/2011-06-15/\">\n <GetSessionTokenResult>\n <Credentials>\n <SessionToken>\n AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/L\n To6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3z\n rkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtp\n Z3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE\n </SessionToken>\n <SecretAccessKey>\n wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY\n </SecretAccessKey>\n <Expiration>2011-07-11T19:55:29.611Z</Expiration>\n <AccessKeyId>AKIAIOSFODNN7EXAMPLE</AccessKeyId>\n </Credentials>\n </GetSessionTokenResult>\n <ResponseMetadata>\n <RequestId>58c5dbae-abef-11e0-8cfe-09039844ac7d</RequestId>\n </ResponseMetadata>\n</GetSessionTokenResponse>\n </queryresponse>\n </examples>\n "
807
+ "documentation": "\n\t\t<p> Returns a set of temporary credentials for an AWS account or IAM user. The credentials\n\t\t\tconsist of an access key ID, a secret access key, and a security token. Typically, you use\n\t\t\t\t<code>GetSessionToken</code> if you want use MFA to protect programmatic calls to specific\n\t\t\tAWS APIs like Amazon EC2 <code>StopInstances</code>. MFA-enabled IAM users would need to call\n\t\t\t\t<code>GetSessionToken</code> and submit an MFA code that is associated with their MFA\n\t\t\tdevice. Using the temporary security credentials that are returned from the call, IAM users\n\t\t\tcan then make programmatic calls to APIs that require MFA authentication. </p>\n\n\t\t<p> The <code>GetSessionToken</code> action must be called by using the long-term AWS security\n\t\t\tcredentials of the AWS account or an IAM user. Credentials that are created by IAM users are\n\t\t\tvalid for the duration that you specify, between 900 seconds (15 minutes) and 129600 seconds\n\t\t\t(36 hours); credentials that are created by using account credentials have a maximum duration\n\t\t\tof 3600 seconds (1 hour). </p>\n\t\t\n\t\t<p>The permissions associated with the temporary security credentials returned by <code>GetSessionToken</code>\n\t\t\tare based on the permissions associated with account or IAM user whose credentials are used to \n\t\t\tcall the action. If <code>GetSessionToken</code> is called using root account credentials, the\n\t\t\ttemporary credentials have root account permissions. Similarly, if <code>GetSessionToken</code>\n\t\t\tis called using the credentials of an IAM user, the temporary credentials have the same \n\t\t\tpermissions as the IAM user.\n\t\t</p>\n\t\t\n\t\t<p>For more information about using <code>GetSessionToken</code> to create temporary\n\t\t\tcredentials, go to <a href=\"http://docs.aws.amazon.com/IAM/latest/UserGuide/CreatingSessionTokens.html\" target=\"_blank\"> Creating Temporary Credentials to Enable Access for IAM Users </a> in\n\t\t\t\t<i>Using IAM</i>. \n\t\t</p>\n\n\t\t<examples>\n\t\t\t<queryrequest>\n\t\t\t\thttps://sts.amazonaws.com/\n?Version=2011-06-15\n&Action=GetSessionToken\n&DurationSeconds=3600\n&SerialNumber=YourMFADeviceSerialNumber\n&TokenCode=123456\n&AUTHPARAMS\n\t\t\t</queryrequest>\n\n\t\t\t<queryresponse>\n\t\t\t\t<GetSessionTokenResponse xmlns=\"https://sts.amazonaws.com/doc/2011-06-15/\">\n <GetSessionTokenResult>\n <Credentials>\n <SessionToken>\n AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/L\n To6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3z\n rkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtp\n Z3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE\n </SessionToken>\n <SecretAccessKey>\n wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY\n </SecretAccessKey>\n <Expiration>2011-07-11T19:55:29.611Z</Expiration>\n <AccessKeyId>AKIAIOSFODNN7EXAMPLE</AccessKeyId>\n </Credentials>\n </GetSessionTokenResult>\n <ResponseMetadata>\n <RequestId>58c5dbae-abef-11e0-8cfe-09039844ac7d</RequestId>\n </ResponseMetadata>\n</GetSessionTokenResponse>\n\t\t\t</queryresponse>\n\t\t</examples>\n\t"
625
808
  }
626
809
  }
627
810
  }