aws-sdk 1.32.0 → 3.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (551) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +100 -0
  3. data/LICENSE.txt +199 -9
  4. data/VERSION +1 -0
  5. data/lib/aws-sdk.rb +2 -14
  6. metadata +22 -591
  7. data/.yardopts +0 -7
  8. data/README.md +0 -291
  9. data/bin/aws-rb +0 -169
  10. data/ca-bundle.crt +0 -3554
  11. data/endpoints.json +0 -1506
  12. data/lib/aws.rb +0 -14
  13. data/lib/aws/api_config/AutoScaling-2011-01-01.yml +0 -869
  14. data/lib/aws/api_config/CloudFormation-2010-05-15.yml +0 -358
  15. data/lib/aws/api_config/CloudFront-2013-05-12.yml +0 -2448
  16. data/lib/aws/api_config/CloudFront-2013-08-26.yml +0 -2599
  17. data/lib/aws/api_config/CloudFront-2013-09-27.yml +0 -2765
  18. data/lib/aws/api_config/CloudFront-2013-11-11.yml +0 -2886
  19. data/lib/aws/api_config/CloudSearch-2011-02-01.yml +0 -681
  20. data/lib/aws/api_config/CloudTrail-2013-11-01.yml +0 -159
  21. data/lib/aws/api_config/CloudWatch-2010-08-01.yml +0 -433
  22. data/lib/aws/api_config/DataPipeline-2012-10-29.yml +0 -422
  23. data/lib/aws/api_config/DirectConnect-2012-10-25.yml +0 -735
  24. data/lib/aws/api_config/DynamoDB-2011-12-05.yml +0 -1168
  25. data/lib/aws/api_config/DynamoDB-2012-08-10.yml +0 -2005
  26. data/lib/aws/api_config/EC2-2013-08-15.yml +0 -4708
  27. data/lib/aws/api_config/EC2-2013-10-01.yml +0 -4726
  28. data/lib/aws/api_config/EC2-2013-10-15.yml +0 -4726
  29. data/lib/aws/api_config/ELB-2012-06-01.yml +0 -632
  30. data/lib/aws/api_config/EMR-2009-03-31.yml +0 -953
  31. data/lib/aws/api_config/ElastiCache-2013-06-15.yml +0 -1188
  32. data/lib/aws/api_config/ElasticBeanstalk-2010-12-01.yml +0 -847
  33. data/lib/aws/api_config/ElasticTranscoder-2012-09-25.yml +0 -2285
  34. data/lib/aws/api_config/Glacier-2012-06-01.yml +0 -649
  35. data/lib/aws/api_config/IAM-2010-05-08.yml +0 -1297
  36. data/lib/aws/api_config/ImportExport-2010-06-01.yml +0 -109
  37. data/lib/aws/api_config/Kinesis-2013-12-02.yml +0 -201
  38. data/lib/aws/api_config/OpsWorks-2013-02-18.yml +0 -1825
  39. data/lib/aws/api_config/RDS-2013-05-15.yml +0 -2464
  40. data/lib/aws/api_config/RDS-2013-09-09.yml +0 -2641
  41. data/lib/aws/api_config/Redshift-2012-12-01.yml +0 -2137
  42. data/lib/aws/api_config/Route53-2012-12-12.yml +0 -547
  43. data/lib/aws/api_config/SNS-2010-03-31.yml +0 -433
  44. data/lib/aws/api_config/SQS-2012-11-05.yml +0 -319
  45. data/lib/aws/api_config/STS-2011-06-15.yml +0 -147
  46. data/lib/aws/api_config/SimpleDB-2009-04-15.yml +0 -306
  47. data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +0 -346
  48. data/lib/aws/api_config/SimpleWorkflow-2012-01-25.yml +0 -2388
  49. data/lib/aws/api_config/StorageGateway-2012-06-30.yml +0 -748
  50. data/lib/aws/api_config/StorageGateway-2013-06-30.yml +0 -1025
  51. data/lib/aws/api_config/Support-2013-04-15.yml +0 -426
  52. data/lib/aws/auto_scaling.rb +0 -163
  53. data/lib/aws/auto_scaling/activity.rb +0 -102
  54. data/lib/aws/auto_scaling/activity_collection.rb +0 -81
  55. data/lib/aws/auto_scaling/client.rb +0 -48
  56. data/lib/aws/auto_scaling/config.rb +0 -18
  57. data/lib/aws/auto_scaling/errors.rb +0 -22
  58. data/lib/aws/auto_scaling/group.rb +0 -421
  59. data/lib/aws/auto_scaling/group_collection.rb +0 -96
  60. data/lib/aws/auto_scaling/group_options.rb +0 -155
  61. data/lib/aws/auto_scaling/instance.rb +0 -192
  62. data/lib/aws/auto_scaling/instance_collection.rb +0 -63
  63. data/lib/aws/auto_scaling/launch_configuration.rb +0 -162
  64. data/lib/aws/auto_scaling/launch_configuration_collection.rb +0 -160
  65. data/lib/aws/auto_scaling/notification_configuration.rb +0 -89
  66. data/lib/aws/auto_scaling/notification_configuration_collection.rb +0 -183
  67. data/lib/aws/auto_scaling/scaling_policy.rb +0 -142
  68. data/lib/aws/auto_scaling/scaling_policy_collection.rb +0 -72
  69. data/lib/aws/auto_scaling/scaling_policy_options.rb +0 -65
  70. data/lib/aws/auto_scaling/scheduled_action.rb +0 -141
  71. data/lib/aws/auto_scaling/scheduled_action_collection.rb +0 -202
  72. data/lib/aws/auto_scaling/tag.rb +0 -59
  73. data/lib/aws/auto_scaling/tag_collection.rb +0 -114
  74. data/lib/aws/cloud_formation.rb +0 -272
  75. data/lib/aws/cloud_formation/client.rb +0 -48
  76. data/lib/aws/cloud_formation/config.rb +0 -18
  77. data/lib/aws/cloud_formation/errors.rb +0 -22
  78. data/lib/aws/cloud_formation/stack.rb +0 -266
  79. data/lib/aws/cloud_formation/stack_collection.rb +0 -232
  80. data/lib/aws/cloud_formation/stack_event.rb +0 -73
  81. data/lib/aws/cloud_formation/stack_event_collection.rb +0 -47
  82. data/lib/aws/cloud_formation/stack_options.rb +0 -72
  83. data/lib/aws/cloud_formation/stack_output.rb +0 -53
  84. data/lib/aws/cloud_formation/stack_resource.rb +0 -117
  85. data/lib/aws/cloud_formation/stack_resource_collection.rb +0 -83
  86. data/lib/aws/cloud_formation/stack_resource_summary_collection.rb +0 -64
  87. data/lib/aws/cloud_formation/stack_summary_collection.rb +0 -123
  88. data/lib/aws/cloud_front.rb +0 -72
  89. data/lib/aws/cloud_front/client.rb +0 -45
  90. data/lib/aws/cloud_front/config.rb +0 -18
  91. data/lib/aws/cloud_front/errors.rb +0 -22
  92. data/lib/aws/cloud_search.rb +0 -73
  93. data/lib/aws/cloud_search/client.rb +0 -36
  94. data/lib/aws/cloud_search/config.rb +0 -18
  95. data/lib/aws/cloud_search/errors.rb +0 -22
  96. data/lib/aws/cloud_trail.rb +0 -72
  97. data/lib/aws/cloud_trail/client.rb +0 -35
  98. data/lib/aws/cloud_trail/config.rb +0 -18
  99. data/lib/aws/cloud_trail/errors.rb +0 -22
  100. data/lib/aws/cloud_watch.rb +0 -118
  101. data/lib/aws/cloud_watch/alarm.rb +0 -290
  102. data/lib/aws/cloud_watch/alarm_collection.rb +0 -153
  103. data/lib/aws/cloud_watch/alarm_history_item.rb +0 -50
  104. data/lib/aws/cloud_watch/alarm_history_item_collection.rb +0 -84
  105. data/lib/aws/cloud_watch/client.rb +0 -40
  106. data/lib/aws/cloud_watch/config.rb +0 -18
  107. data/lib/aws/cloud_watch/errors.rb +0 -22
  108. data/lib/aws/cloud_watch/metric.rb +0 -135
  109. data/lib/aws/cloud_watch/metric_alarm_collection.rb +0 -160
  110. data/lib/aws/cloud_watch/metric_collection.rb +0 -129
  111. data/lib/aws/cloud_watch/metric_statistics.rb +0 -69
  112. data/lib/aws/core.rb +0 -701
  113. data/lib/aws/core/async_handle.rb +0 -90
  114. data/lib/aws/core/cacheable.rb +0 -77
  115. data/lib/aws/core/client.rb +0 -778
  116. data/lib/aws/core/collection.rb +0 -263
  117. data/lib/aws/core/collection/simple.rb +0 -82
  118. data/lib/aws/core/collection/with_limit_and_next_token.rb +0 -71
  119. data/lib/aws/core/collection/with_next_token.rb +0 -97
  120. data/lib/aws/core/configuration.rb +0 -541
  121. data/lib/aws/core/credential_providers.rb +0 -506
  122. data/lib/aws/core/data.rb +0 -247
  123. data/lib/aws/core/deprecations.rb +0 -84
  124. data/lib/aws/core/endpoints.rb +0 -37
  125. data/lib/aws/core/http/connection_pool.rb +0 -349
  126. data/lib/aws/core/http/curb_handler.rb +0 -148
  127. data/lib/aws/core/http/handler.rb +0 -89
  128. data/lib/aws/core/http/net_http_handler.rb +0 -147
  129. data/lib/aws/core/http/patch.rb +0 -102
  130. data/lib/aws/core/http/request.rb +0 -249
  131. data/lib/aws/core/http/response.rb +0 -81
  132. data/lib/aws/core/indifferent_hash.rb +0 -88
  133. data/lib/aws/core/inflection.rb +0 -56
  134. data/lib/aws/core/json_client.rb +0 -47
  135. data/lib/aws/core/json_parser.rb +0 -76
  136. data/lib/aws/core/json_request_builder.rb +0 -35
  137. data/lib/aws/core/json_response_parser.rb +0 -79
  138. data/lib/aws/core/lazy_error_classes.rb +0 -90
  139. data/lib/aws/core/log_formatter.rb +0 -428
  140. data/lib/aws/core/managed_file.rb +0 -32
  141. data/lib/aws/core/meta_utils.rb +0 -45
  142. data/lib/aws/core/model.rb +0 -57
  143. data/lib/aws/core/naming.rb +0 -30
  144. data/lib/aws/core/option_grammar.rb +0 -738
  145. data/lib/aws/core/options/json_serializer.rb +0 -82
  146. data/lib/aws/core/options/validator.rb +0 -155
  147. data/lib/aws/core/options/xml_serializer.rb +0 -118
  148. data/lib/aws/core/page_result.rb +0 -75
  149. data/lib/aws/core/policy.rb +0 -942
  150. data/lib/aws/core/query_client.rb +0 -41
  151. data/lib/aws/core/query_error_parser.rb +0 -24
  152. data/lib/aws/core/query_request_builder.rb +0 -47
  153. data/lib/aws/core/query_response_parser.rb +0 -35
  154. data/lib/aws/core/region.rb +0 -85
  155. data/lib/aws/core/region_collection.rb +0 -80
  156. data/lib/aws/core/resource.rb +0 -413
  157. data/lib/aws/core/resource_cache.rb +0 -40
  158. data/lib/aws/core/response.rb +0 -211
  159. data/lib/aws/core/response_cache.rb +0 -50
  160. data/lib/aws/core/rest_error_parser.rb +0 -24
  161. data/lib/aws/core/rest_json_client.rb +0 -40
  162. data/lib/aws/core/rest_request_builder.rb +0 -154
  163. data/lib/aws/core/rest_response_parser.rb +0 -66
  164. data/lib/aws/core/rest_xml_client.rb +0 -47
  165. data/lib/aws/core/service_interface.rb +0 -83
  166. data/lib/aws/core/signers/base.rb +0 -46
  167. data/lib/aws/core/signers/cloud_front.rb +0 -56
  168. data/lib/aws/core/signers/s3.rb +0 -159
  169. data/lib/aws/core/signers/version_2.rb +0 -72
  170. data/lib/aws/core/signers/version_3.rb +0 -86
  171. data/lib/aws/core/signers/version_3_https.rb +0 -61
  172. data/lib/aws/core/signers/version_4.rb +0 -228
  173. data/lib/aws/core/signers/version_4/chunk_signed_stream.rb +0 -191
  174. data/lib/aws/core/uri_escape.rb +0 -44
  175. data/lib/aws/core/xml/frame.rb +0 -244
  176. data/lib/aws/core/xml/frame_stack.rb +0 -85
  177. data/lib/aws/core/xml/grammar.rb +0 -306
  178. data/lib/aws/core/xml/parser.rb +0 -70
  179. data/lib/aws/core/xml/root_frame.rb +0 -65
  180. data/lib/aws/core/xml/sax_handlers/libxml.rb +0 -47
  181. data/lib/aws/core/xml/sax_handlers/nokogiri.rb +0 -56
  182. data/lib/aws/core/xml/sax_handlers/ox.rb +0 -41
  183. data/lib/aws/core/xml/sax_handlers/rexml.rb +0 -47
  184. data/lib/aws/core/xml/stub.rb +0 -123
  185. data/lib/aws/data_pipeline.rb +0 -72
  186. data/lib/aws/data_pipeline/client.rb +0 -36
  187. data/lib/aws/data_pipeline/config.rb +0 -18
  188. data/lib/aws/data_pipeline/errors.rb +0 -20
  189. data/lib/aws/direct_connect.rb +0 -73
  190. data/lib/aws/direct_connect/client.rb +0 -36
  191. data/lib/aws/direct_connect/config.rb +0 -18
  192. data/lib/aws/direct_connect/errors.rb +0 -22
  193. data/lib/aws/dynamo_db.rb +0 -214
  194. data/lib/aws/dynamo_db/attribute_collection.rb +0 -456
  195. data/lib/aws/dynamo_db/batch_get.rb +0 -213
  196. data/lib/aws/dynamo_db/batch_write.rb +0 -252
  197. data/lib/aws/dynamo_db/binary.rb +0 -35
  198. data/lib/aws/dynamo_db/client.rb +0 -129
  199. data/lib/aws/dynamo_db/client/v20111205.rb +0 -1266
  200. data/lib/aws/dynamo_db/client/v20120810.rb +0 -1409
  201. data/lib/aws/dynamo_db/client_v2.rb +0 -44
  202. data/lib/aws/dynamo_db/config.rb +0 -24
  203. data/lib/aws/dynamo_db/errors.rb +0 -20
  204. data/lib/aws/dynamo_db/expectations.rb +0 -40
  205. data/lib/aws/dynamo_db/item.rb +0 -133
  206. data/lib/aws/dynamo_db/item_collection.rb +0 -856
  207. data/lib/aws/dynamo_db/item_data.rb +0 -31
  208. data/lib/aws/dynamo_db/keys.rb +0 -41
  209. data/lib/aws/dynamo_db/primary_key_element.rb +0 -48
  210. data/lib/aws/dynamo_db/resource.rb +0 -33
  211. data/lib/aws/dynamo_db/table.rb +0 -496
  212. data/lib/aws/dynamo_db/table_collection.rb +0 -165
  213. data/lib/aws/dynamo_db/types.rb +0 -111
  214. data/lib/aws/ec2.rb +0 -428
  215. data/lib/aws/ec2/attachment.rb +0 -135
  216. data/lib/aws/ec2/attachment_collection.rb +0 -54
  217. data/lib/aws/ec2/availability_zone.rb +0 -86
  218. data/lib/aws/ec2/availability_zone_collection.rb +0 -43
  219. data/lib/aws/ec2/block_device_mappings.rb +0 -53
  220. data/lib/aws/ec2/client.rb +0 -101
  221. data/lib/aws/ec2/collection.rb +0 -36
  222. data/lib/aws/ec2/config.rb +0 -30
  223. data/lib/aws/ec2/customer_gateway.rb +0 -90
  224. data/lib/aws/ec2/customer_gateway_collection.rb +0 -73
  225. data/lib/aws/ec2/dhcp_options.rb +0 -106
  226. data/lib/aws/ec2/dhcp_options_collection.rb +0 -87
  227. data/lib/aws/ec2/elastic_ip.rb +0 -209
  228. data/lib/aws/ec2/elastic_ip_collection.rb +0 -93
  229. data/lib/aws/ec2/errors.rb +0 -32
  230. data/lib/aws/ec2/export_task.rb +0 -120
  231. data/lib/aws/ec2/export_task_collection.rb +0 -67
  232. data/lib/aws/ec2/filtered_collection.rb +0 -87
  233. data/lib/aws/ec2/has_permissions.rb +0 -44
  234. data/lib/aws/ec2/image.rb +0 -270
  235. data/lib/aws/ec2/image_collection.rb +0 -220
  236. data/lib/aws/ec2/instance.rb +0 -803
  237. data/lib/aws/ec2/instance_collection.rb +0 -391
  238. data/lib/aws/ec2/internet_gateway.rb +0 -122
  239. data/lib/aws/ec2/internet_gateway/attachment.rb +0 -78
  240. data/lib/aws/ec2/internet_gateway_collection.rb +0 -54
  241. data/lib/aws/ec2/key_pair.rb +0 -82
  242. data/lib/aws/ec2/key_pair_collection.rb +0 -99
  243. data/lib/aws/ec2/network_acl.rb +0 -256
  244. data/lib/aws/ec2/network_acl/association.rb +0 -56
  245. data/lib/aws/ec2/network_acl/entry.rb +0 -147
  246. data/lib/aws/ec2/network_acl_collection.rb +0 -64
  247. data/lib/aws/ec2/network_interface.rb +0 -237
  248. data/lib/aws/ec2/network_interface/attachment.rb +0 -100
  249. data/lib/aws/ec2/network_interface_collection.rb +0 -103
  250. data/lib/aws/ec2/permission_collection.rb +0 -174
  251. data/lib/aws/ec2/region.rb +0 -106
  252. data/lib/aws/ec2/region_collection.rb +0 -51
  253. data/lib/aws/ec2/reserved_instances.rb +0 -56
  254. data/lib/aws/ec2/reserved_instances_collection.rb +0 -40
  255. data/lib/aws/ec2/reserved_instances_offering.rb +0 -60
  256. data/lib/aws/ec2/reserved_instances_offering_collection.rb +0 -45
  257. data/lib/aws/ec2/resource.rb +0 -161
  258. data/lib/aws/ec2/resource_tag_collection.rb +0 -211
  259. data/lib/aws/ec2/route_table.rb +0 -205
  260. data/lib/aws/ec2/route_table/association.rb +0 -119
  261. data/lib/aws/ec2/route_table/route.rb +0 -119
  262. data/lib/aws/ec2/route_table_collection.rb +0 -72
  263. data/lib/aws/ec2/security_group.rb +0 -482
  264. data/lib/aws/ec2/security_group/ip_permission.rb +0 -135
  265. data/lib/aws/ec2/security_group/ip_permission_collection.rb +0 -82
  266. data/lib/aws/ec2/security_group_collection.rb +0 -133
  267. data/lib/aws/ec2/snapshot.rb +0 -143
  268. data/lib/aws/ec2/snapshot_collection.rb +0 -131
  269. data/lib/aws/ec2/subnet.rb +0 -161
  270. data/lib/aws/ec2/subnet_collection.rb +0 -115
  271. data/lib/aws/ec2/tag.rb +0 -81
  272. data/lib/aws/ec2/tag_collection.rb +0 -107
  273. data/lib/aws/ec2/tagged_collection.rb +0 -53
  274. data/lib/aws/ec2/tagged_item.rb +0 -85
  275. data/lib/aws/ec2/volume.rb +0 -174
  276. data/lib/aws/ec2/volume_collection.rb +0 -98
  277. data/lib/aws/ec2/vpc.rb +0 -166
  278. data/lib/aws/ec2/vpc_collection.rb +0 -70
  279. data/lib/aws/ec2/vpn_connection.rb +0 -99
  280. data/lib/aws/ec2/vpn_connection/telemetry.rb +0 -49
  281. data/lib/aws/ec2/vpn_connection_collection.rb +0 -96
  282. data/lib/aws/ec2/vpn_gateway.rb +0 -123
  283. data/lib/aws/ec2/vpn_gateway/attachment.rb +0 -45
  284. data/lib/aws/ec2/vpn_gateway_collection.rb +0 -77
  285. data/lib/aws/elastic_beanstalk.rb +0 -49
  286. data/lib/aws/elastic_beanstalk/client.rb +0 -36
  287. data/lib/aws/elastic_beanstalk/config.rb +0 -18
  288. data/lib/aws/elastic_beanstalk/errors.rb +0 -22
  289. data/lib/aws/elastic_transcoder.rb +0 -29
  290. data/lib/aws/elastic_transcoder/client.rb +0 -48
  291. data/lib/aws/elastic_transcoder/config.rb +0 -18
  292. data/lib/aws/elastic_transcoder/errors.rb +0 -23
  293. data/lib/aws/elasticache.rb +0 -49
  294. data/lib/aws/elasticache/client.rb +0 -35
  295. data/lib/aws/elasticache/config.rb +0 -18
  296. data/lib/aws/elasticache/errors.rb +0 -22
  297. data/lib/aws/elb.rb +0 -66
  298. data/lib/aws/elb/availability_zone_collection.rb +0 -138
  299. data/lib/aws/elb/backend_server_policy_collection.rb +0 -139
  300. data/lib/aws/elb/client.rb +0 -35
  301. data/lib/aws/elb/config.rb +0 -18
  302. data/lib/aws/elb/errors.rb +0 -26
  303. data/lib/aws/elb/instance_collection.rb +0 -168
  304. data/lib/aws/elb/listener.rb +0 -190
  305. data/lib/aws/elb/listener_collection.rb +0 -113
  306. data/lib/aws/elb/listener_opts.rb +0 -45
  307. data/lib/aws/elb/load_balancer.rb +0 -280
  308. data/lib/aws/elb/load_balancer_collection.rb +0 -146
  309. data/lib/aws/elb/load_balancer_policy.rb +0 -93
  310. data/lib/aws/elb/load_balancer_policy_collection.rb +0 -208
  311. data/lib/aws/emr.rb +0 -87
  312. data/lib/aws/emr/client.rb +0 -35
  313. data/lib/aws/emr/config.rb +0 -18
  314. data/lib/aws/emr/errors.rb +0 -22
  315. data/lib/aws/emr/instance_group.rb +0 -138
  316. data/lib/aws/emr/instance_group_collection.rb +0 -82
  317. data/lib/aws/emr/job_flow.rb +0 -307
  318. data/lib/aws/emr/job_flow_collection.rb +0 -185
  319. data/lib/aws/errors.rb +0 -162
  320. data/lib/aws/glacier.rb +0 -79
  321. data/lib/aws/glacier/archive.rb +0 -56
  322. data/lib/aws/glacier/archive_collection.rb +0 -146
  323. data/lib/aws/glacier/client.rb +0 -49
  324. data/lib/aws/glacier/config.rb +0 -19
  325. data/lib/aws/glacier/errors.rb +0 -22
  326. data/lib/aws/glacier/resource.rb +0 -30
  327. data/lib/aws/glacier/vault.rb +0 -145
  328. data/lib/aws/glacier/vault_collection.rb +0 -75
  329. data/lib/aws/glacier/vault_notification_configuration.rb +0 -29
  330. data/lib/aws/iam.rb +0 -408
  331. data/lib/aws/iam/access_key.rb +0 -185
  332. data/lib/aws/iam/access_key_collection.rb +0 -128
  333. data/lib/aws/iam/account_alias_collection.rb +0 -79
  334. data/lib/aws/iam/client.rb +0 -49
  335. data/lib/aws/iam/collection.rb +0 -83
  336. data/lib/aws/iam/config.rb +0 -18
  337. data/lib/aws/iam/errors.rb +0 -22
  338. data/lib/aws/iam/group.rb +0 -111
  339. data/lib/aws/iam/group_collection.rb +0 -132
  340. data/lib/aws/iam/group_policy_collection.rb +0 -47
  341. data/lib/aws/iam/group_user_collection.rb +0 -84
  342. data/lib/aws/iam/login_profile.rb +0 -99
  343. data/lib/aws/iam/mfa_device.rb +0 -52
  344. data/lib/aws/iam/mfa_device_collection.rb +0 -127
  345. data/lib/aws/iam/policy.rb +0 -46
  346. data/lib/aws/iam/policy_collection.rb +0 -188
  347. data/lib/aws/iam/resource.rb +0 -62
  348. data/lib/aws/iam/server_certificate.rb +0 -141
  349. data/lib/aws/iam/server_certificate_collection.rb +0 -138
  350. data/lib/aws/iam/signing_certificate.rb +0 -174
  351. data/lib/aws/iam/signing_certificate_collection.rb +0 -131
  352. data/lib/aws/iam/user.rb +0 -200
  353. data/lib/aws/iam/user_collection.rb +0 -133
  354. data/lib/aws/iam/user_group_collection.rb +0 -98
  355. data/lib/aws/iam/user_policy.rb +0 -90
  356. data/lib/aws/iam/user_policy_collection.rb +0 -45
  357. data/lib/aws/iam/virtual_mfa_device.rb +0 -139
  358. data/lib/aws/iam/virtual_mfa_device_collection.rb +0 -73
  359. data/lib/aws/import_export.rb +0 -73
  360. data/lib/aws/import_export/client.rb +0 -35
  361. data/lib/aws/import_export/config.rb +0 -19
  362. data/lib/aws/import_export/errors.rb +0 -22
  363. data/lib/aws/kinesis.rb +0 -53
  364. data/lib/aws/kinesis/client.rb +0 -35
  365. data/lib/aws/kinesis/config.rb +0 -18
  366. data/lib/aws/kinesis/errors.rb +0 -20
  367. data/lib/aws/ops_works.rb +0 -29
  368. data/lib/aws/ops_works/client.rb +0 -35
  369. data/lib/aws/ops_works/config.rb +0 -18
  370. data/lib/aws/ops_works/errors.rb +0 -20
  371. data/lib/aws/rails.rb +0 -195
  372. data/lib/aws/rds.rb +0 -70
  373. data/lib/aws/rds/client.rb +0 -42
  374. data/lib/aws/rds/config.rb +0 -18
  375. data/lib/aws/rds/db_instance.rb +0 -216
  376. data/lib/aws/rds/db_instance_collection.rb +0 -75
  377. data/lib/aws/rds/db_snapshot.rb +0 -163
  378. data/lib/aws/rds/db_snapshot_collection.rb +0 -89
  379. data/lib/aws/rds/errors.rb +0 -22
  380. data/lib/aws/record.rb +0 -139
  381. data/lib/aws/record/abstract_base.rb +0 -690
  382. data/lib/aws/record/attributes.rb +0 -388
  383. data/lib/aws/record/conversion.rb +0 -38
  384. data/lib/aws/record/dirty_tracking.rb +0 -287
  385. data/lib/aws/record/errors.rb +0 -143
  386. data/lib/aws/record/exceptions.rb +0 -51
  387. data/lib/aws/record/hash_model.rb +0 -204
  388. data/lib/aws/record/hash_model/attributes.rb +0 -195
  389. data/lib/aws/record/hash_model/finder_methods.rb +0 -172
  390. data/lib/aws/record/hash_model/scope.rb +0 -108
  391. data/lib/aws/record/model.rb +0 -453
  392. data/lib/aws/record/model/attributes.rb +0 -377
  393. data/lib/aws/record/model/finder_methods.rb +0 -232
  394. data/lib/aws/record/model/scope.rb +0 -212
  395. data/lib/aws/record/naming.rb +0 -31
  396. data/lib/aws/record/scope.rb +0 -203
  397. data/lib/aws/record/validations.rb +0 -694
  398. data/lib/aws/record/validator.rb +0 -246
  399. data/lib/aws/record/validators/acceptance.rb +0 -49
  400. data/lib/aws/record/validators/block.rb +0 -36
  401. data/lib/aws/record/validators/confirmation.rb +0 -41
  402. data/lib/aws/record/validators/count.rb +0 -106
  403. data/lib/aws/record/validators/exclusion.rb +0 -41
  404. data/lib/aws/record/validators/format.rb +0 -55
  405. data/lib/aws/record/validators/inclusion.rb +0 -54
  406. data/lib/aws/record/validators/length.rb +0 -105
  407. data/lib/aws/record/validators/method.rb +0 -31
  408. data/lib/aws/record/validators/numericality.rb +0 -136
  409. data/lib/aws/record/validators/presence.rb +0 -43
  410. data/lib/aws/redshift.rb +0 -51
  411. data/lib/aws/redshift/client.rb +0 -35
  412. data/lib/aws/redshift/config.rb +0 -18
  413. data/lib/aws/redshift/errors.rb +0 -22
  414. data/lib/aws/route_53.rb +0 -86
  415. data/lib/aws/route_53/change_batch.rb +0 -161
  416. data/lib/aws/route_53/change_info.rb +0 -72
  417. data/lib/aws/route_53/client.rb +0 -35
  418. data/lib/aws/route_53/config.rb +0 -18
  419. data/lib/aws/route_53/errors.rb +0 -22
  420. data/lib/aws/route_53/hosted_zone.rb +0 -111
  421. data/lib/aws/route_53/hosted_zone_collection.rb +0 -100
  422. data/lib/aws/route_53/resource_record_set.rb +0 -251
  423. data/lib/aws/route_53/resource_record_set_collection.rb +0 -110
  424. data/lib/aws/s3.rb +0 -156
  425. data/lib/aws/s3/access_control_list.rb +0 -265
  426. data/lib/aws/s3/acl_object.rb +0 -264
  427. data/lib/aws/s3/acl_options.rb +0 -204
  428. data/lib/aws/s3/bucket.rb +0 -742
  429. data/lib/aws/s3/bucket_collection.rb +0 -162
  430. data/lib/aws/s3/bucket_lifecycle_configuration.rb +0 -457
  431. data/lib/aws/s3/bucket_tag_collection.rb +0 -111
  432. data/lib/aws/s3/bucket_version_collection.rb +0 -79
  433. data/lib/aws/s3/cipher_io.rb +0 -120
  434. data/lib/aws/s3/client.rb +0 -1919
  435. data/lib/aws/s3/client/xml.rb +0 -259
  436. data/lib/aws/s3/config.rb +0 -48
  437. data/lib/aws/s3/cors_rule.rb +0 -108
  438. data/lib/aws/s3/cors_rule_collection.rb +0 -194
  439. data/lib/aws/s3/data_options.rb +0 -191
  440. data/lib/aws/s3/encryption_utils.rb +0 -146
  441. data/lib/aws/s3/errors.rb +0 -94
  442. data/lib/aws/s3/multipart_upload.rb +0 -351
  443. data/lib/aws/s3/multipart_upload_collection.rb +0 -76
  444. data/lib/aws/s3/object_collection.rb +0 -353
  445. data/lib/aws/s3/object_metadata.rb +0 -103
  446. data/lib/aws/s3/object_upload_collection.rb +0 -77
  447. data/lib/aws/s3/object_version.rb +0 -154
  448. data/lib/aws/s3/object_version_collection.rb +0 -89
  449. data/lib/aws/s3/paginated_collection.rb +0 -75
  450. data/lib/aws/s3/policy.rb +0 -74
  451. data/lib/aws/s3/prefix_and_delimiter_collection.rb +0 -47
  452. data/lib/aws/s3/prefixed_collection.rb +0 -85
  453. data/lib/aws/s3/presign_v4.rb +0 -127
  454. data/lib/aws/s3/presigned_post.rb +0 -554
  455. data/lib/aws/s3/request.rb +0 -62
  456. data/lib/aws/s3/s3_object.rb +0 -1781
  457. data/lib/aws/s3/tree.rb +0 -116
  458. data/lib/aws/s3/tree/branch_node.rb +0 -68
  459. data/lib/aws/s3/tree/child_collection.rb +0 -104
  460. data/lib/aws/s3/tree/leaf_node.rb +0 -94
  461. data/lib/aws/s3/tree/node.rb +0 -22
  462. data/lib/aws/s3/tree/parent.rb +0 -87
  463. data/lib/aws/s3/uploaded_part.rb +0 -82
  464. data/lib/aws/s3/uploaded_part_collection.rb +0 -84
  465. data/lib/aws/s3/website_configuration.rb +0 -102
  466. data/lib/aws/simple_db.rb +0 -218
  467. data/lib/aws/simple_db/attribute.rb +0 -156
  468. data/lib/aws/simple_db/attribute_collection.rb +0 -240
  469. data/lib/aws/simple_db/client.rb +0 -67
  470. data/lib/aws/simple_db/config.rb +0 -20
  471. data/lib/aws/simple_db/consistent_read_option.rb +0 -42
  472. data/lib/aws/simple_db/delete_attributes.rb +0 -62
  473. data/lib/aws/simple_db/domain.rb +0 -123
  474. data/lib/aws/simple_db/domain_collection.rb +0 -86
  475. data/lib/aws/simple_db/domain_metadata.rb +0 -110
  476. data/lib/aws/simple_db/errors.rb +0 -55
  477. data/lib/aws/simple_db/expect_condition_option.rb +0 -45
  478. data/lib/aws/simple_db/item.rb +0 -93
  479. data/lib/aws/simple_db/item_collection.rb +0 -654
  480. data/lib/aws/simple_db/item_data.rb +0 -73
  481. data/lib/aws/simple_db/put_attributes.rb +0 -60
  482. data/lib/aws/simple_email_service.rb +0 -430
  483. data/lib/aws/simple_email_service/client.rb +0 -37
  484. data/lib/aws/simple_email_service/config.rb +0 -18
  485. data/lib/aws/simple_email_service/email_address_collection.rb +0 -69
  486. data/lib/aws/simple_email_service/errors.rb +0 -22
  487. data/lib/aws/simple_email_service/identity.rb +0 -209
  488. data/lib/aws/simple_email_service/identity_collection.rb +0 -81
  489. data/lib/aws/simple_email_service/quotas.rb +0 -66
  490. data/lib/aws/simple_workflow.rb +0 -227
  491. data/lib/aws/simple_workflow/activity_task.rb +0 -178
  492. data/lib/aws/simple_workflow/activity_task_collection.rb +0 -123
  493. data/lib/aws/simple_workflow/activity_type.rb +0 -131
  494. data/lib/aws/simple_workflow/activity_type_collection.rb +0 -93
  495. data/lib/aws/simple_workflow/client.rb +0 -69
  496. data/lib/aws/simple_workflow/config.rb +0 -18
  497. data/lib/aws/simple_workflow/count.rb +0 -49
  498. data/lib/aws/simple_workflow/decision_task.rb +0 -603
  499. data/lib/aws/simple_workflow/decision_task_collection.rb +0 -225
  500. data/lib/aws/simple_workflow/domain.rb +0 -122
  501. data/lib/aws/simple_workflow/domain_collection.rb +0 -169
  502. data/lib/aws/simple_workflow/errors.rb +0 -20
  503. data/lib/aws/simple_workflow/history_event.rb +0 -276
  504. data/lib/aws/simple_workflow/history_event_collection.rb +0 -76
  505. data/lib/aws/simple_workflow/option_formatters.rb +0 -82
  506. data/lib/aws/simple_workflow/resource.rb +0 -94
  507. data/lib/aws/simple_workflow/type.rb +0 -89
  508. data/lib/aws/simple_workflow/type_collection.rb +0 -140
  509. data/lib/aws/simple_workflow/workflow_execution.rb +0 -384
  510. data/lib/aws/simple_workflow/workflow_execution_collection.rb +0 -617
  511. data/lib/aws/simple_workflow/workflow_type.rb +0 -179
  512. data/lib/aws/simple_workflow/workflow_type_collection.rb +0 -91
  513. data/lib/aws/sns.rb +0 -76
  514. data/lib/aws/sns/client.rb +0 -35
  515. data/lib/aws/sns/config.rb +0 -18
  516. data/lib/aws/sns/errors.rb +0 -22
  517. data/lib/aws/sns/has_delivery_policy.rb +0 -68
  518. data/lib/aws/sns/message.rb +0 -194
  519. data/lib/aws/sns/originators/from_auto_scaling.rb +0 -68
  520. data/lib/aws/sns/policy.rb +0 -47
  521. data/lib/aws/sns/subscription.rb +0 -165
  522. data/lib/aws/sns/subscription_collection.rb +0 -78
  523. data/lib/aws/sns/topic.rb +0 -403
  524. data/lib/aws/sns/topic_collection.rb +0 -62
  525. data/lib/aws/sns/topic_subscription_collection.rb +0 -54
  526. data/lib/aws/sqs.rb +0 -80
  527. data/lib/aws/sqs/client.rb +0 -53
  528. data/lib/aws/sqs/config.rb +0 -20
  529. data/lib/aws/sqs/errors.rb +0 -125
  530. data/lib/aws/sqs/policy.rb +0 -48
  531. data/lib/aws/sqs/queue.rb +0 -843
  532. data/lib/aws/sqs/queue_collection.rb +0 -182
  533. data/lib/aws/sqs/received_message.rb +0 -182
  534. data/lib/aws/sqs/received_sns_message.rb +0 -116
  535. data/lib/aws/storage_gateway.rb +0 -72
  536. data/lib/aws/storage_gateway/client.rb +0 -42
  537. data/lib/aws/storage_gateway/config.rb +0 -18
  538. data/lib/aws/storage_gateway/errors.rb +0 -22
  539. data/lib/aws/sts.rb +0 -164
  540. data/lib/aws/sts/client.rb +0 -46
  541. data/lib/aws/sts/config.rb +0 -18
  542. data/lib/aws/sts/errors.rb +0 -22
  543. data/lib/aws/sts/federated_session.rb +0 -56
  544. data/lib/aws/sts/policy.rb +0 -30
  545. data/lib/aws/sts/session.rb +0 -48
  546. data/lib/aws/support.rb +0 -29
  547. data/lib/aws/support/client.rb +0 -35
  548. data/lib/aws/support/config.rb +0 -18
  549. data/lib/aws/support/errors.rb +0 -20
  550. data/lib/aws/version.rb +0 -17
  551. data/rails/init.rb +0 -15
@@ -1,29 +0,0 @@
1
- # Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License"). You
4
- # may not use this file except in compliance with the License. A copy of
5
- # the License is located at
6
- #
7
- # http://aws.amazon.com/apache2.0/
8
- #
9
- # or in the "license" file accompanying this file. This file is
10
- # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
- # ANY KIND, either express or implied. See the License for the specific
12
- # language governing permissions and limitations under the License.
13
-
14
- module AWS
15
- class Glacier
16
- class VaultNotificationConfiguration
17
-
18
- # @return [SNS::Topic] The SNS topic Glacier will publish events to.
19
- attr_accessor :sns_topic
20
-
21
- alias_method :topic, :sns_topic
22
-
23
- # @return [Array<String>] events An array of one or more events for
24
- # which Amazon Glacier will send notifications.
25
- attr_accessor :events
26
-
27
- end
28
- end
29
- end
data/lib/aws/iam.rb DELETED
@@ -1,408 +0,0 @@
1
- # Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License"). You
4
- # may not use this file except in compliance with the License. A copy of
5
- # the License is located at
6
- #
7
- # http://aws.amazon.com/apache2.0/
8
- #
9
- # or in the "license" file accompanying this file. This file is
10
- # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
- # ANY KIND, either express or implied. See the License for the specific
12
- # language governing permissions and limitations under the License.
13
-
14
- require 'aws/core'
15
- require 'aws/iam/config'
16
-
17
- module AWS
18
-
19
- # This class is the starting point for working with
20
- # AWS Identity and Access Management (IAM).
21
- #
22
- # For more information about IAM:
23
- #
24
- # * [AWS Identity and Access Management](http://aws.amazon.com/iam/)
25
- # * [AWS Identity and Access Management Documentation](http://aws.amazon.com/documentation/iam/)
26
- #
27
- # # Credentials
28
- #
29
- # You can setup default credentials for all AWS services via
30
- # AWS.config:
31
- #
32
- # AWS.config(
33
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
34
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
35
- #
36
- # Or you can set them directly on the IAM interface:
37
- #
38
- # iam = AWS::IAM.new(
39
- # :access_key_id => 'YOUR_ACCESS_KEY_ID',
40
- # :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
41
- #
42
- # # Account Summary
43
- #
44
- # You can get account level information about entity usage and IAM quotas
45
- # directly from an IAM interface object.
46
- #
47
- # summary = iam.account_summary
48
- #
49
- # puts "Num users: #{summary[:users]}"
50
- # puts "Num user quota: #{summary[:users_quota]}"
51
- #
52
- # For a complete list of summary attributes see the {#account_summary} method.
53
- #
54
- # # Account Aliases
55
- #
56
- # Currently IAM only supports a single account alias for each AWS account.
57
- # You can set the account alias on the IAM interface.
58
- #
59
- # iam.account_alias = 'myaccountalias'
60
- # iam.account_alias
61
- # #=> 'myaccountalias'
62
- #
63
- # You can also remove your account alias:
64
- #
65
- # iam.remove_account_alias
66
- # iam.account_alias
67
- # #=> nil
68
- #
69
- # # Access Keys
70
- #
71
- # You can create up to 2 access for your account and 2 for each user.
72
- # This makes it easy to rotate keys if you need to. You can also
73
- # deactivate/activate access keys.
74
- #
75
- # # get your current access key
76
- # old_access_key = iam.access_keys.first
77
- #
78
- # # create a new access key
79
- # new_access_key = iam.access_keys.create
80
- # new_access_key.credentials
81
- # #=> { :access_key_id => 'ID', :secret_access_key => 'SECRET' }
82
- #
83
- # # go rotate your keys/credentials ...
84
- #
85
- # # now disable the old access key
86
- # old_access_key.deactivate!
87
- #
88
- # # go make sure everything still works ...
89
- #
90
- # # all done, lets clean up
91
- # old_access_key.delete
92
- #
93
- # Users can also have access keys:
94
- #
95
- # u = iam.users['someuser']
96
- # access_key = u.access_keys.create
97
- # access_key.credentials
98
- # #=> { :access_key_id => 'ID', :secret_access_key => 'SECRET' }
99
- #
100
- # See {AccessKeyCollection} and {AccessKey} for more information about
101
- # working with access keys.
102
- #
103
- # # Users & Groups
104
- #
105
- # Each AWS account can have multiple users. Users can be used to easily
106
- # manage permissions. Users can also be organized into groups.
107
- #
108
- # user = iam.users.create('JohnDoe')
109
- # group = iam.groups.create('Developers')
110
- #
111
- # # add a user to a group
112
- # user.groups.add(group)
113
- #
114
- # # remove a user from a group
115
- # user.groups.remove(group)
116
- #
117
- # # add a user to a group
118
- # group.users.add(user)
119
- #
120
- # # remove a user from a group
121
- # group.users.remove(user)
122
- #
123
- # See {User}, {UserCollection}, {Group} and {GroupCollection} for more
124
- # information on how to work with users and groups.
125
- #
126
- # # Other Interfaces
127
- #
128
- # Other useful IAM interfaces:
129
- # * User Login Profiles ({LoginProfile})
130
- # * Policies ({Policy})
131
- # * Server Certificates ({ServerCertificateCollection}, {ServerCertificate})
132
- # * Signing Certificates ({SigningCertificateCollection}, {SigningCertificate})
133
- # * Multifactor Authentication Devices ({MFADeviceCollection}, {MFADevice})
134
- #
135
- # @!attribute [r] client
136
- # @return [Client] the low-level IAM client object
137
- class IAM
138
-
139
- autoload :AccessKey, 'aws/iam/access_key'
140
- autoload :AccessKeyCollection, 'aws/iam/access_key_collection'
141
- autoload :AccountAliasCollection, 'aws/iam/account_alias_collection'
142
- autoload :Client, 'aws/iam/client'
143
- autoload :Collection, 'aws/iam/collection'
144
- autoload :Errors, 'aws/iam/errors'
145
- autoload :Group, 'aws/iam/group'
146
- autoload :GroupCollection, 'aws/iam/group_collection'
147
- autoload :GroupPolicyCollection, 'aws/iam/group_policy_collection'
148
- autoload :GroupUserCollection, 'aws/iam/group_user_collection'
149
- autoload :LoginProfile, 'aws/iam/login_profile'
150
- autoload :MFADevice, 'aws/iam/mfa_device'
151
- autoload :MFADeviceCollection, 'aws/iam/mfa_device_collection'
152
- autoload :Policy, 'aws/iam/policy'
153
- autoload :PolicyCollection, 'aws/iam/policy_collection'
154
- autoload :Resource, 'aws/iam/resource'
155
- autoload :ServerCertificate, 'aws/iam/server_certificate'
156
- autoload :ServerCertificateCollection, 'aws/iam/server_certificate_collection'
157
- autoload :SigningCertificate, 'aws/iam/signing_certificate'
158
- autoload :SigningCertificateCollection, 'aws/iam/signing_certificate_collection'
159
- autoload :User, 'aws/iam/user'
160
- autoload :UserCollection, 'aws/iam/user_collection'
161
- autoload :UserGroupCollection, 'aws/iam/user_group_collection'
162
- autoload :UserPolicy, 'aws/iam/user_policy'
163
- autoload :UserPolicyCollection, 'aws/iam/user_policy_collection'
164
- autoload :VirtualMfaDeviceCollection, 'aws/iam/virtual_mfa_device_collection'
165
- autoload :VirtualMfaDevice, 'aws/iam/virtual_mfa_device'
166
-
167
- include Core::ServiceInterface
168
-
169
- endpoint_prefix 'iam', :global => true
170
-
171
- # Returns a collection that represents all AWS users for this account:
172
- #
173
- # @example Getting a user by name
174
- #
175
- # user = iam.users['username']
176
- #
177
- # @example Enumerating users
178
- #
179
- # iam.users.each do |user|
180
- # puts user.name
181
- # end
182
- #
183
- # @return [UserCollection] Returns a collection that represents all of
184
- # the IAM users for this AWS account.
185
- def users
186
- UserCollection.new(:config => config)
187
- end
188
-
189
- # Returns a collection that represents all AWS groups for this account:
190
- #
191
- # @example Getting a group by name
192
- #
193
- # group = iam.groups['groupname']
194
- #
195
- # @example Enumerating groups
196
- #
197
- # iam.groups.each do |group|
198
- # puts group.name
199
- # end
200
- #
201
- # @return [GroupCollection] Returns a collection that represents all of
202
- # the IAM groups for this AWS account.
203
- def groups
204
- GroupCollection.new(:config => config)
205
- end
206
-
207
- # Returns a collection that represents the access keys for this
208
- # AWS account.
209
- #
210
- # iam = AWS::IAM.new
211
- # iam.access_keys.each do |access_key|
212
- # puts access_key.id
213
- # end
214
- #
215
- # @return [AccessKeyCollection] Returns a collection that represents all
216
- # access keys for this AWS account.
217
- def access_keys
218
- AccessKeyCollection.new(:config => config)
219
- end
220
-
221
- # Returns a collection that represents the signing certificates
222
- # for this AWS account.
223
- #
224
- # iam = AWS::IAM.new
225
- # iam.signing_certificates.each do |cert|
226
- # # ...
227
- # end
228
- #
229
- # If you need to access the signing certificates of a specific user,
230
- # see {User#signing_certificates}.
231
- #
232
- # @return [SigningCertificateCollection] Returns a collection that
233
- # represents signing certificates for this AWS account.
234
- def signing_certificates
235
- SigningCertificateCollection.new(:config => config)
236
- end
237
-
238
- # @note Currently, Amazon Elastic Load Balancing is the only
239
- # service to support the use of server certificates with
240
- # IAM. Using server certificates with Amazon Elastic Load
241
- # Balancing is described in the
242
- # {http://docs.amazonwebservices.com/ElasticLoadBalancing/latest/DeveloperGuide/US_SettingUpLoadBalancerHTTPSIntegrated.html
243
- # Amazon Elastic Load Balancing} Developer Guide.
244
- #
245
- # Returns a collection that represents the server certificates
246
- # for this AWS account.
247
- #
248
- # iam = AWS::IAM.new
249
- # iam.server_certificates.each do |cert|
250
- # # ...
251
- # end
252
- #
253
- # @return [ServerCertificateCollection] Returns a collection that
254
- # represents server certificates for this AWS account.
255
- def server_certificates
256
- ServerCertificateCollection.new(:config => config)
257
- end
258
-
259
- # Returns a collection that represents the virtual MFA devices
260
- # that are not assigned to an IAM user.
261
- #
262
- # iam = AWS::IAM.new
263
- # iam.virtual_mfa_devices.each do |cert|
264
- # # ...
265
- # end
266
- #
267
- # @return [VirtualMfaDeviceCollection] Returns a collection that
268
- # represents the virtual MFA devices that are not assigned to an
269
- # IAM user.
270
- def virtual_mfa_devices
271
- VirtualMfaDeviceCollection.new(:config => config)
272
- end
273
-
274
- # Sets the account alias for this AWS account.
275
- # @param [String] account_alias
276
- # @return [String] Returns the account alias passed.
277
- def account_alias= account_alias
278
- account_alias.nil? ?
279
- remove_account_alias :
280
- account_aliases.create(account_alias)
281
- end
282
-
283
- # @return [String,nil] Returns the account alias. If this account has
284
- # no alias, then `nil` is returned.
285
- def account_alias
286
- account_aliases.first
287
- end
288
-
289
- # Deletes the account alias (if one exists).
290
- # @return [nil]
291
- def remove_account_alias
292
- account_aliases.each do |account_alias|
293
- account_aliases.delete(account_alias)
294
- end
295
- nil
296
- end
297
-
298
- # @api private
299
- def account_aliases
300
- AccountAliasCollection.new(:config => config)
301
- end
302
-
303
- # Retrieves account level information about account entity usage
304
- # and IAM quotas. The returned hash contains the following keys:
305
- #
306
- # * `:users` - Number of users for the AWS account
307
- # * `:users_quota` - Maximum users allowed for the AWS account
308
- # * `:groups` - Number of Groups for the AWS account
309
- # * `:groups_quota` - Maximum Groups allowed for the AWS account
310
- # * `:server_certificates` - Number of Server Certificates for the
311
- # AWS account
312
- # * `:server_certificates_quota` - Maximum Server Certificates
313
- # allowed for the AWS account
314
- # * `:user_policy_size_quota` - Maximum allowed size for user policy
315
- # documents (in kilobytes)
316
- # * `:group_policy_size_quota` - Maximum allowed size for Group
317
- # policy documents (in kilobyes)
318
- # * `:groups_per_user_quota` - Maximum number of groups a user can
319
- # belong to
320
- # * `:signing_certificates_per_user_quota` - Maximum number of X509
321
- # certificates allowed
322
- # for a user
323
- # * `:access_keys_per_user_quota` - Maximum number of access keys
324
- # that can be created per user
325
- # @return [Hash]
326
- def account_summary
327
- client.get_account_summary.data[:summary_map].inject({}) do |h,(k,v)|
328
- h.merge(Core::Inflection.ruby_name(k).to_sym => v)
329
- end
330
- end
331
-
332
- # Changes the web password associated with the current IAM user.
333
- # In order to change your password you must configure the sdk
334
- # to use your IAM user credentials.
335
- #
336
- #
337
- # To change a user password, you must be using credentials from the
338
- # user you want to change:
339
- #
340
- # # pass in a key pair generated for the user you want to change
341
- # # the password for
342
- # iam = AWS::IAM.new(:access_key_id => '...', :secret_access_key => '...)
343
- # iam.change_password('old-password', 'new-password')
344
- #
345
- # @param [String] old_password
346
- #
347
- # @param [String] new_password
348
- #
349
- # @return [nil]
350
- #
351
- def change_password old_password, new_password
352
- client_opts = {}
353
- client_opts[:old_password] = old_password
354
- client_opts[:new_password] = new_password
355
- client.change_password(client_opts)
356
- nil
357
- end
358
-
359
- # Updates the account password policy for all IAM accounts.
360
- # @param [Hash] options
361
- # @option options [Integer] :minimum_password_length
362
- # @option options [Boolean] :require_symbols
363
- # @option options [Boolean] :require_numbers
364
- # @option options [Boolean] :require_uppercase_characters
365
- # @option options [Boolean] :require_lowercase_characters
366
- # @return [nil]
367
- def update_account_password_policy options = {}
368
- client.update_account_password_policy(options)
369
- nil
370
- end
371
-
372
- # Removes the account password policy.
373
- # @return [nil]
374
- def delete_account_password_policy
375
- client.delete_account_password_policy
376
- nil
377
- end
378
-
379
- # Returns the account password policy details as a hash. This method
380
- # returns nil if no password policy has been set for this account.
381
- #
382
- # # set the policy
383
- # iam.update_account_password_policy :minimum_password_length => 8
384
- #
385
- # iam.account_password_policy
386
- # #=> {:require_symbols=>false, :require_numbers=>false, :require_uppercase_characters=>false, :require_lowercase_characters=>false, :minimum_password_length=>8}
387
- #
388
- # @return [Hash,nil]
389
- def account_password_policy
390
- begin
391
- policy = client.get_account_password_policy.password_policy
392
- [
393
- :minimum_password_length,
394
- :require_symbols?,
395
- :require_numbers?,
396
- :require_uppercase_characters?,
397
- :require_lowercase_characters?,
398
- ].inject({}) do |hash,method|
399
- key = method.to_s.sub(/\?/, '').to_sym
400
- hash.merge(key => policy.send(method))
401
- end
402
- rescue Errors::NoSuchEntity
403
- nil
404
- end
405
- end
406
-
407
- end
408
- end
@@ -1,185 +0,0 @@
1
- # Copyright 2011-2013 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License"). You
4
- # may not use this file except in compliance with the License. A copy of
5
- # the License is located at
6
- #
7
- # http://aws.amazon.com/apache2.0/
8
- #
9
- # or in the "license" file accompanying this file. This file is
10
- # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
11
- # ANY KIND, either express or implied. See the License for the specific
12
- # language governing permissions and limitations under the License.
13
-
14
- module AWS
15
- class IAM
16
-
17
- # @attr_reader [Symbol] status The status of this access key.
18
- # Status may be `:active` or `:inactive`.
19
- #
20
- # @attr_reader [Time] create_date
21
- #
22
- class AccessKey < Resource
23
-
24
- # @param [String] access_key_id The id of this access key.
25
- # @param [Hash] options
26
- # @option [String] :user The IAM user this access key belongs to.
27
- # If `:user` is omitted then this access key belongs to the
28
- # AWS account.
29
- def initialize access_key_id, options = {}
30
- @id = access_key_id
31
- options[:secret_value] = nil unless options.has_key?(:secret_value)
32
- @user = options[:user]
33
- @user ? super(@user, options) : super(options)
34
- end
35
-
36
- # @return [User,nil] Returns the user this access key belongs to.
37
- # Returns `nil` if this access key belongs to the AWS account and not
38
- # a specific user.
39
- attr_reader :user
40
-
41
- # @return [String] Returns the access key id.
42
- attr_reader :id
43
-
44
- alias_method :access_key_id, :id
45
-
46
- # @attr_reader [Time] When the access key was created.
47
- attribute :create_date, :static => true
48
-
49
- attribute :secret_value, :from => :secret_access_key, :static => true
50
-
51
- protected :secret_value
52
-
53
- mutable_attribute :status, :to_sym => true
54
-
55
- protected :status=
56
-
57
- populates_from(:create_access_key) do |resp|
58
- resp.access_key if matches_response_object?(resp.access_key)
59
- end
60
-
61
- populates_from(:list_access_keys) do |resp|
62
- resp.access_key_metadata.find {|k| matches_response_object?(k) }
63
- end
64
-
65
- # Returns the secret access key.
66
- #
67
- # You can only access the secret for newly created access
68
- # keys. Calling `secret` on existing access keys raises an error.
69
- #
70
- # @example Getting the secret from a newly created access key
71
- #
72
- # access_key = iam.access_keys.create
73
- # access_key.secret
74
- # #=> 'SECRET_ACCESS_KEY'
75
- #
76
- # @example Failing to get the secret from an existing access key.
77
- #
78
- # access_key = iam.access_keys.first
79
- # access_key.secret
80
- # #=> raises a runtime error
81
- #
82
- # @return [String] Returns the secret access key.
83
- def secret
84
- secret_value or raise 'secret is only available for new access keys'
85
- end
86
-
87
- alias_method :secret_access_key, :secret
88
-
89
- # @return [String,nil] Returns the name of the user this access key
90
- # belogns to. If the access key belongs to the account, `nil` is
91
- # returned.
92
- def user_name
93
- @user ? @user.name : nil
94
- end
95
-
96
- # @return [Boolean] Returns true if this access key is active.
97
- def active?
98
- status == :active
99
- end
100
-
101
- # @return [Boolean] Returns true if this access key is inactive.
102
- def inactive?
103
- status == :inactive
104
- end
105
-
106
- # Activates this access key.
107
- #
108
- # @example
109
- # access_key.activate!
110
- # access_key.status
111
- # # => :active
112
- #
113
- # @return [nil]
114
- def activate!
115
- self.status = 'Active'
116
- nil
117
- end
118
-
119
- # Deactivates this access key.
120
- #
121
- # @example
122
- # access_key.deactivate!
123
- # access_key.status
124
- # # => :inactive
125
- #
126
- # @return [nil]
127
- # @return [nil]
128
- def deactivate!
129
- self.status = 'Inactive'
130
- nil
131
- end
132
-
133
- # Deletes the access key.
134
- def delete
135
- client.delete_access_key(resource_options)
136
- nil
137
- end
138
-
139
- # Returns a hash that should be saved somewhere safe.
140
- #
141
- # access_keys = iam.access_keys.create
142
- # access_keys.credentials
143
- # #=> { :access_key_id => '...', :secret_access_key => '...' }
144
- #
145
- # You can also use these credentials to make requests:
146
- #
147
- # s3 = AWS::S3.new(access_keys.credentials)
148
- # s3.buckets.create('newbucket')
149
- #
150
- # @return [Hash] Returns a hash with the access key id and
151
- # secret access key.
152
- def credentials
153
- { :access_key_id => id, :secret_access_key => secret }
154
- end
155
-
156
- # @api private
157
- protected
158
- def resource_identifiers
159
- identifiers = []
160
- identifiers << [:access_key_id, id]
161
- identifiers << [:user_name, user.name] if user
162
- identifiers
163
- end
164
-
165
- # IAM does not provide a request for "get access keys".
166
- # Also note, we do not page the response. This is because
167
- # restrictions on how many access keys an account / user may
168
- # have is fewer than one page of results.
169
- # @api private
170
- protected
171
- def get_resource attribute
172
- options = user ? { :user_name => user.name } : {}
173
- client.list_access_keys(options)
174
- end
175
-
176
- # @api private
177
- protected
178
- def matches_response_object? obj
179
- user_name = obj.respond_to?(:user_name) ? obj.user_name : nil
180
- obj.access_key_id == self.id and user_name == self.user_name
181
- end
182
-
183
- end
184
- end
185
- end