aws-sdk-euca 1.8.5
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.
- data/.yardopts +5 -0
- data/LICENSE.txt +12 -0
- data/README.rdoc +189 -0
- data/ca-bundle.crt +3895 -0
- data/lib/aws-sdk-euca.rb +79 -0
- data/lib/aws-sdk.rb +79 -0
- data/lib/aws.rb +14 -0
- data/lib/aws/api_config/AutoScaling-2011-01-01.yml +825 -0
- data/lib/aws/api_config/CloudFormation-2010-05-15.yml +322 -0
- data/lib/aws/api_config/CloudFront-2012-05-05.yml +2102 -0
- data/lib/aws/api_config/CloudSearch-2011-02-01.yml +681 -0
- data/lib/aws/api_config/CloudWatch-2010-08-01.yml +433 -0
- data/lib/aws/api_config/DataPipeline-2012-10-29.yml +422 -0
- data/lib/aws/api_config/DynamoDB-2011-12-05.yml +1160 -0
- data/lib/aws/api_config/EC2-2013-02-01.yml +4368 -0
- data/lib/aws/api_config/ELB-2012-06-01.yml +597 -0
- data/lib/aws/api_config/EMR-2009-03-31.yml +370 -0
- data/lib/aws/api_config/ElastiCache-2012-03-09.yml +777 -0
- data/lib/aws/api_config/ElastiCache-2012-11-15.yml +979 -0
- data/lib/aws/api_config/ElasticBeanstalk-2010-12-01.yml +823 -0
- data/lib/aws/api_config/ElasticTranscoder-2012-09-25.yml +1036 -0
- data/lib/aws/api_config/Glacier-2012-06-01.yml +618 -0
- data/lib/aws/api_config/IAM-2010-05-08.yml +1222 -0
- data/lib/aws/api_config/ImportExport-2010-06-01.yml +109 -0
- data/lib/aws/api_config/OpsWorks-2013-02-18.yml +1463 -0
- data/lib/aws/api_config/RDS-2012-09-17.yml +1861 -0
- data/lib/aws/api_config/RDS-2013-02-12.yml +2377 -0
- data/lib/aws/api_config/Redshift-2012-12-01.yml +1149 -0
- data/lib/aws/api_config/Route53-2012-02-29.yml +380 -0
- data/lib/aws/api_config/Route53-2012-12-12.yml +547 -0
- data/lib/aws/api_config/SNS-2010-03-31.yml +249 -0
- data/lib/aws/api_config/SQS-2012-11-05.yml +317 -0
- data/lib/aws/api_config/STS-2011-06-15.yml +81 -0
- data/lib/aws/api_config/SimpleDB-2009-04-15.yml +306 -0
- data/lib/aws/api_config/SimpleEmailService-2010-12-01.yml +346 -0
- data/lib/aws/api_config/SimpleWorkflow-2012-01-25.yml +2358 -0
- data/lib/aws/api_config/StorageGateway-2012-06-30.yml +748 -0
- data/lib/aws/auto_scaling.rb +164 -0
- data/lib/aws/auto_scaling/activity.rb +102 -0
- data/lib/aws/auto_scaling/activity_collection.rb +82 -0
- data/lib/aws/auto_scaling/client.rb +521 -0
- data/lib/aws/auto_scaling/config.rb +18 -0
- data/lib/aws/auto_scaling/errors.rb +22 -0
- data/lib/aws/auto_scaling/group.rb +420 -0
- data/lib/aws/auto_scaling/group_collection.rb +96 -0
- data/lib/aws/auto_scaling/group_options.rb +146 -0
- data/lib/aws/auto_scaling/instance.rb +192 -0
- data/lib/aws/auto_scaling/instance_collection.rb +63 -0
- data/lib/aws/auto_scaling/launch_configuration.rb +158 -0
- data/lib/aws/auto_scaling/launch_configuration_collection.rb +154 -0
- data/lib/aws/auto_scaling/notification_configuration.rb +89 -0
- data/lib/aws/auto_scaling/notification_configuration_collection.rb +184 -0
- data/lib/aws/auto_scaling/request.rb +29 -0
- data/lib/aws/auto_scaling/scaling_policy.rb +142 -0
- data/lib/aws/auto_scaling/scaling_policy_collection.rb +72 -0
- data/lib/aws/auto_scaling/scaling_policy_options.rb +64 -0
- data/lib/aws/auto_scaling/scheduled_action.rb +145 -0
- data/lib/aws/auto_scaling/scheduled_action_collection.rb +195 -0
- data/lib/aws/auto_scaling/tag.rb +59 -0
- data/lib/aws/auto_scaling/tag_collection.rb +112 -0
- data/lib/aws/cloud_formation.rb +272 -0
- data/lib/aws/cloud_formation/client.rb +369 -0
- data/lib/aws/cloud_formation/config.rb +18 -0
- data/lib/aws/cloud_formation/errors.rb +22 -0
- data/lib/aws/cloud_formation/request.rb +29 -0
- data/lib/aws/cloud_formation/stack.rb +255 -0
- data/lib/aws/cloud_formation/stack_collection.rb +209 -0
- data/lib/aws/cloud_formation/stack_event.rb +75 -0
- data/lib/aws/cloud_formation/stack_event_collection.rb +47 -0
- data/lib/aws/cloud_formation/stack_options.rb +72 -0
- data/lib/aws/cloud_formation/stack_output.rb +53 -0
- data/lib/aws/cloud_formation/stack_resource.rb +117 -0
- data/lib/aws/cloud_formation/stack_resource_collection.rb +84 -0
- data/lib/aws/cloud_formation/stack_resource_summary_collection.rb +64 -0
- data/lib/aws/cloud_formation/stack_summary_collection.rb +123 -0
- data/lib/aws/cloud_front.rb +73 -0
- data/lib/aws/cloud_front/client.rb +1307 -0
- data/lib/aws/cloud_front/config.rb +18 -0
- data/lib/aws/cloud_front/errors.rb +22 -0
- data/lib/aws/cloud_front/request.rb +44 -0
- data/lib/aws/cloud_search.rb +74 -0
- data/lib/aws/cloud_search/client.rb +558 -0
- data/lib/aws/cloud_search/config.rb +18 -0
- data/lib/aws/cloud_search/errors.rb +22 -0
- data/lib/aws/cloud_search/request.rb +23 -0
- data/lib/aws/cloud_watch.rb +119 -0
- data/lib/aws/cloud_watch/alarm.rb +272 -0
- data/lib/aws/cloud_watch/alarm_collection.rb +153 -0
- data/lib/aws/cloud_watch/alarm_history_item.rb +50 -0
- data/lib/aws/cloud_watch/alarm_history_item_collection.rb +84 -0
- data/lib/aws/cloud_watch/client.rb +247 -0
- data/lib/aws/cloud_watch/config.rb +18 -0
- data/lib/aws/cloud_watch/errors.rb +22 -0
- data/lib/aws/cloud_watch/metric.rb +135 -0
- data/lib/aws/cloud_watch/metric_alarm_collection.rb +160 -0
- data/lib/aws/cloud_watch/metric_collection.rb +131 -0
- data/lib/aws/cloud_watch/metric_statistics.rb +69 -0
- data/lib/aws/cloud_watch/request.rb +23 -0
- data/lib/aws/core.rb +587 -0
- data/lib/aws/core/async_handle.rb +90 -0
- data/lib/aws/core/autoloader.rb +64 -0
- data/lib/aws/core/cacheable.rb +78 -0
- data/lib/aws/core/client.rb +691 -0
- data/lib/aws/core/collection.rb +267 -0
- data/lib/aws/core/collection/simple.rb +82 -0
- data/lib/aws/core/collection/with_limit_and_next_token.rb +71 -0
- data/lib/aws/core/collection/with_next_token.rb +97 -0
- data/lib/aws/core/configuration.rb +546 -0
- data/lib/aws/core/credential_providers.rb +461 -0
- data/lib/aws/core/data.rb +247 -0
- data/lib/aws/core/http/curb_handler.rb +155 -0
- data/lib/aws/core/http/handler.rb +89 -0
- data/lib/aws/core/http/net_http_handler.rb +128 -0
- data/lib/aws/core/http/request.rb +263 -0
- data/lib/aws/core/http/response.rb +81 -0
- data/lib/aws/core/indifferent_hash.rb +88 -0
- data/lib/aws/core/inflection.rb +56 -0
- data/lib/aws/core/json_client.rb +47 -0
- data/lib/aws/core/json_parser.rb +76 -0
- data/lib/aws/core/json_request_builder.rb +35 -0
- data/lib/aws/core/json_response_parser.rb +79 -0
- data/lib/aws/core/lazy_error_classes.rb +90 -0
- data/lib/aws/core/log_formatter.rb +462 -0
- data/lib/aws/core/managed_file.rb +32 -0
- data/lib/aws/core/meta_utils.rb +45 -0
- data/lib/aws/core/model.rb +57 -0
- data/lib/aws/core/naming.rb +30 -0
- data/lib/aws/core/option_grammar.rb +735 -0
- data/lib/aws/core/options/json_serializer.rb +82 -0
- data/lib/aws/core/options/validator.rb +155 -0
- data/lib/aws/core/options/xml_serializer.rb +118 -0
- data/lib/aws/core/page_result.rb +75 -0
- data/lib/aws/core/policy.rb +916 -0
- data/lib/aws/core/query_client.rb +41 -0
- data/lib/aws/core/query_error_parser.rb +24 -0
- data/lib/aws/core/query_request_builder.rb +47 -0
- data/lib/aws/core/query_response_parser.rb +35 -0
- data/lib/aws/core/resource.rb +413 -0
- data/lib/aws/core/resource_cache.rb +40 -0
- data/lib/aws/core/response.rb +208 -0
- data/lib/aws/core/response_cache.rb +50 -0
- data/lib/aws/core/rest_error_parser.rb +24 -0
- data/lib/aws/core/rest_json_client.rb +40 -0
- data/lib/aws/core/rest_request_builder.rb +146 -0
- data/lib/aws/core/rest_response_parser.rb +66 -0
- data/lib/aws/core/rest_xml_client.rb +47 -0
- data/lib/aws/core/service_interface.rb +61 -0
- data/lib/aws/core/signature/version_2.rb +56 -0
- data/lib/aws/core/signature/version_3.rb +77 -0
- data/lib/aws/core/signature/version_3_https.rb +54 -0
- data/lib/aws/core/signature/version_4.rb +135 -0
- data/lib/aws/core/signer.rb +46 -0
- data/lib/aws/core/uri_escape.rb +44 -0
- data/lib/aws/core/xml/frame.rb +244 -0
- data/lib/aws/core/xml/frame_stack.rb +85 -0
- data/lib/aws/core/xml/grammar.rb +307 -0
- data/lib/aws/core/xml/parser.rb +70 -0
- data/lib/aws/core/xml/root_frame.rb +65 -0
- data/lib/aws/core/xml/sax_handlers/libxml.rb +47 -0
- data/lib/aws/core/xml/sax_handlers/nokogiri.rb +55 -0
- data/lib/aws/core/xml/sax_handlers/ox.rb +41 -0
- data/lib/aws/core/xml/sax_handlers/rexml.rb +43 -0
- data/lib/aws/core/xml/stub.rb +123 -0
- data/lib/aws/data_pipeline.rb +73 -0
- data/lib/aws/data_pipeline/client.rb +339 -0
- data/lib/aws/data_pipeline/config.rb +18 -0
- data/lib/aws/data_pipeline/errors.rb +20 -0
- data/lib/aws/data_pipeline/request.rb +26 -0
- data/lib/aws/dynamo_db.rb +206 -0
- data/lib/aws/dynamo_db/attribute_collection.rb +461 -0
- data/lib/aws/dynamo_db/batch_get.rb +213 -0
- data/lib/aws/dynamo_db/batch_write.rb +252 -0
- data/lib/aws/dynamo_db/binary.rb +35 -0
- data/lib/aws/dynamo_db/client.rb +904 -0
- data/lib/aws/dynamo_db/config.rb +24 -0
- data/lib/aws/dynamo_db/errors.rb +20 -0
- data/lib/aws/dynamo_db/expectations.rb +40 -0
- data/lib/aws/dynamo_db/item.rb +133 -0
- data/lib/aws/dynamo_db/item_collection.rb +852 -0
- data/lib/aws/dynamo_db/item_data.rb +31 -0
- data/lib/aws/dynamo_db/keys.rb +41 -0
- data/lib/aws/dynamo_db/primary_key_element.rb +48 -0
- data/lib/aws/dynamo_db/request.rb +26 -0
- data/lib/aws/dynamo_db/resource.rb +33 -0
- data/lib/aws/dynamo_db/table.rb +491 -0
- data/lib/aws/dynamo_db/table_collection.rb +165 -0
- data/lib/aws/dynamo_db/types.rb +111 -0
- data/lib/aws/ec2.rb +440 -0
- data/lib/aws/ec2/attachment.rb +140 -0
- data/lib/aws/ec2/attachment_collection.rb +54 -0
- data/lib/aws/ec2/availability_zone.rb +86 -0
- data/lib/aws/ec2/availability_zone_collection.rb +43 -0
- data/lib/aws/ec2/block_device_mappings.rb +53 -0
- data/lib/aws/ec2/client.rb +3621 -0
- data/lib/aws/ec2/collection.rb +36 -0
- data/lib/aws/ec2/config.rb +18 -0
- data/lib/aws/ec2/config_transform.rb +63 -0
- data/lib/aws/ec2/customer_gateway.rb +90 -0
- data/lib/aws/ec2/customer_gateway_collection.rb +73 -0
- data/lib/aws/ec2/dhcp_options.rb +106 -0
- data/lib/aws/ec2/dhcp_options_collection.rb +87 -0
- data/lib/aws/ec2/elastic_ip.rb +208 -0
- data/lib/aws/ec2/elastic_ip_collection.rb +97 -0
- data/lib/aws/ec2/errors.rb +32 -0
- data/lib/aws/ec2/export_task.rb +120 -0
- data/lib/aws/ec2/export_task_collection.rb +67 -0
- data/lib/aws/ec2/filtered_collection.rb +89 -0
- data/lib/aws/ec2/has_permissions.rb +44 -0
- data/lib/aws/ec2/image.rb +264 -0
- data/lib/aws/ec2/image_collection.rb +228 -0
- data/lib/aws/ec2/instance.rb +796 -0
- data/lib/aws/ec2/instance_collection.rb +372 -0
- data/lib/aws/ec2/internet_gateway.rb +122 -0
- data/lib/aws/ec2/internet_gateway/attachment.rb +78 -0
- data/lib/aws/ec2/internet_gateway_collection.rb +54 -0
- data/lib/aws/ec2/key_pair.rb +82 -0
- data/lib/aws/ec2/key_pair_collection.rb +99 -0
- data/lib/aws/ec2/network_acl.rb +256 -0
- data/lib/aws/ec2/network_acl/association.rb +56 -0
- data/lib/aws/ec2/network_acl/entry.rb +147 -0
- data/lib/aws/ec2/network_acl_collection.rb +64 -0
- data/lib/aws/ec2/network_interface.rb +228 -0
- data/lib/aws/ec2/network_interface/attachment.rb +100 -0
- data/lib/aws/ec2/network_interface_collection.rb +103 -0
- data/lib/aws/ec2/permission_collection.rb +174 -0
- data/lib/aws/ec2/region.rb +106 -0
- data/lib/aws/ec2/region_collection.rb +51 -0
- data/lib/aws/ec2/request.rb +21 -0
- data/lib/aws/ec2/reserved_instances.rb +56 -0
- data/lib/aws/ec2/reserved_instances_collection.rb +40 -0
- data/lib/aws/ec2/reserved_instances_offering.rb +60 -0
- data/lib/aws/ec2/reserved_instances_offering_collection.rb +39 -0
- data/lib/aws/ec2/resource.rb +161 -0
- data/lib/aws/ec2/resource_tag_collection.rb +211 -0
- data/lib/aws/ec2/route_table.rb +205 -0
- data/lib/aws/ec2/route_table/association.rb +119 -0
- data/lib/aws/ec2/route_table/route.rb +119 -0
- data/lib/aws/ec2/route_table_collection.rb +72 -0
- data/lib/aws/ec2/security_group.rb +484 -0
- data/lib/aws/ec2/security_group/ip_permission.rb +135 -0
- data/lib/aws/ec2/security_group/ip_permission_collection.rb +82 -0
- data/lib/aws/ec2/security_group_collection.rb +135 -0
- data/lib/aws/ec2/snapshot.rb +143 -0
- data/lib/aws/ec2/snapshot_collection.rb +132 -0
- data/lib/aws/ec2/subnet.rb +161 -0
- data/lib/aws/ec2/subnet_collection.rb +115 -0
- data/lib/aws/ec2/tag.rb +81 -0
- data/lib/aws/ec2/tag_collection.rb +107 -0
- data/lib/aws/ec2/tagged_collection.rb +53 -0
- data/lib/aws/ec2/tagged_item.rb +85 -0
- data/lib/aws/ec2/volume.rb +174 -0
- data/lib/aws/ec2/volume_collection.rb +101 -0
- data/lib/aws/ec2/vpc.rb +166 -0
- data/lib/aws/ec2/vpc_collection.rb +70 -0
- data/lib/aws/ec2/vpn_connection.rb +99 -0
- data/lib/aws/ec2/vpn_connection/telemetry.rb +49 -0
- data/lib/aws/ec2/vpn_connection_collection.rb +96 -0
- data/lib/aws/ec2/vpn_gateway.rb +123 -0
- data/lib/aws/ec2/vpn_gateway/attachment.rb +45 -0
- data/lib/aws/ec2/vpn_gateway_collection.rb +77 -0
- data/lib/aws/elastic_beanstalk.rb +50 -0
- data/lib/aws/elastic_beanstalk/client.rb +867 -0
- data/lib/aws/elastic_beanstalk/config.rb +18 -0
- data/lib/aws/elastic_beanstalk/errors.rb +22 -0
- data/lib/aws/elastic_beanstalk/request.rb +29 -0
- data/lib/aws/elastic_transcoder.rb +30 -0
- data/lib/aws/elastic_transcoder/client.rb +672 -0
- data/lib/aws/elastic_transcoder/config.rb +18 -0
- data/lib/aws/elastic_transcoder/errors.rb +23 -0
- data/lib/aws/elastic_transcoder/request.rb +30 -0
- data/lib/aws/elasticache.rb +50 -0
- data/lib/aws/elasticache/client.rb +920 -0
- data/lib/aws/elasticache/config.rb +18 -0
- data/lib/aws/elasticache/errors.rb +22 -0
- data/lib/aws/elasticache/request.rb +23 -0
- data/lib/aws/elb.rb +67 -0
- data/lib/aws/elb/availability_zone_collection.rb +138 -0
- data/lib/aws/elb/backend_server_policy_collection.rb +139 -0
- data/lib/aws/elb/client.rb +500 -0
- data/lib/aws/elb/config.rb +18 -0
- data/lib/aws/elb/errors.rb +26 -0
- data/lib/aws/elb/instance_collection.rb +173 -0
- data/lib/aws/elb/listener.rb +190 -0
- data/lib/aws/elb/listener_collection.rb +113 -0
- data/lib/aws/elb/listener_opts.rb +45 -0
- data/lib/aws/elb/load_balancer.rb +281 -0
- data/lib/aws/elb/load_balancer_collection.rb +134 -0
- data/lib/aws/elb/load_balancer_policy.rb +93 -0
- data/lib/aws/elb/load_balancer_policy_collection.rb +208 -0
- data/lib/aws/elb/request.rb +29 -0
- data/lib/aws/emr.rb +86 -0
- data/lib/aws/emr/client.rb +330 -0
- data/lib/aws/emr/config.rb +18 -0
- data/lib/aws/emr/errors.rb +22 -0
- data/lib/aws/emr/instance_group.rb +138 -0
- data/lib/aws/emr/instance_group_collection.rb +82 -0
- data/lib/aws/emr/job_flow.rb +306 -0
- data/lib/aws/emr/job_flow_collection.rb +185 -0
- data/lib/aws/emr/request.rb +23 -0
- data/lib/aws/errors.rb +162 -0
- data/lib/aws/glacier.rb +80 -0
- data/lib/aws/glacier/archive.rb +56 -0
- data/lib/aws/glacier/archive_collection.rb +146 -0
- data/lib/aws/glacier/client.rb +286 -0
- data/lib/aws/glacier/config.rb +19 -0
- data/lib/aws/glacier/errors.rb +22 -0
- data/lib/aws/glacier/request.rb +34 -0
- data/lib/aws/glacier/resource.rb +30 -0
- data/lib/aws/glacier/vault.rb +145 -0
- data/lib/aws/glacier/vault_collection.rb +75 -0
- data/lib/aws/glacier/vault_notification_configuration.rb +29 -0
- data/lib/aws/iam.rb +420 -0
- data/lib/aws/iam/access_key.rb +180 -0
- data/lib/aws/iam/access_key_collection.rb +128 -0
- data/lib/aws/iam/account_alias_collection.rb +79 -0
- data/lib/aws/iam/client.rb +1092 -0
- data/lib/aws/iam/collection.rb +83 -0
- data/lib/aws/iam/config.rb +18 -0
- data/lib/aws/iam/errors.rb +22 -0
- data/lib/aws/iam/group.rb +111 -0
- data/lib/aws/iam/group_collection.rb +132 -0
- data/lib/aws/iam/group_policy_collection.rb +47 -0
- data/lib/aws/iam/group_user_collection.rb +84 -0
- data/lib/aws/iam/login_profile.rb +99 -0
- data/lib/aws/iam/mfa_device.rb +52 -0
- data/lib/aws/iam/mfa_device_collection.rb +127 -0
- data/lib/aws/iam/policy.rb +46 -0
- data/lib/aws/iam/policy_collection.rb +188 -0
- data/lib/aws/iam/request.rb +29 -0
- data/lib/aws/iam/resource.rb +62 -0
- data/lib/aws/iam/server_certificate.rb +141 -0
- data/lib/aws/iam/server_certificate_collection.rb +138 -0
- data/lib/aws/iam/signing_certificate.rb +169 -0
- data/lib/aws/iam/signing_certificate_collection.rb +131 -0
- data/lib/aws/iam/user.rb +205 -0
- data/lib/aws/iam/user_collection.rb +133 -0
- data/lib/aws/iam/user_group_collection.rb +98 -0
- data/lib/aws/iam/user_policy.rb +90 -0
- data/lib/aws/iam/user_policy_collection.rb +45 -0
- data/lib/aws/iam/virtual_mfa_device.rb +139 -0
- data/lib/aws/iam/virtual_mfa_device_collection.rb +73 -0
- data/lib/aws/import_export.rb +73 -0
- data/lib/aws/import_export/client.rb +109 -0
- data/lib/aws/import_export/config.rb +19 -0
- data/lib/aws/import_export/errors.rb +22 -0
- data/lib/aws/import_export/request.rb +23 -0
- data/lib/aws/ops_works.rb +30 -0
- data/lib/aws/ops_works/client.rb +713 -0
- data/lib/aws/ops_works/config.rb +18 -0
- data/lib/aws/ops_works/errors.rb +20 -0
- data/lib/aws/ops_works/request.rb +27 -0
- data/lib/aws/rails.rb +195 -0
- data/lib/aws/rds.rb +71 -0
- data/lib/aws/rds/client.rb +2228 -0
- data/lib/aws/rds/config.rb +18 -0
- data/lib/aws/rds/db_instance.rb +205 -0
- data/lib/aws/rds/db_instance_collection.rb +75 -0
- data/lib/aws/rds/db_snapshot.rb +163 -0
- data/lib/aws/rds/db_snapshot_collection.rb +89 -0
- data/lib/aws/rds/errors.rb +22 -0
- data/lib/aws/rds/request.rb +23 -0
- data/lib/aws/record.rb +116 -0
- data/lib/aws/record/abstract_base.rb +701 -0
- data/lib/aws/record/attributes.rb +384 -0
- data/lib/aws/record/conversion.rb +38 -0
- data/lib/aws/record/dirty_tracking.rb +285 -0
- data/lib/aws/record/errors.rb +143 -0
- data/lib/aws/record/exceptions.rb +48 -0
- data/lib/aws/record/hash_model.rb +161 -0
- data/lib/aws/record/hash_model/attributes.rb +197 -0
- data/lib/aws/record/hash_model/finder_methods.rb +172 -0
- data/lib/aws/record/hash_model/scope.rb +108 -0
- data/lib/aws/record/model.rb +427 -0
- data/lib/aws/record/model/attributes.rb +379 -0
- data/lib/aws/record/model/finder_methods.rb +232 -0
- data/lib/aws/record/model/scope.rb +213 -0
- data/lib/aws/record/naming.rb +31 -0
- data/lib/aws/record/scope.rb +199 -0
- data/lib/aws/record/validations.rb +712 -0
- data/lib/aws/record/validator.rb +246 -0
- data/lib/aws/record/validators/acceptance.rb +51 -0
- data/lib/aws/record/validators/block.rb +38 -0
- data/lib/aws/record/validators/confirmation.rb +43 -0
- data/lib/aws/record/validators/count.rb +108 -0
- data/lib/aws/record/validators/exclusion.rb +43 -0
- data/lib/aws/record/validators/format.rb +57 -0
- data/lib/aws/record/validators/inclusion.rb +56 -0
- data/lib/aws/record/validators/length.rb +107 -0
- data/lib/aws/record/validators/method.rb +33 -0
- data/lib/aws/record/validators/numericality.rb +138 -0
- data/lib/aws/record/validators/presence.rb +45 -0
- data/lib/aws/redshift.rb +52 -0
- data/lib/aws/redshift/client.rb +1291 -0
- data/lib/aws/redshift/config.rb +18 -0
- data/lib/aws/redshift/errors.rb +22 -0
- data/lib/aws/redshift/request.rb +29 -0
- data/lib/aws/route_53.rb +87 -0
- data/lib/aws/route_53/change_batch.rb +159 -0
- data/lib/aws/route_53/change_info.rb +72 -0
- data/lib/aws/route_53/client.rb +387 -0
- data/lib/aws/route_53/config.rb +18 -0
- data/lib/aws/route_53/errors.rb +22 -0
- data/lib/aws/route_53/hosted_zone.rb +111 -0
- data/lib/aws/route_53/hosted_zone_collection.rb +100 -0
- data/lib/aws/route_53/request.rb +23 -0
- data/lib/aws/route_53/resource_record_set.rb +237 -0
- data/lib/aws/route_53/resource_record_set_collection.rb +110 -0
- data/lib/aws/s3.rb +155 -0
- data/lib/aws/s3/access_control_list.rb +257 -0
- data/lib/aws/s3/acl_object.rb +264 -0
- data/lib/aws/s3/acl_options.rb +204 -0
- data/lib/aws/s3/bucket.rb +742 -0
- data/lib/aws/s3/bucket_collection.rb +160 -0
- data/lib/aws/s3/bucket_lifecycle_configuration.rb +458 -0
- data/lib/aws/s3/bucket_tag_collection.rb +109 -0
- data/lib/aws/s3/bucket_version_collection.rb +77 -0
- data/lib/aws/s3/cipher_io.rb +119 -0
- data/lib/aws/s3/client.rb +1700 -0
- data/lib/aws/s3/client/xml.rb +231 -0
- data/lib/aws/s3/config.rb +36 -0
- data/lib/aws/s3/cors_rule.rb +106 -0
- data/lib/aws/s3/cors_rule_collection.rb +192 -0
- data/lib/aws/s3/data_options.rb +185 -0
- data/lib/aws/s3/encryption_utils.rb +139 -0
- data/lib/aws/s3/errors.rb +94 -0
- data/lib/aws/s3/multipart_upload.rb +320 -0
- data/lib/aws/s3/multipart_upload_collection.rb +68 -0
- data/lib/aws/s3/object_collection.rb +355 -0
- data/lib/aws/s3/object_metadata.rb +96 -0
- data/lib/aws/s3/object_upload_collection.rb +77 -0
- data/lib/aws/s3/object_version.rb +148 -0
- data/lib/aws/s3/object_version_collection.rb +89 -0
- data/lib/aws/s3/paginated_collection.rb +75 -0
- data/lib/aws/s3/policy.rb +74 -0
- data/lib/aws/s3/prefix_and_delimiter_collection.rb +47 -0
- data/lib/aws/s3/prefixed_collection.rb +81 -0
- data/lib/aws/s3/presigned_post.rb +555 -0
- data/lib/aws/s3/request.rb +201 -0
- data/lib/aws/s3/s3_object.rb +1690 -0
- data/lib/aws/s3/tree.rb +118 -0
- data/lib/aws/s3/tree/branch_node.rb +68 -0
- data/lib/aws/s3/tree/child_collection.rb +104 -0
- data/lib/aws/s3/tree/leaf_node.rb +94 -0
- data/lib/aws/s3/tree/node.rb +22 -0
- data/lib/aws/s3/tree/parent.rb +87 -0
- data/lib/aws/s3/uploaded_part.rb +80 -0
- data/lib/aws/s3/uploaded_part_collection.rb +84 -0
- data/lib/aws/s3/website_configuration.rb +102 -0
- data/lib/aws/simple_db.rb +219 -0
- data/lib/aws/simple_db/attribute.rb +154 -0
- data/lib/aws/simple_db/attribute_collection.rb +231 -0
- data/lib/aws/simple_db/client.rb +287 -0
- data/lib/aws/simple_db/config.rb +20 -0
- data/lib/aws/simple_db/consistent_read_option.rb +42 -0
- data/lib/aws/simple_db/delete_attributes.rb +62 -0
- data/lib/aws/simple_db/domain.rb +121 -0
- data/lib/aws/simple_db/domain_collection.rb +86 -0
- data/lib/aws/simple_db/domain_metadata.rb +110 -0
- data/lib/aws/simple_db/errors.rb +55 -0
- data/lib/aws/simple_db/expect_condition_option.rb +45 -0
- data/lib/aws/simple_db/item.rb +93 -0
- data/lib/aws/simple_db/item_collection.rb +649 -0
- data/lib/aws/simple_db/item_data.rb +73 -0
- data/lib/aws/simple_db/put_attributes.rb +60 -0
- data/lib/aws/simple_db/request.rb +23 -0
- data/lib/aws/simple_email_service.rb +428 -0
- data/lib/aws/simple_email_service/client.rb +276 -0
- data/lib/aws/simple_email_service/config.rb +19 -0
- data/lib/aws/simple_email_service/email_address_collection.rb +69 -0
- data/lib/aws/simple_email_service/errors.rb +22 -0
- data/lib/aws/simple_email_service/identity.rb +209 -0
- data/lib/aws/simple_email_service/identity_collection.rb +81 -0
- data/lib/aws/simple_email_service/quotas.rb +64 -0
- data/lib/aws/simple_email_service/request.rb +27 -0
- data/lib/aws/simple_workflow.rb +228 -0
- data/lib/aws/simple_workflow/activity_task.rb +173 -0
- data/lib/aws/simple_workflow/activity_task_collection.rb +123 -0
- data/lib/aws/simple_workflow/activity_type.rb +131 -0
- data/lib/aws/simple_workflow/activity_type_collection.rb +93 -0
- data/lib/aws/simple_workflow/client.rb +1204 -0
- data/lib/aws/simple_workflow/config.rb +18 -0
- data/lib/aws/simple_workflow/count.rb +49 -0
- data/lib/aws/simple_workflow/decision_task.rb +603 -0
- data/lib/aws/simple_workflow/decision_task_collection.rb +225 -0
- data/lib/aws/simple_workflow/domain.rb +122 -0
- data/lib/aws/simple_workflow/domain_collection.rb +169 -0
- data/lib/aws/simple_workflow/errors.rb +20 -0
- data/lib/aws/simple_workflow/history_event.rb +276 -0
- data/lib/aws/simple_workflow/history_event_collection.rb +76 -0
- data/lib/aws/simple_workflow/option_formatters.rb +82 -0
- data/lib/aws/simple_workflow/request.rb +33 -0
- data/lib/aws/simple_workflow/resource.rb +94 -0
- data/lib/aws/simple_workflow/type.rb +89 -0
- data/lib/aws/simple_workflow/type_collection.rb +140 -0
- data/lib/aws/simple_workflow/workflow_execution.rb +386 -0
- data/lib/aws/simple_workflow/workflow_execution_collection.rb +617 -0
- data/lib/aws/simple_workflow/workflow_type.rb +177 -0
- data/lib/aws/simple_workflow/workflow_type_collection.rb +91 -0
- data/lib/aws/sns.rb +76 -0
- data/lib/aws/sns/client.rb +266 -0
- data/lib/aws/sns/config.rb +18 -0
- data/lib/aws/sns/errors.rb +22 -0
- data/lib/aws/sns/has_delivery_policy.rb +68 -0
- data/lib/aws/sns/policy.rb +47 -0
- data/lib/aws/sns/request.rb +23 -0
- data/lib/aws/sns/subscription.rb +144 -0
- data/lib/aws/sns/subscription_collection.rb +78 -0
- data/lib/aws/sns/topic.rb +403 -0
- data/lib/aws/sns/topic_collection.rb +62 -0
- data/lib/aws/sns/topic_subscription_collection.rb +54 -0
- data/lib/aws/sqs.rb +81 -0
- data/lib/aws/sqs/client.rb +258 -0
- data/lib/aws/sqs/config.rb +18 -0
- data/lib/aws/sqs/errors.rb +101 -0
- data/lib/aws/sqs/policy.rb +48 -0
- data/lib/aws/sqs/queue.rb +764 -0
- data/lib/aws/sqs/queue_collection.rb +174 -0
- data/lib/aws/sqs/received_message.rb +181 -0
- data/lib/aws/sqs/received_sns_message.rb +116 -0
- data/lib/aws/sqs/request.rb +67 -0
- data/lib/aws/storage_gateway.rb +73 -0
- data/lib/aws/storage_gateway/client.rb +472 -0
- data/lib/aws/storage_gateway/config.rb +18 -0
- data/lib/aws/storage_gateway/errors.rb +22 -0
- data/lib/aws/storage_gateway/request.rb +28 -0
- data/lib/aws/sts.rb +163 -0
- data/lib/aws/sts/client.rb +157 -0
- data/lib/aws/sts/config.rb +18 -0
- data/lib/aws/sts/errors.rb +22 -0
- data/lib/aws/sts/federated_session.rb +56 -0
- data/lib/aws/sts/policy.rb +30 -0
- data/lib/aws/sts/request.rb +29 -0
- data/lib/aws/sts/session.rb +48 -0
- data/lib/aws/version.rb +18 -0
- data/lib/net/http/connection_pool.rb +226 -0
- data/lib/net/http/connection_pool/connection.rb +189 -0
- data/lib/net/http/connection_pool/session.rb +126 -0
- data/rails/init.rb +15 -0
- metadata +632 -0
|
@@ -0,0 +1,180 @@
|
|
|
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
|
+
class AccessKey < Resource
|
|
21
|
+
|
|
22
|
+
# @param [String] access_key_id The id of this access key.
|
|
23
|
+
# @param [Hash] options
|
|
24
|
+
# @option [String] :user The IAM user this access key belongs to.
|
|
25
|
+
# If +:user+ is omitted then this access key belongs to the
|
|
26
|
+
# AWS account.
|
|
27
|
+
def initialize access_key_id, options = {}
|
|
28
|
+
@id = access_key_id
|
|
29
|
+
options[:secret_value] = nil unless options.has_key?(:secret_value)
|
|
30
|
+
@user = options[:user]
|
|
31
|
+
@user ? super(@user, options) : super(options)
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# @return [User,nil] Returns the user this access key belongs to.
|
|
35
|
+
# Returns +nil+ if this access key belongs to the AWS account and not
|
|
36
|
+
# a specific user.
|
|
37
|
+
attr_reader :user
|
|
38
|
+
|
|
39
|
+
# @return [String] Returns the access key id.
|
|
40
|
+
attr_reader :id
|
|
41
|
+
|
|
42
|
+
alias_method :access_key_id, :id
|
|
43
|
+
|
|
44
|
+
attribute :secret_value, :from => :secret_access_key, :static => true
|
|
45
|
+
|
|
46
|
+
protected :secret_value
|
|
47
|
+
|
|
48
|
+
mutable_attribute :status, :to_sym => true
|
|
49
|
+
|
|
50
|
+
protected :status=
|
|
51
|
+
|
|
52
|
+
populates_from(:create_access_key) do |resp|
|
|
53
|
+
resp.access_key if matches_response_object?(resp.access_key)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
populates_from(:list_access_keys) do |resp|
|
|
57
|
+
resp.access_key_metadata.find {|k| matches_response_object?(k) }
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
# Returns the secret access key.
|
|
61
|
+
#
|
|
62
|
+
# You can only access the secret for newly created access
|
|
63
|
+
# keys. Calling +secret+ on existing access keys raises an error.
|
|
64
|
+
#
|
|
65
|
+
# @example Getting the secret from a newly created access key
|
|
66
|
+
#
|
|
67
|
+
# access_key = iam.access_keys.create
|
|
68
|
+
# access_key.secret
|
|
69
|
+
# #=> 'SECRET_ACCESS_KEY'
|
|
70
|
+
#
|
|
71
|
+
# @example Failing to get the secret from an existing access key.
|
|
72
|
+
#
|
|
73
|
+
# access_key = iam.access_keys.first
|
|
74
|
+
# access_key.secret
|
|
75
|
+
# #=> raises a runtime error
|
|
76
|
+
#
|
|
77
|
+
# @return [String] Returns the secret access key.
|
|
78
|
+
def secret
|
|
79
|
+
secret_value or raise 'secret is only available for new access keys'
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
alias_method :secret_access_key, :secret
|
|
83
|
+
|
|
84
|
+
# @return [String,nil] Returns the name of the user this access key
|
|
85
|
+
# belogns to. If the access key belongs to the account, +nil+ is
|
|
86
|
+
# returned.
|
|
87
|
+
def user_name
|
|
88
|
+
@user ? @user.name : nil
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
# @return [Boolean] Returns true if this access key is active.
|
|
92
|
+
def active?
|
|
93
|
+
status == :active
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
# @return [Boolean] Returns true if this access key is inactive.
|
|
97
|
+
def inactive?
|
|
98
|
+
status == :inactive
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
# Activates this access key.
|
|
102
|
+
#
|
|
103
|
+
# @example
|
|
104
|
+
# access_key.activate!
|
|
105
|
+
# access_key.status
|
|
106
|
+
# # => :active
|
|
107
|
+
#
|
|
108
|
+
# @return [nil]
|
|
109
|
+
def activate!
|
|
110
|
+
self.status = 'Active'
|
|
111
|
+
nil
|
|
112
|
+
end
|
|
113
|
+
|
|
114
|
+
# Deactivates this access key.
|
|
115
|
+
#
|
|
116
|
+
# @example
|
|
117
|
+
# access_key.deactivate!
|
|
118
|
+
# access_key.status
|
|
119
|
+
# # => :inactive
|
|
120
|
+
#
|
|
121
|
+
# @return [nil]
|
|
122
|
+
# @return [nil]
|
|
123
|
+
def deactivate!
|
|
124
|
+
self.status = 'Inactive'
|
|
125
|
+
nil
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
# Deletes the access key.
|
|
129
|
+
def delete
|
|
130
|
+
client.delete_access_key(resource_options)
|
|
131
|
+
nil
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
# Returns a hash that should be saved somewhere safe.
|
|
135
|
+
#
|
|
136
|
+
# access_keys = iam.access_keys.create
|
|
137
|
+
# access_keys.credentials
|
|
138
|
+
# #=> { :access_key_id => '...', :secret_access_key => '...' }
|
|
139
|
+
#
|
|
140
|
+
# You can also use these credentials to make requests:
|
|
141
|
+
#
|
|
142
|
+
# s3 = AWS::S3.new(access_keys.credentials)
|
|
143
|
+
# s3.buckets.create('newbucket')
|
|
144
|
+
#
|
|
145
|
+
# @return [Hash] Returns a hash with the access key id and
|
|
146
|
+
# secret access key.
|
|
147
|
+
def credentials
|
|
148
|
+
{ :access_key_id => id, :secret_access_key => secret }
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
# @private
|
|
152
|
+
protected
|
|
153
|
+
def resource_identifiers
|
|
154
|
+
identifiers = []
|
|
155
|
+
identifiers << [:access_key_id, id]
|
|
156
|
+
identifiers << [:user_name, user.name] if user
|
|
157
|
+
identifiers
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
# IAM does not provide a request for "get access keys".
|
|
161
|
+
# Also note, we do not page the response. This is because
|
|
162
|
+
# restrictions on how many access keys an account / user may
|
|
163
|
+
# have is fewer than one page of results.
|
|
164
|
+
# @private
|
|
165
|
+
protected
|
|
166
|
+
def get_resource attribute
|
|
167
|
+
options = user ? { :user_name => user.name } : {}
|
|
168
|
+
client.list_access_keys(options)
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
# @private
|
|
172
|
+
protected
|
|
173
|
+
def matches_response_object? obj
|
|
174
|
+
user_name = obj.respond_to?(:user_name) ? obj.user_name : nil
|
|
175
|
+
obj.access_key_id == self.id and user_name == self.user_name
|
|
176
|
+
end
|
|
177
|
+
|
|
178
|
+
end
|
|
179
|
+
end
|
|
180
|
+
end
|
|
@@ -0,0 +1,128 @@
|
|
|
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
|
+
# Both AWS accounts and IAM users can have access keys (maximum of 2).
|
|
18
|
+
# You can create new keys so that you can rotate out your old keys.
|
|
19
|
+
# You can create, delete, activate and deactivate access keys.
|
|
20
|
+
#
|
|
21
|
+
# == Create New Access Keys
|
|
22
|
+
#
|
|
23
|
+
# # for the aws account
|
|
24
|
+
# access_keys = iam.access_keys.create
|
|
25
|
+
#
|
|
26
|
+
# # for an iam user
|
|
27
|
+
# user_access_keys = iam.users['johndoe'].access_keys.create
|
|
28
|
+
#
|
|
29
|
+
# == Secret
|
|
30
|
+
#
|
|
31
|
+
# Make sure after creating an access to retrieve the secret access key
|
|
32
|
+
# and save it somewhere safe.
|
|
33
|
+
#
|
|
34
|
+
# access_keys = iam.access_keys.create
|
|
35
|
+
# secret = access_keys.secret
|
|
36
|
+
#
|
|
37
|
+
# If you try to access the secret on an access key that was not newly
|
|
38
|
+
# created an error will be raised. AWS will only give the secret for
|
|
39
|
+
# a newly created access key:
|
|
40
|
+
#
|
|
41
|
+
# access_keys = iam.access_keys.first
|
|
42
|
+
# access_keys.secret
|
|
43
|
+
# #=> oops, raises a runtime error
|
|
44
|
+
#
|
|
45
|
+
class AccessKeyCollection
|
|
46
|
+
|
|
47
|
+
include Collection
|
|
48
|
+
|
|
49
|
+
# @param [Hash] options
|
|
50
|
+
# @option options [User] :user If present, this collection will only
|
|
51
|
+
# represent the access keys for the given user.
|
|
52
|
+
def initialize options = {}
|
|
53
|
+
@user = options[:user]
|
|
54
|
+
@user ? super(@user, options) : super(options)
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# @return [User,nil] Returns the user these accesss keys belong to.
|
|
58
|
+
# If this returns +nil+ then these access keys belong to the
|
|
59
|
+
# AWS account.
|
|
60
|
+
attr_reader :user
|
|
61
|
+
|
|
62
|
+
def create
|
|
63
|
+
|
|
64
|
+
options = {}
|
|
65
|
+
options[:user_name] = user.name if user
|
|
66
|
+
|
|
67
|
+
resp = client.create_access_key(options)
|
|
68
|
+
|
|
69
|
+
AccessKey.new_from(:create_access_key, resp.access_key,
|
|
70
|
+
resp.access_key.access_key_id, new_options)
|
|
71
|
+
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# @param [String] access_key_id The ID of the access key.
|
|
75
|
+
# @return [AccessKey] Returns a reference to the access key with
|
|
76
|
+
# the given +access_key_id+.
|
|
77
|
+
def [] access_key_id
|
|
78
|
+
AccessKey.new(access_key_id, new_options)
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
# Deletes all of the access keys from this collection.
|
|
82
|
+
#
|
|
83
|
+
# iam.users['someuser'].access_keys.clear
|
|
84
|
+
#
|
|
85
|
+
# @return [nil]
|
|
86
|
+
def clear
|
|
87
|
+
each{|access_key| access_key.delete }
|
|
88
|
+
nil
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
# Yields once for each access key. You can limit the number of
|
|
92
|
+
# access keys yielded using +:limit+.
|
|
93
|
+
#
|
|
94
|
+
# @param [Hash] options
|
|
95
|
+
# @option options [Integer] :limit The maximum number of access keys
|
|
96
|
+
# to yield.
|
|
97
|
+
# @option options [Integer] :batch_size The maximum number of
|
|
98
|
+
# access keys received each service reqeust.
|
|
99
|
+
# @yieldparam [AccessKey] access_key
|
|
100
|
+
# @return [nil]
|
|
101
|
+
def each options = {}, &block
|
|
102
|
+
each_options = options.dup
|
|
103
|
+
each_options[:user_name] = user.name if user
|
|
104
|
+
super(each_options, &block)
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
# @private
|
|
108
|
+
protected
|
|
109
|
+
def each_item response, &block
|
|
110
|
+
response.access_key_metadata.each do |item|
|
|
111
|
+
|
|
112
|
+
access_key = AccessKey.new_from(:list_access_keys, item,
|
|
113
|
+
item.access_key_id, new_options)
|
|
114
|
+
|
|
115
|
+
yield(access_key)
|
|
116
|
+
|
|
117
|
+
end
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
# @private
|
|
121
|
+
protected
|
|
122
|
+
def new_options
|
|
123
|
+
user ? { :user => user } : { :config => config }
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
end
|
|
@@ -0,0 +1,79 @@
|
|
|
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
|
+
# @private
|
|
18
|
+
#
|
|
19
|
+
# Currently IAM exposes the account alias in a collection, as if you
|
|
20
|
+
# could create/manage multiple aliases for a single account. However,
|
|
21
|
+
# creating a 2nd alias replaces the first, it does not add an additional
|
|
22
|
+
# alias.
|
|
23
|
+
#
|
|
24
|
+
# Because the API is modeled as a collection this class could be used
|
|
25
|
+
# to work with it, but instead we consume this by the IAM class for
|
|
26
|
+
# the following methods:
|
|
27
|
+
#
|
|
28
|
+
# * create_account_alias
|
|
29
|
+
# * account_alias
|
|
30
|
+
# * remove_account_alias
|
|
31
|
+
#
|
|
32
|
+
# If IAM allows accounts to have multiple aliases, then those previous
|
|
33
|
+
# 3 methods will be deprecated and this interface will be exposed.
|
|
34
|
+
class AccountAliasCollection
|
|
35
|
+
|
|
36
|
+
include Collection
|
|
37
|
+
|
|
38
|
+
# Creates an AWS account alias.
|
|
39
|
+
#
|
|
40
|
+
# iam.account_aliases.create('myaccountalias')
|
|
41
|
+
#
|
|
42
|
+
# For information about account alias restrictions and usage,
|
|
43
|
+
# see http://docs.amazonwebservices.com/IAM/latest/UserGuide/index.html?AccountAlias.html.
|
|
44
|
+
#
|
|
45
|
+
# @param [String] account_alias
|
|
46
|
+
# @return [String] Returns the account_alias string that was passed.
|
|
47
|
+
def create account_alias
|
|
48
|
+
client.create_account_alias(:account_alias => account_alias)
|
|
49
|
+
account_alias
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# Delete an AWS account alias.
|
|
53
|
+
#
|
|
54
|
+
# iam.account_aliases.delete('myaccountalias')
|
|
55
|
+
#
|
|
56
|
+
# @param [String] account_alias The account alias to delete.
|
|
57
|
+
# @return [nil]
|
|
58
|
+
def delete account_alias
|
|
59
|
+
client.delete_account_alias(:account_alias => account_alias)
|
|
60
|
+
nil
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# @private
|
|
64
|
+
protected
|
|
65
|
+
def request_method
|
|
66
|
+
:list_account_aliases
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# @private
|
|
70
|
+
protected
|
|
71
|
+
def each_item response, &block
|
|
72
|
+
response.data[:account_aliases].each do |account_alias|
|
|
73
|
+
yield(account_alias)
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
end
|
|
@@ -0,0 +1,1092 @@
|
|
|
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
|
+
# Client class for AWS Identity and Access Management (IAM).
|
|
18
|
+
class Client < Core::QueryClient
|
|
19
|
+
|
|
20
|
+
# @private
|
|
21
|
+
CACHEABLE_REQUESTS = Set[
|
|
22
|
+
:get_group,
|
|
23
|
+
:get_group_policy,
|
|
24
|
+
:get_instance_profile,
|
|
25
|
+
:get_role_policy,
|
|
26
|
+
:list_groups,
|
|
27
|
+
:list_group_policies,
|
|
28
|
+
:list_groups_for_user,
|
|
29
|
+
:list_instance_profiles,
|
|
30
|
+
:list_instance_profiles_for_role,
|
|
31
|
+
:list_role_policies,
|
|
32
|
+
:list_roles,
|
|
33
|
+
:list_server_certificates,
|
|
34
|
+
:list_virtual_mfa_devices,
|
|
35
|
+
]
|
|
36
|
+
|
|
37
|
+
# client methods #
|
|
38
|
+
|
|
39
|
+
# @!method add_role_to_instance_profile(options = {})
|
|
40
|
+
# Calls the AddRoleToInstanceProfile API operation.
|
|
41
|
+
# @param [Hash] options
|
|
42
|
+
# * +:instance_profile_name+ - *required* - (String) Name of the
|
|
43
|
+
# instance profile to update.
|
|
44
|
+
# * +:role_name+ - *required* - (String) Name of the role to add.
|
|
45
|
+
# @return [Core::Response]
|
|
46
|
+
|
|
47
|
+
# @!method add_user_to_group(options = {})
|
|
48
|
+
# Calls the AddUserToGroup API operation.
|
|
49
|
+
# @param [Hash] options
|
|
50
|
+
# * +:group_name+ - *required* - (String) Name of the group to update.
|
|
51
|
+
# * +:user_name+ - *required* - (String) Name of the user to add.
|
|
52
|
+
# @return [Core::Response]
|
|
53
|
+
|
|
54
|
+
# @!method change_password(options = {})
|
|
55
|
+
# Calls the ChangePassword API operation.
|
|
56
|
+
# @param [Hash] options
|
|
57
|
+
# * +:old_password+ - *required* - (String)
|
|
58
|
+
# * +:new_password+ - *required* - (String)
|
|
59
|
+
# @return [Core::Response]
|
|
60
|
+
|
|
61
|
+
# @!method create_access_key(options = {})
|
|
62
|
+
# Calls the CreateAccessKey API operation.
|
|
63
|
+
# @param [Hash] options
|
|
64
|
+
# * +:user_name+ - (String) The user name that the new key will belong
|
|
65
|
+
# to.
|
|
66
|
+
# @return [Core::Response]
|
|
67
|
+
# The #data method of the response object returns
|
|
68
|
+
# a hash with the following structure:
|
|
69
|
+
# * +:access_key+ - (Hash)
|
|
70
|
+
# * +:user_name+ - (String)
|
|
71
|
+
# * +:access_key_id+ - (String)
|
|
72
|
+
# * +:status+ - (String)
|
|
73
|
+
# * +:secret_access_key+ - (String)
|
|
74
|
+
# * +:create_date+ - (Time)
|
|
75
|
+
|
|
76
|
+
# @!method create_account_alias(options = {})
|
|
77
|
+
# Calls the CreateAccountAlias API operation.
|
|
78
|
+
# @param [Hash] options
|
|
79
|
+
# * +:account_alias+ - *required* - (String) Name of the account alias
|
|
80
|
+
# to create.
|
|
81
|
+
# @return [Core::Response]
|
|
82
|
+
|
|
83
|
+
# @!method create_group(options = {})
|
|
84
|
+
# Calls the CreateGroup API operation.
|
|
85
|
+
# @param [Hash] options
|
|
86
|
+
# * +:path+ - (String) The path to the group. For more information
|
|
87
|
+
# about paths, see Identifiers for IAM Entities in Using AWS Identity
|
|
88
|
+
# and Access Management. This parameter is optional. If it is not
|
|
89
|
+
# included, it defaults to a slash (/).
|
|
90
|
+
# * +:group_name+ - *required* - (String) Name of the group to create.
|
|
91
|
+
# Do not include the path in this value.
|
|
92
|
+
# @return [Core::Response]
|
|
93
|
+
# The #data method of the response object returns
|
|
94
|
+
# a hash with the following structure:
|
|
95
|
+
# * +:group+ - (Hash)
|
|
96
|
+
# * +:path+ - (String)
|
|
97
|
+
# * +:group_name+ - (String)
|
|
98
|
+
# * +:group_id+ - (String)
|
|
99
|
+
# * +:arn+ - (String)
|
|
100
|
+
# * +:create_date+ - (Time)
|
|
101
|
+
|
|
102
|
+
# @!method create_instance_profile(options = {})
|
|
103
|
+
# Calls the CreateInstanceProfile API operation.
|
|
104
|
+
# @param [Hash] options
|
|
105
|
+
# * +:instance_profile_name+ - *required* - (String) Name of the
|
|
106
|
+
# instance profile to create.
|
|
107
|
+
# * +:path+ - (String) The path to the instance profile. For more
|
|
108
|
+
# information about paths, see Identifiers for IAM Entities in Using
|
|
109
|
+
# AWS Identity and Access Management. This parameter is optional. If
|
|
110
|
+
# it is not included, it defaults to a slash (/).
|
|
111
|
+
# @return [Core::Response]
|
|
112
|
+
# The #data method of the response object returns
|
|
113
|
+
# a hash with the following structure:
|
|
114
|
+
# * +:instance_profile+ - (Hash)
|
|
115
|
+
# * +:path+ - (String)
|
|
116
|
+
# * +:instance_profile_name+ - (String)
|
|
117
|
+
# * +:instance_profile_id+ - (String)
|
|
118
|
+
# * +:arn+ - (String)
|
|
119
|
+
# * +:create_date+ - (Time)
|
|
120
|
+
# * +:roles+ - (Array<Hash>)
|
|
121
|
+
# * +:path+ - (String)
|
|
122
|
+
# * +:role_name+ - (String)
|
|
123
|
+
# * +:role_id+ - (String)
|
|
124
|
+
# * +:arn+ - (String)
|
|
125
|
+
# * +:create_date+ - (Time)
|
|
126
|
+
# * +:assume_role_policy_document+ - (String)
|
|
127
|
+
|
|
128
|
+
# @!method create_login_profile(options = {})
|
|
129
|
+
# Calls the CreateLoginProfile API operation.
|
|
130
|
+
# @param [Hash] options
|
|
131
|
+
# * +:user_name+ - *required* - (String) Name of the user to create a
|
|
132
|
+
# password for.
|
|
133
|
+
# * +:password+ - *required* - (String) The new password for the user
|
|
134
|
+
# name.
|
|
135
|
+
# @return [Core::Response]
|
|
136
|
+
# The #data method of the response object returns
|
|
137
|
+
# a hash with the following structure:
|
|
138
|
+
# * +:login_profile+ - (Hash)
|
|
139
|
+
# * +:user_name+ - (String)
|
|
140
|
+
# * +:create_date+ - (Time)
|
|
141
|
+
|
|
142
|
+
# @!method create_role(options = {})
|
|
143
|
+
# Calls the CreateRole API operation.
|
|
144
|
+
# @param [Hash] options
|
|
145
|
+
# * +:path+ - (String) The path to the role. For more information about
|
|
146
|
+
# paths, see Identifiers for IAM Entities in Using AWS Identity and
|
|
147
|
+
# Access Management. This parameter is optional. If it is not
|
|
148
|
+
# included, it defaults to a slash (/).
|
|
149
|
+
# * +:role_name+ - *required* - (String) Name of the role to create.
|
|
150
|
+
# * +:assume_role_policy_document+ - *required* - (String) The policy
|
|
151
|
+
# that grants an entity permission to assume the role.
|
|
152
|
+
# @return [Core::Response]
|
|
153
|
+
# The #data method of the response object returns
|
|
154
|
+
# a hash with the following structure:
|
|
155
|
+
# * +:role+ - (Hash)
|
|
156
|
+
# * +:path+ - (String)
|
|
157
|
+
# * +:role_name+ - (String)
|
|
158
|
+
# * +:role_id+ - (String)
|
|
159
|
+
# * +:arn+ - (String)
|
|
160
|
+
# * +:create_date+ - (Time)
|
|
161
|
+
# * +:assume_role_policy_document+ - (String)
|
|
162
|
+
|
|
163
|
+
# @!method create_user(options = {})
|
|
164
|
+
# Calls the CreateUser API operation.
|
|
165
|
+
# @param [Hash] options
|
|
166
|
+
# * +:path+ - (String) The path for the user name. For more information
|
|
167
|
+
# about paths, see Identifiers for IAM Entities in Using AWS Identity
|
|
168
|
+
# and Access Management. This parameter is optional. If it is not
|
|
169
|
+
# included, it defaults to a slash (/).
|
|
170
|
+
# * +:user_name+ - *required* - (String) Name of the user to create.
|
|
171
|
+
# @return [Core::Response]
|
|
172
|
+
# The #data method of the response object returns
|
|
173
|
+
# a hash with the following structure:
|
|
174
|
+
# * +:user+ - (Hash)
|
|
175
|
+
# * +:path+ - (String)
|
|
176
|
+
# * +:user_name+ - (String)
|
|
177
|
+
# * +:user_id+ - (String)
|
|
178
|
+
# * +:arn+ - (String)
|
|
179
|
+
# * +:create_date+ - (Time)
|
|
180
|
+
|
|
181
|
+
# @!method create_virtual_mfa_device(options = {})
|
|
182
|
+
# Calls the CreateVirtualMFADevice API operation.
|
|
183
|
+
# @param [Hash] options
|
|
184
|
+
# * +:path+ - (String) The path for the virtual MFA device. For more
|
|
185
|
+
# information about paths, see Identifiers for IAM Entities in Using
|
|
186
|
+
# AWS Identity and Access Management. This parameter is optional. If
|
|
187
|
+
# it is not included, it defaults to a slash (/).
|
|
188
|
+
# * +:virtual_mfa_device_name+ - *required* - (String) The name of the
|
|
189
|
+
# virtual MFA device. Use with path to uniquely identify a virtual
|
|
190
|
+
# MFA device.
|
|
191
|
+
# @return [Core::Response]
|
|
192
|
+
# The #data method of the response object returns
|
|
193
|
+
# a hash with the following structure:
|
|
194
|
+
# * +:virtual_mfa_device+ - (Hash)
|
|
195
|
+
# * +:serial_number+ - (String)
|
|
196
|
+
# * +:base_32_string_seed+ - (String)
|
|
197
|
+
# * +:qr_code_png+ - (String)
|
|
198
|
+
# * +:user+ - (Hash)
|
|
199
|
+
# * +:path+ - (String)
|
|
200
|
+
# * +:user_name+ - (String)
|
|
201
|
+
# * +:user_id+ - (String)
|
|
202
|
+
# * +:arn+ - (String)
|
|
203
|
+
# * +:create_date+ - (Time)
|
|
204
|
+
# * +:enable_date+ - (Time)
|
|
205
|
+
|
|
206
|
+
# @!method deactivate_mfa_device(options = {})
|
|
207
|
+
# Calls the DeactivateMFADevice API operation.
|
|
208
|
+
# @param [Hash] options
|
|
209
|
+
# * +:user_name+ - *required* - (String) Name of the user whose MFA
|
|
210
|
+
# device you want to deactivate.
|
|
211
|
+
# * +:serial_number+ - *required* - (String) The serial number that
|
|
212
|
+
# uniquely identifies the MFA device. For virtual MFA devices, the
|
|
213
|
+
# serial number is the device ARN.
|
|
214
|
+
# @return [Core::Response]
|
|
215
|
+
|
|
216
|
+
# @!method delete_access_key(options = {})
|
|
217
|
+
# Calls the DeleteAccessKey API operation.
|
|
218
|
+
# @param [Hash] options
|
|
219
|
+
# * +:user_name+ - (String) Name of the user whose key you want to
|
|
220
|
+
# delete.
|
|
221
|
+
# * +:access_key_id+ - *required* - (String) The Access Key ID for the
|
|
222
|
+
# Access Key ID and Secret Access Key you want to delete.
|
|
223
|
+
# @return [Core::Response]
|
|
224
|
+
|
|
225
|
+
# @!method delete_account_alias(options = {})
|
|
226
|
+
# Calls the DeleteAccountAlias API operation.
|
|
227
|
+
# @param [Hash] options
|
|
228
|
+
# * +:account_alias+ - *required* - (String) Name of the account alias
|
|
229
|
+
# to delete.
|
|
230
|
+
# @return [Core::Response]
|
|
231
|
+
|
|
232
|
+
# @!method delete_account_password_policy(options = {})
|
|
233
|
+
# Calls the DeleteAccountPasswordPolicy API operation.
|
|
234
|
+
# @param [Hash] options
|
|
235
|
+
# @return [Core::Response]
|
|
236
|
+
|
|
237
|
+
# @!method delete_group(options = {})
|
|
238
|
+
# Calls the DeleteGroup API operation.
|
|
239
|
+
# @param [Hash] options
|
|
240
|
+
# * +:group_name+ - *required* - (String) Name of the group to delete.
|
|
241
|
+
# @return [Core::Response]
|
|
242
|
+
|
|
243
|
+
# @!method delete_group_policy(options = {})
|
|
244
|
+
# Calls the DeleteGroupPolicy API operation.
|
|
245
|
+
# @param [Hash] options
|
|
246
|
+
# * +:group_name+ - *required* - (String) Name of the group the policy
|
|
247
|
+
# is associated with.
|
|
248
|
+
# * +:policy_name+ - *required* - (String) Name of the policy document
|
|
249
|
+
# to delete.
|
|
250
|
+
# @return [Core::Response]
|
|
251
|
+
|
|
252
|
+
# @!method delete_instance_profile(options = {})
|
|
253
|
+
# Calls the DeleteInstanceProfile API operation.
|
|
254
|
+
# @param [Hash] options
|
|
255
|
+
# * +:instance_profile_name+ - *required* - (String) Name of the
|
|
256
|
+
# instance profile to delete.
|
|
257
|
+
# @return [Core::Response]
|
|
258
|
+
|
|
259
|
+
# @!method delete_login_profile(options = {})
|
|
260
|
+
# Calls the DeleteLoginProfile API operation.
|
|
261
|
+
# @param [Hash] options
|
|
262
|
+
# * +:user_name+ - *required* - (String) Name of the user whose
|
|
263
|
+
# password you want to delete.
|
|
264
|
+
# @return [Core::Response]
|
|
265
|
+
|
|
266
|
+
# @!method delete_role(options = {})
|
|
267
|
+
# Calls the DeleteRole API operation.
|
|
268
|
+
# @param [Hash] options
|
|
269
|
+
# * +:role_name+ - *required* - (String) Name of the role to delete.
|
|
270
|
+
# @return [Core::Response]
|
|
271
|
+
|
|
272
|
+
# @!method delete_role_policy(options = {})
|
|
273
|
+
# Calls the DeleteRolePolicy API operation.
|
|
274
|
+
# @param [Hash] options
|
|
275
|
+
# * +:role_name+ - *required* - (String) Name of the role the
|
|
276
|
+
# associated with the policy.
|
|
277
|
+
# * +:policy_name+ - *required* - (String) Name of the policy document
|
|
278
|
+
# to delete.
|
|
279
|
+
# @return [Core::Response]
|
|
280
|
+
|
|
281
|
+
# @!method delete_server_certificate(options = {})
|
|
282
|
+
# Calls the DeleteServerCertificate API operation.
|
|
283
|
+
# @param [Hash] options
|
|
284
|
+
# * +:server_certificate_name+ - *required* - (String) The name of the
|
|
285
|
+
# server certificate you want to delete.
|
|
286
|
+
# @return [Core::Response]
|
|
287
|
+
|
|
288
|
+
# @!method delete_signing_certificate(options = {})
|
|
289
|
+
# Calls the DeleteSigningCertificate API operation.
|
|
290
|
+
# @param [Hash] options
|
|
291
|
+
# * +:user_name+ - (String) Name of the user the signing certificate
|
|
292
|
+
# belongs to.
|
|
293
|
+
# * +:certificate_id+ - *required* - (String) ID of the signing
|
|
294
|
+
# certificate to delete.
|
|
295
|
+
# @return [Core::Response]
|
|
296
|
+
|
|
297
|
+
# @!method delete_user(options = {})
|
|
298
|
+
# Calls the DeleteUser API operation.
|
|
299
|
+
# @param [Hash] options
|
|
300
|
+
# * +:user_name+ - *required* - (String) Name of the user to delete.
|
|
301
|
+
# @return [Core::Response]
|
|
302
|
+
|
|
303
|
+
# @!method delete_user_policy(options = {})
|
|
304
|
+
# Calls the DeleteUserPolicy API operation.
|
|
305
|
+
# @param [Hash] options
|
|
306
|
+
# * +:user_name+ - *required* - (String) Name of the user the policy is
|
|
307
|
+
# associated with.
|
|
308
|
+
# * +:policy_name+ - *required* - (String) Name of the policy document
|
|
309
|
+
# to delete.
|
|
310
|
+
# @return [Core::Response]
|
|
311
|
+
|
|
312
|
+
# @!method delete_virtual_mfa_device(options = {})
|
|
313
|
+
# Calls the DeleteVirtualMFADevice API operation.
|
|
314
|
+
# @param [Hash] options
|
|
315
|
+
# * +:serial_number+ - *required* - (String) The serial number that
|
|
316
|
+
# uniquely identifies the MFA device. For virtual MFA devices, the
|
|
317
|
+
# serial number is the same as the ARN.
|
|
318
|
+
# @return [Core::Response]
|
|
319
|
+
|
|
320
|
+
# @!method enable_mfa_device(options = {})
|
|
321
|
+
# Calls the EnableMFADevice API operation.
|
|
322
|
+
# @param [Hash] options
|
|
323
|
+
# * +:user_name+ - *required* - (String) Name of the user for whom you
|
|
324
|
+
# want to enable the MFA device.
|
|
325
|
+
# * +:serial_number+ - *required* - (String) The serial number that
|
|
326
|
+
# uniquely identifies the MFA device. For virtual MFA devices, the
|
|
327
|
+
# serial number is the device ARN.
|
|
328
|
+
# * +:authentication_code_1+ - *required* - (String) An authentication
|
|
329
|
+
# code emitted by the device.
|
|
330
|
+
# * +:authentication_code_2+ - *required* - (String) A subsequent
|
|
331
|
+
# authentication code emitted by the device.
|
|
332
|
+
# @return [Core::Response]
|
|
333
|
+
|
|
334
|
+
# @!method get_account_password_policy(options = {})
|
|
335
|
+
# Calls the GetAccountPasswordPolicy API operation.
|
|
336
|
+
# @param [Hash] options
|
|
337
|
+
# @return [Core::Response]
|
|
338
|
+
# The #data method of the response object returns
|
|
339
|
+
# a hash with the following structure:
|
|
340
|
+
# * +:password_policy+ - (Hash)
|
|
341
|
+
# * +:minimum_password_length+ - (Integer)
|
|
342
|
+
# * +:require_symbols+ - (Boolean)
|
|
343
|
+
# * +:require_numbers+ - (Boolean)
|
|
344
|
+
# * +:require_uppercase_characters+ - (Boolean)
|
|
345
|
+
# * +:require_lowercase_characters+ - (Boolean)
|
|
346
|
+
# * +:allow_users_to_change_password+ - (Boolean)
|
|
347
|
+
|
|
348
|
+
# @!method get_account_summary(options = {})
|
|
349
|
+
# Calls the GetAccountSummary API operation.
|
|
350
|
+
# @param [Hash] options
|
|
351
|
+
# @return [Core::Response]
|
|
352
|
+
# The #data method of the response object returns
|
|
353
|
+
# a hash with the following structure:
|
|
354
|
+
# * +:summary_map+ - (Hash<String,Integer>)
|
|
355
|
+
|
|
356
|
+
# @!method get_group(options = {})
|
|
357
|
+
# Calls the GetGroup API operation.
|
|
358
|
+
# @param [Hash] options
|
|
359
|
+
# * +:group_name+ - *required* - (String) Name of the group.
|
|
360
|
+
# * +:marker+ - (String) Use this only when paginating results, and
|
|
361
|
+
# only in a subsequent request after you've received a response where
|
|
362
|
+
# the results are truncated. Set it to the value of the Marker
|
|
363
|
+
# element in the response you just received.
|
|
364
|
+
# * +:max_items+ - (Integer) Use this only when paginating results to
|
|
365
|
+
# indicate the maximum number of user names you want in the response.
|
|
366
|
+
# If there are additional user names beyond the maximum you specify,
|
|
367
|
+
# the IsTruncated response element is +true+ .
|
|
368
|
+
# @return [Core::Response]
|
|
369
|
+
# The #data method of the response object returns
|
|
370
|
+
# a hash with the following structure:
|
|
371
|
+
# * +:group+ - (Hash)
|
|
372
|
+
# * +:path+ - (String)
|
|
373
|
+
# * +:group_name+ - (String)
|
|
374
|
+
# * +:group_id+ - (String)
|
|
375
|
+
# * +:arn+ - (String)
|
|
376
|
+
# * +:create_date+ - (Time)
|
|
377
|
+
# * +:users+ - (Array<Hash>)
|
|
378
|
+
# * +:path+ - (String)
|
|
379
|
+
# * +:user_name+ - (String)
|
|
380
|
+
# * +:user_id+ - (String)
|
|
381
|
+
# * +:arn+ - (String)
|
|
382
|
+
# * +:create_date+ - (Time)
|
|
383
|
+
# * +:is_truncated+ - (Boolean)
|
|
384
|
+
# * +:marker+ - (String)
|
|
385
|
+
|
|
386
|
+
# @!method get_group_policy(options = {})
|
|
387
|
+
# Calls the GetGroupPolicy API operation.
|
|
388
|
+
# @param [Hash] options
|
|
389
|
+
# * +:group_name+ - *required* - (String) Name of the group the policy
|
|
390
|
+
# is associated with.
|
|
391
|
+
# * +:policy_name+ - *required* - (String) Name of the policy document
|
|
392
|
+
# to get.
|
|
393
|
+
# @return [Core::Response]
|
|
394
|
+
# The #data method of the response object returns
|
|
395
|
+
# a hash with the following structure:
|
|
396
|
+
# * +:group_name+ - (String)
|
|
397
|
+
# * +:policy_name+ - (String)
|
|
398
|
+
# * +:policy_document+ - (String)
|
|
399
|
+
|
|
400
|
+
# @!method get_instance_profile(options = {})
|
|
401
|
+
# Calls the GetInstanceProfile API operation.
|
|
402
|
+
# @param [Hash] options
|
|
403
|
+
# * +:instance_profile_name+ - *required* - (String) Name of the
|
|
404
|
+
# instance profile to get information about.
|
|
405
|
+
# @return [Core::Response]
|
|
406
|
+
# The #data method of the response object returns
|
|
407
|
+
# a hash with the following structure:
|
|
408
|
+
# * +:instance_profile+ - (Hash)
|
|
409
|
+
# * +:path+ - (String)
|
|
410
|
+
# * +:instance_profile_name+ - (String)
|
|
411
|
+
# * +:instance_profile_id+ - (String)
|
|
412
|
+
# * +:arn+ - (String)
|
|
413
|
+
# * +:create_date+ - (Time)
|
|
414
|
+
# * +:roles+ - (Array<Hash>)
|
|
415
|
+
# * +:path+ - (String)
|
|
416
|
+
# * +:role_name+ - (String)
|
|
417
|
+
# * +:role_id+ - (String)
|
|
418
|
+
# * +:arn+ - (String)
|
|
419
|
+
# * +:create_date+ - (Time)
|
|
420
|
+
# * +:assume_role_policy_document+ - (String)
|
|
421
|
+
|
|
422
|
+
# @!method get_login_profile(options = {})
|
|
423
|
+
# Calls the GetLoginProfile API operation.
|
|
424
|
+
# @param [Hash] options
|
|
425
|
+
# * +:user_name+ - *required* - (String) Name of the user whose login
|
|
426
|
+
# profile you want to retrieve.
|
|
427
|
+
# @return [Core::Response]
|
|
428
|
+
# The #data method of the response object returns
|
|
429
|
+
# a hash with the following structure:
|
|
430
|
+
# * +:login_profile+ - (Hash)
|
|
431
|
+
# * +:user_name+ - (String)
|
|
432
|
+
# * +:create_date+ - (Time)
|
|
433
|
+
|
|
434
|
+
# @!method get_role(options = {})
|
|
435
|
+
# Calls the GetRole API operation.
|
|
436
|
+
# @param [Hash] options
|
|
437
|
+
# * +:role_name+ - *required* - (String) Name of the role to get
|
|
438
|
+
# information about.
|
|
439
|
+
# @return [Core::Response]
|
|
440
|
+
# The #data method of the response object returns
|
|
441
|
+
# a hash with the following structure:
|
|
442
|
+
# * +:role+ - (Hash)
|
|
443
|
+
# * +:path+ - (String)
|
|
444
|
+
# * +:role_name+ - (String)
|
|
445
|
+
# * +:role_id+ - (String)
|
|
446
|
+
# * +:arn+ - (String)
|
|
447
|
+
# * +:create_date+ - (Time)
|
|
448
|
+
# * +:assume_role_policy_document+ - (String)
|
|
449
|
+
|
|
450
|
+
# @!method get_role_policy(options = {})
|
|
451
|
+
# Calls the GetRolePolicy API operation.
|
|
452
|
+
# @param [Hash] options
|
|
453
|
+
# * +:role_name+ - *required* - (String) Name of the role associated
|
|
454
|
+
# with the policy.
|
|
455
|
+
# * +:policy_name+ - *required* - (String) Name of the policy document
|
|
456
|
+
# to get.
|
|
457
|
+
# @return [Core::Response]
|
|
458
|
+
# The #data method of the response object returns
|
|
459
|
+
# a hash with the following structure:
|
|
460
|
+
# * +:role_name+ - (String)
|
|
461
|
+
# * +:policy_name+ - (String)
|
|
462
|
+
# * +:policy_document+ - (String)
|
|
463
|
+
|
|
464
|
+
# @!method get_server_certificate(options = {})
|
|
465
|
+
# Calls the GetServerCertificate API operation.
|
|
466
|
+
# @param [Hash] options
|
|
467
|
+
# * +:server_certificate_name+ - *required* - (String) The name of the
|
|
468
|
+
# server certificate you want to retrieve information about.
|
|
469
|
+
# @return [Core::Response]
|
|
470
|
+
# The #data method of the response object returns
|
|
471
|
+
# a hash with the following structure:
|
|
472
|
+
# * +:server_certificate+ - (Hash)
|
|
473
|
+
# * +:server_certificate_metadata+ - (Hash)
|
|
474
|
+
# * +:path+ - (String)
|
|
475
|
+
# * +:server_certificate_name+ - (String)
|
|
476
|
+
# * +:server_certificate_id+ - (String)
|
|
477
|
+
# * +:arn+ - (String)
|
|
478
|
+
# * +:upload_date+ - (Time)
|
|
479
|
+
# * +:certificate_body+ - (String)
|
|
480
|
+
# * +:certificate_chain+ - (String)
|
|
481
|
+
|
|
482
|
+
# @!method get_user(options = {})
|
|
483
|
+
# Calls the GetUser API operation.
|
|
484
|
+
# @param [Hash] options
|
|
485
|
+
# * +:user_name+ - (String) Name of the user to get information about.
|
|
486
|
+
# This parameter is optional. If it is not included, it defaults to
|
|
487
|
+
# the user making the request.
|
|
488
|
+
# @return [Core::Response]
|
|
489
|
+
# The #data method of the response object returns
|
|
490
|
+
# a hash with the following structure:
|
|
491
|
+
# * +:user+ - (Hash)
|
|
492
|
+
# * +:path+ - (String)
|
|
493
|
+
# * +:user_name+ - (String)
|
|
494
|
+
# * +:user_id+ - (String)
|
|
495
|
+
# * +:arn+ - (String)
|
|
496
|
+
# * +:create_date+ - (Time)
|
|
497
|
+
|
|
498
|
+
# @!method get_user_policy(options = {})
|
|
499
|
+
# Calls the GetUserPolicy API operation.
|
|
500
|
+
# @param [Hash] options
|
|
501
|
+
# * +:user_name+ - *required* - (String) Name of the user who the
|
|
502
|
+
# policy is associated with.
|
|
503
|
+
# * +:policy_name+ - *required* - (String) Name of the policy document
|
|
504
|
+
# to get.
|
|
505
|
+
# @return [Core::Response]
|
|
506
|
+
# The #data method of the response object returns
|
|
507
|
+
# a hash with the following structure:
|
|
508
|
+
# * +:user_name+ - (String)
|
|
509
|
+
# * +:policy_name+ - (String)
|
|
510
|
+
# * +:policy_document+ - (String)
|
|
511
|
+
|
|
512
|
+
# @!method list_access_keys(options = {})
|
|
513
|
+
# Calls the ListAccessKeys API operation.
|
|
514
|
+
# @param [Hash] options
|
|
515
|
+
# * +:user_name+ - (String) Name of the user.
|
|
516
|
+
# * +:marker+ - (String) Use this parameter only when paginating
|
|
517
|
+
# results, and only in a subsequent request after you've received a
|
|
518
|
+
# response where the results are truncated. Set it to the value of
|
|
519
|
+
# the Marker element in the response you just received.
|
|
520
|
+
# * +:max_items+ - (Integer) Use this parameter only when paginating
|
|
521
|
+
# results to indicate the maximum number of keys you want in the
|
|
522
|
+
# response. If there are additional keys beyond the maximum you
|
|
523
|
+
# specify, the IsTruncated response element is +true+ .
|
|
524
|
+
# @return [Core::Response]
|
|
525
|
+
# The #data method of the response object returns
|
|
526
|
+
# a hash with the following structure:
|
|
527
|
+
# * +:access_key_metadata+ - (Array<Hash>)
|
|
528
|
+
# * +:user_name+ - (String)
|
|
529
|
+
# * +:access_key_id+ - (String)
|
|
530
|
+
# * +:status+ - (String)
|
|
531
|
+
# * +:create_date+ - (Time)
|
|
532
|
+
# * +:is_truncated+ - (Boolean)
|
|
533
|
+
# * +:marker+ - (String)
|
|
534
|
+
|
|
535
|
+
# @!method list_account_aliases(options = {})
|
|
536
|
+
# Calls the ListAccountAliases API operation.
|
|
537
|
+
# @param [Hash] options
|
|
538
|
+
# * +:marker+ - (String) Use this only when paginating results, and
|
|
539
|
+
# only in a subsequent request after you've received a response where
|
|
540
|
+
# the results are truncated. Set it to the value of the Marker
|
|
541
|
+
# element in the response you just received.
|
|
542
|
+
# * +:max_items+ - (Integer) Use this only when paginating results to
|
|
543
|
+
# indicate the maximum number of account aliases you want in the
|
|
544
|
+
# response. If there are additional account aliases beyond the
|
|
545
|
+
# maximum you specify, the IsTruncated response element is +true+ .
|
|
546
|
+
# @return [Core::Response]
|
|
547
|
+
# The #data method of the response object returns
|
|
548
|
+
# a hash with the following structure:
|
|
549
|
+
# * +:account_aliases+ - (Array<String>)
|
|
550
|
+
# * +:is_truncated+ - (Boolean)
|
|
551
|
+
# * +:marker+ - (String)
|
|
552
|
+
|
|
553
|
+
# @!method list_group_policies(options = {})
|
|
554
|
+
# Calls the ListGroupPolicies API operation.
|
|
555
|
+
# @param [Hash] options
|
|
556
|
+
# * +:group_name+ - *required* - (String) The name of the group to list
|
|
557
|
+
# policies for.
|
|
558
|
+
# * +:marker+ - (String) Use this only when paginating results, and
|
|
559
|
+
# only in a subsequent request after you've received a response where
|
|
560
|
+
# the results are truncated. Set it to the value of the Marker
|
|
561
|
+
# element in the response you just received.
|
|
562
|
+
# * +:max_items+ - (Integer) Use this only when paginating results to
|
|
563
|
+
# indicate the maximum number of policy names you want in the
|
|
564
|
+
# response. If there are additional policy names beyond the maximum
|
|
565
|
+
# you specify, the IsTruncated response element is +true+ .
|
|
566
|
+
# @return [Core::Response]
|
|
567
|
+
# The #data method of the response object returns
|
|
568
|
+
# a hash with the following structure:
|
|
569
|
+
# * +:policy_names+ - (Array<String>)
|
|
570
|
+
# * +:is_truncated+ - (Boolean)
|
|
571
|
+
# * +:marker+ - (String)
|
|
572
|
+
|
|
573
|
+
# @!method list_groups(options = {})
|
|
574
|
+
# Calls the ListGroups API operation.
|
|
575
|
+
# @param [Hash] options
|
|
576
|
+
# * +:path_prefix+ - (String) The path prefix for filtering the
|
|
577
|
+
# results. For example: /division_abc/subdivision_xyz/, which would
|
|
578
|
+
# get all groups whose path starts with
|
|
579
|
+
# /division_abc/subdivision_xyz/. This parameter is optional. If it
|
|
580
|
+
# is not included, it defaults to a slash (/), listing all groups.
|
|
581
|
+
# * +:marker+ - (String) Use this only when paginating results, and
|
|
582
|
+
# only in a subsequent request after you've received a response where
|
|
583
|
+
# the results are truncated. Set it to the value of the Marker
|
|
584
|
+
# element in the response you just received.
|
|
585
|
+
# * +:max_items+ - (Integer) Use this only when paginating results to
|
|
586
|
+
# indicate the maximum number of groups you want in the response. If
|
|
587
|
+
# there are additional groups beyond the maximum you specify, the
|
|
588
|
+
# IsTruncated response element is +true+ .
|
|
589
|
+
# @return [Core::Response]
|
|
590
|
+
# The #data method of the response object returns
|
|
591
|
+
# a hash with the following structure:
|
|
592
|
+
# * +:groups+ - (Array<Hash>)
|
|
593
|
+
# * +:path+ - (String)
|
|
594
|
+
# * +:group_name+ - (String)
|
|
595
|
+
# * +:group_id+ - (String)
|
|
596
|
+
# * +:arn+ - (String)
|
|
597
|
+
# * +:create_date+ - (Time)
|
|
598
|
+
# * +:is_truncated+ - (Boolean)
|
|
599
|
+
# * +:marker+ - (String)
|
|
600
|
+
|
|
601
|
+
# @!method list_groups_for_user(options = {})
|
|
602
|
+
# Calls the ListGroupsForUser API operation.
|
|
603
|
+
# @param [Hash] options
|
|
604
|
+
# * +:user_name+ - *required* - (String) The name of the user to list
|
|
605
|
+
# groups for.
|
|
606
|
+
# * +:marker+ - (String) Use this only when paginating results, and
|
|
607
|
+
# only in a subsequent request after you've received a response where
|
|
608
|
+
# the results are truncated. Set it to the value of the Marker
|
|
609
|
+
# element in the response you just received.
|
|
610
|
+
# * +:max_items+ - (Integer) Use this only when paginating results to
|
|
611
|
+
# indicate the maximum number of groups you want in the response. If
|
|
612
|
+
# there are additional groups beyond the maximum you specify, the
|
|
613
|
+
# IsTruncated response element is +true+ .
|
|
614
|
+
# @return [Core::Response]
|
|
615
|
+
# The #data method of the response object returns
|
|
616
|
+
# a hash with the following structure:
|
|
617
|
+
# * +:groups+ - (Array<Hash>)
|
|
618
|
+
# * +:path+ - (String)
|
|
619
|
+
# * +:group_name+ - (String)
|
|
620
|
+
# * +:group_id+ - (String)
|
|
621
|
+
# * +:arn+ - (String)
|
|
622
|
+
# * +:create_date+ - (Time)
|
|
623
|
+
# * +:is_truncated+ - (Boolean)
|
|
624
|
+
# * +:marker+ - (String)
|
|
625
|
+
|
|
626
|
+
# @!method list_instance_profiles(options = {})
|
|
627
|
+
# Calls the ListInstanceProfiles API operation.
|
|
628
|
+
# @param [Hash] options
|
|
629
|
+
# * +:path_prefix+ - (String) The path prefix for filtering the
|
|
630
|
+
# results. For example: /application_abc/component_xyz/, which would
|
|
631
|
+
# get all instance profiles whose path starts with
|
|
632
|
+
# /application_abc/component_xyz/. This parameter is optional. If it
|
|
633
|
+
# is not included, it defaults to a slash (/), listing all instance
|
|
634
|
+
# profiles.
|
|
635
|
+
# * +:marker+ - (String) Use this parameter only when paginating
|
|
636
|
+
# results, and only in a subsequent request after you've received a
|
|
637
|
+
# response where the results are truncated. Set it to the value of
|
|
638
|
+
# the Marker element in the response you just received.
|
|
639
|
+
# * +:max_items+ - (Integer) Use this parameter only when paginating
|
|
640
|
+
# results to indicate the maximum number of user names you want in
|
|
641
|
+
# the response. If there are additional user names beyond the maximum
|
|
642
|
+
# you specify, the IsTruncated response element is +true+ .
|
|
643
|
+
# @return [Core::Response]
|
|
644
|
+
# The #data method of the response object returns
|
|
645
|
+
# a hash with the following structure:
|
|
646
|
+
# * +:instance_profiles+ - (Array<Hash>)
|
|
647
|
+
# * +:path+ - (String)
|
|
648
|
+
# * +:instance_profile_name+ - (String)
|
|
649
|
+
# * +:instance_profile_id+ - (String)
|
|
650
|
+
# * +:arn+ - (String)
|
|
651
|
+
# * +:create_date+ - (Time)
|
|
652
|
+
# * +:roles+ - (Array<Hash>)
|
|
653
|
+
# * +:path+ - (String)
|
|
654
|
+
# * +:role_name+ - (String)
|
|
655
|
+
# * +:role_id+ - (String)
|
|
656
|
+
# * +:arn+ - (String)
|
|
657
|
+
# * +:create_date+ - (Time)
|
|
658
|
+
# * +:assume_role_policy_document+ - (String)
|
|
659
|
+
# * +:is_truncated+ - (Boolean)
|
|
660
|
+
# * +:marker+ - (String)
|
|
661
|
+
|
|
662
|
+
# @!method list_instance_profiles_for_role(options = {})
|
|
663
|
+
# Calls the ListInstanceProfilesForRole API operation.
|
|
664
|
+
# @param [Hash] options
|
|
665
|
+
# * +:role_name+ - *required* - (String) The name of the role to list
|
|
666
|
+
# instance profiles for.
|
|
667
|
+
# * +:marker+ - (String) Use this parameter only when paginating
|
|
668
|
+
# results, and only in a subsequent request after you've received a
|
|
669
|
+
# response where the results are truncated. Set it to the value of
|
|
670
|
+
# the Marker element in the response you just received.
|
|
671
|
+
# * +:max_items+ - (Integer) Use this parameter only when paginating
|
|
672
|
+
# results to indicate the maximum number of user names you want in
|
|
673
|
+
# the response. If there are additional user names beyond the maximum
|
|
674
|
+
# you specify, the IsTruncated response element is +true+ .
|
|
675
|
+
# @return [Core::Response]
|
|
676
|
+
# The #data method of the response object returns
|
|
677
|
+
# a hash with the following structure:
|
|
678
|
+
# * +:instance_profiles+ - (Array<Hash>)
|
|
679
|
+
# * +:path+ - (String)
|
|
680
|
+
# * +:instance_profile_name+ - (String)
|
|
681
|
+
# * +:instance_profile_id+ - (String)
|
|
682
|
+
# * +:arn+ - (String)
|
|
683
|
+
# * +:create_date+ - (Time)
|
|
684
|
+
# * +:roles+ - (Array<Hash>)
|
|
685
|
+
# * +:path+ - (String)
|
|
686
|
+
# * +:role_name+ - (String)
|
|
687
|
+
# * +:role_id+ - (String)
|
|
688
|
+
# * +:arn+ - (String)
|
|
689
|
+
# * +:create_date+ - (Time)
|
|
690
|
+
# * +:assume_role_policy_document+ - (String)
|
|
691
|
+
# * +:is_truncated+ - (Boolean)
|
|
692
|
+
# * +:marker+ - (String)
|
|
693
|
+
|
|
694
|
+
# @!method list_mfa_devices(options = {})
|
|
695
|
+
# Calls the ListMFADevices API operation.
|
|
696
|
+
# @param [Hash] options
|
|
697
|
+
# * +:user_name+ - (String) Name of the user whose MFA devices you want
|
|
698
|
+
# to list.
|
|
699
|
+
# * +:marker+ - (String) Use this only when paginating results, and
|
|
700
|
+
# only in a subsequent request after you've received a response where
|
|
701
|
+
# the results are truncated. Set it to the value of the Marker
|
|
702
|
+
# element in the response you just received.
|
|
703
|
+
# * +:max_items+ - (Integer) Use this only when paginating results to
|
|
704
|
+
# indicate the maximum number of MFA devices you want in the
|
|
705
|
+
# response. If there are additional MFA devices beyond the maximum
|
|
706
|
+
# you specify, the IsTruncated response element is +true+ .
|
|
707
|
+
# @return [Core::Response]
|
|
708
|
+
# The #data method of the response object returns
|
|
709
|
+
# a hash with the following structure:
|
|
710
|
+
# * +:mfa_devices+ - (Array<Hash>)
|
|
711
|
+
# * +:user_name+ - (String)
|
|
712
|
+
# * +:serial_number+ - (String)
|
|
713
|
+
# * +:enable_date+ - (Time)
|
|
714
|
+
# * +:is_truncated+ - (Boolean)
|
|
715
|
+
# * +:marker+ - (String)
|
|
716
|
+
|
|
717
|
+
# @!method list_role_policies(options = {})
|
|
718
|
+
# Calls the ListRolePolicies API operation.
|
|
719
|
+
# @param [Hash] options
|
|
720
|
+
# * +:role_name+ - *required* - (String) The name of the role to list
|
|
721
|
+
# policies for.
|
|
722
|
+
# * +:marker+ - (String) Use this parameter only when paginating
|
|
723
|
+
# results, and only in a subsequent request after you've received a
|
|
724
|
+
# response where the results are truncated. Set it to the value of
|
|
725
|
+
# the Marker element in the response you just received.
|
|
726
|
+
# * +:max_items+ - (Integer) Use this parameter only when paginating
|
|
727
|
+
# results to indicate the maximum number of user names you want in
|
|
728
|
+
# the response. If there are additional user names beyond the maximum
|
|
729
|
+
# you specify, the IsTruncated response element is +true+ .
|
|
730
|
+
# @return [Core::Response]
|
|
731
|
+
# The #data method of the response object returns
|
|
732
|
+
# a hash with the following structure:
|
|
733
|
+
# * +:policy_names+ - (Array<String>)
|
|
734
|
+
# * +:is_truncated+ - (Boolean)
|
|
735
|
+
# * +:marker+ - (String)
|
|
736
|
+
|
|
737
|
+
# @!method list_roles(options = {})
|
|
738
|
+
# Calls the ListRoles API operation.
|
|
739
|
+
# @param [Hash] options
|
|
740
|
+
# * +:path_prefix+ - (String) The path prefix for filtering the
|
|
741
|
+
# results. For example: /application_abc/component_xyz/, which would
|
|
742
|
+
# get all roles whose path starts with
|
|
743
|
+
# /application_abc/component_xyz/. This parameter is optional. If it
|
|
744
|
+
# is not included, it defaults to a slash (/), listing all roles.
|
|
745
|
+
# * +:marker+ - (String) Use this parameter only when paginating
|
|
746
|
+
# results, and only in a subsequent request after you've received a
|
|
747
|
+
# response where the results are truncated. Set it to the value of
|
|
748
|
+
# the Marker element in the response you just received.
|
|
749
|
+
# * +:max_items+ - (Integer) Use this parameter only when paginating
|
|
750
|
+
# results to indicate the maximum number of user names you want in
|
|
751
|
+
# the response. If there are additional user names beyond the maximum
|
|
752
|
+
# you specify, the IsTruncated response element is +true+ .
|
|
753
|
+
# @return [Core::Response]
|
|
754
|
+
# The #data method of the response object returns
|
|
755
|
+
# a hash with the following structure:
|
|
756
|
+
# * +:roles+ - (Array<Hash>)
|
|
757
|
+
# * +:path+ - (String)
|
|
758
|
+
# * +:role_name+ - (String)
|
|
759
|
+
# * +:role_id+ - (String)
|
|
760
|
+
# * +:arn+ - (String)
|
|
761
|
+
# * +:create_date+ - (Time)
|
|
762
|
+
# * +:assume_role_policy_document+ - (String)
|
|
763
|
+
# * +:is_truncated+ - (Boolean)
|
|
764
|
+
# * +:marker+ - (String)
|
|
765
|
+
|
|
766
|
+
# @!method list_server_certificates(options = {})
|
|
767
|
+
# Calls the ListServerCertificates API operation.
|
|
768
|
+
# @param [Hash] options
|
|
769
|
+
# * +:path_prefix+ - (String) The path prefix for filtering the
|
|
770
|
+
# results. For example: /company/servercerts would get all server
|
|
771
|
+
# certificates for which the path starts with /company/servercerts.
|
|
772
|
+
# This parameter is optional. If it is not included, it defaults to a
|
|
773
|
+
# slash (/), listing all server certificates.
|
|
774
|
+
# * +:marker+ - (String) Use this only when paginating results, and
|
|
775
|
+
# only in a subsequent request after you've received a response where
|
|
776
|
+
# the results are truncated. Set it to the value of the Marker
|
|
777
|
+
# element in the response you just received.
|
|
778
|
+
# * +:max_items+ - (Integer) Use this only when paginating results to
|
|
779
|
+
# indicate the maximum number of server certificates you want in the
|
|
780
|
+
# response. If there are additional server certificates beyond the
|
|
781
|
+
# maximum you specify, the IsTruncated response element will be set
|
|
782
|
+
# to +true+ .
|
|
783
|
+
# @return [Core::Response]
|
|
784
|
+
# The #data method of the response object returns
|
|
785
|
+
# a hash with the following structure:
|
|
786
|
+
# * +:server_certificate_metadata_list+ - (Array<Hash>)
|
|
787
|
+
# * +:path+ - (String)
|
|
788
|
+
# * +:server_certificate_name+ - (String)
|
|
789
|
+
# * +:server_certificate_id+ - (String)
|
|
790
|
+
# * +:arn+ - (String)
|
|
791
|
+
# * +:upload_date+ - (Time)
|
|
792
|
+
# * +:is_truncated+ - (Boolean)
|
|
793
|
+
# * +:marker+ - (String)
|
|
794
|
+
|
|
795
|
+
# @!method list_signing_certificates(options = {})
|
|
796
|
+
# Calls the ListSigningCertificates API operation.
|
|
797
|
+
# @param [Hash] options
|
|
798
|
+
# * +:user_name+ - (String) The name of the user.
|
|
799
|
+
# * +:marker+ - (String) Use this only when paginating results, and
|
|
800
|
+
# only in a subsequent request after you've received a response where
|
|
801
|
+
# the results are truncated. Set it to the value of the Marker
|
|
802
|
+
# element in the response you just received.
|
|
803
|
+
# * +:max_items+ - (Integer) Use this only when paginating results to
|
|
804
|
+
# indicate the maximum number of certificate IDs you want in the
|
|
805
|
+
# response. If there are additional certificate IDs beyond the
|
|
806
|
+
# maximum you specify, the IsTruncated response element is +true+ .
|
|
807
|
+
# @return [Core::Response]
|
|
808
|
+
# The #data method of the response object returns
|
|
809
|
+
# a hash with the following structure:
|
|
810
|
+
# * +:certificates+ - (Array<Hash>)
|
|
811
|
+
# * +:user_name+ - (String)
|
|
812
|
+
# * +:certificate_id+ - (String)
|
|
813
|
+
# * +:certificate_body+ - (String)
|
|
814
|
+
# * +:status+ - (String)
|
|
815
|
+
# * +:upload_date+ - (Time)
|
|
816
|
+
# * +:is_truncated+ - (Boolean)
|
|
817
|
+
# * +:marker+ - (String)
|
|
818
|
+
|
|
819
|
+
# @!method list_user_policies(options = {})
|
|
820
|
+
# Calls the ListUserPolicies API operation.
|
|
821
|
+
# @param [Hash] options
|
|
822
|
+
# * +:user_name+ - *required* - (String) The name of the user to list
|
|
823
|
+
# policies for.
|
|
824
|
+
# * +:marker+ - (String) Use this only when paginating results, and
|
|
825
|
+
# only in a subsequent request after you've received a response where
|
|
826
|
+
# the results are truncated. Set it to the value of the Marker
|
|
827
|
+
# element in the response you just received.
|
|
828
|
+
# * +:max_items+ - (Integer) Use this only when paginating results to
|
|
829
|
+
# indicate the maximum number of policy names you want in the
|
|
830
|
+
# response. If there are additional policy names beyond the maximum
|
|
831
|
+
# you specify, the IsTruncated response element is +true+ .
|
|
832
|
+
# @return [Core::Response]
|
|
833
|
+
# The #data method of the response object returns
|
|
834
|
+
# a hash with the following structure:
|
|
835
|
+
# * +:policy_names+ - (Array<String>)
|
|
836
|
+
# * +:is_truncated+ - (Boolean)
|
|
837
|
+
# * +:marker+ - (String)
|
|
838
|
+
|
|
839
|
+
# @!method list_users(options = {})
|
|
840
|
+
# Calls the ListUsers API operation.
|
|
841
|
+
# @param [Hash] options
|
|
842
|
+
# * +:path_prefix+ - (String) The path prefix for filtering the
|
|
843
|
+
# results. For example: /division_abc/subdivision_xyz/, which would
|
|
844
|
+
# get all user names whose path starts with
|
|
845
|
+
# /division_abc/subdivision_xyz/. This parameter is optional. If it
|
|
846
|
+
# is not included, it defaults to a slash (/), listing all user
|
|
847
|
+
# names.
|
|
848
|
+
# * +:marker+ - (String) Use this parameter only when paginating
|
|
849
|
+
# results, and only in a subsequent request after you've received a
|
|
850
|
+
# response where the results are truncated. Set it to the value of
|
|
851
|
+
# the Marker element in the response you just received.
|
|
852
|
+
# * +:max_items+ - (Integer) Use this parameter only when paginating
|
|
853
|
+
# results to indicate the maximum number of user names you want in
|
|
854
|
+
# the response. If there are additional user names beyond the maximum
|
|
855
|
+
# you specify, the IsTruncated response element is +true+ .
|
|
856
|
+
# @return [Core::Response]
|
|
857
|
+
# The #data method of the response object returns
|
|
858
|
+
# a hash with the following structure:
|
|
859
|
+
# * +:users+ - (Array<Hash>)
|
|
860
|
+
# * +:path+ - (String)
|
|
861
|
+
# * +:user_name+ - (String)
|
|
862
|
+
# * +:user_id+ - (String)
|
|
863
|
+
# * +:arn+ - (String)
|
|
864
|
+
# * +:create_date+ - (Time)
|
|
865
|
+
# * +:is_truncated+ - (Boolean)
|
|
866
|
+
# * +:marker+ - (String)
|
|
867
|
+
|
|
868
|
+
# @!method list_virtual_mfa_devices(options = {})
|
|
869
|
+
# Calls the ListVirtualMFADevices API operation.
|
|
870
|
+
# @param [Hash] options
|
|
871
|
+
# * +:assignment_status+ - (String) The status (unassigned or assigned)
|
|
872
|
+
# of the devices to list. If you do not specify an AssignmentStatus,
|
|
873
|
+
# the action defaults to Any which lists both assigned and unassigned
|
|
874
|
+
# virtual MFA devices.
|
|
875
|
+
# * +:marker+ - (String) Use this parameter only when paginating
|
|
876
|
+
# results, and only in a subsequent request after you've received a
|
|
877
|
+
# response where the results are truncated. Set it to the value of
|
|
878
|
+
# the Marker element in the response you just received.
|
|
879
|
+
# * +:max_items+ - (Integer) Use this parameter only when paginating
|
|
880
|
+
# results to indicate the maximum number of user names you want in
|
|
881
|
+
# the response. If there are additional user names beyond the maximum
|
|
882
|
+
# you specify, the IsTruncated response element is +true+ .
|
|
883
|
+
# @return [Core::Response]
|
|
884
|
+
# The #data method of the response object returns
|
|
885
|
+
# a hash with the following structure:
|
|
886
|
+
# * +:virtual_mfa_devices+ - (Array<Hash>)
|
|
887
|
+
# * +:serial_number+ - (String)
|
|
888
|
+
# * +:base_32_string_seed+ - (String)
|
|
889
|
+
# * +:qr_code_png+ - (String)
|
|
890
|
+
# * +:user+ - (Hash)
|
|
891
|
+
# * +:path+ - (String)
|
|
892
|
+
# * +:user_name+ - (String)
|
|
893
|
+
# * +:user_id+ - (String)
|
|
894
|
+
# * +:arn+ - (String)
|
|
895
|
+
# * +:create_date+ - (Time)
|
|
896
|
+
# * +:enable_date+ - (Time)
|
|
897
|
+
# * +:is_truncated+ - (Boolean)
|
|
898
|
+
# * +:marker+ - (String)
|
|
899
|
+
|
|
900
|
+
# @!method put_group_policy(options = {})
|
|
901
|
+
# Calls the PutGroupPolicy API operation.
|
|
902
|
+
# @param [Hash] options
|
|
903
|
+
# * +:group_name+ - *required* - (String) Name of the group to
|
|
904
|
+
# associate the policy with.
|
|
905
|
+
# * +:policy_name+ - *required* - (String) Name of the policy document.
|
|
906
|
+
# * +:policy_document+ - *required* - (String) The policy document.
|
|
907
|
+
# @return [Core::Response]
|
|
908
|
+
|
|
909
|
+
# @!method put_role_policy(options = {})
|
|
910
|
+
# Calls the PutRolePolicy API operation.
|
|
911
|
+
# @param [Hash] options
|
|
912
|
+
# * +:role_name+ - *required* - (String) Name of the role to associate
|
|
913
|
+
# the policy with.
|
|
914
|
+
# * +:policy_name+ - *required* - (String) Name of the policy document.
|
|
915
|
+
# * +:policy_document+ - *required* - (String) The policy document.
|
|
916
|
+
# @return [Core::Response]
|
|
917
|
+
|
|
918
|
+
# @!method put_user_policy(options = {})
|
|
919
|
+
# Calls the PutUserPolicy API operation.
|
|
920
|
+
# @param [Hash] options
|
|
921
|
+
# * +:user_name+ - *required* - (String) Name of the user to associate
|
|
922
|
+
# the policy with.
|
|
923
|
+
# * +:policy_name+ - *required* - (String) Name of the policy document.
|
|
924
|
+
# * +:policy_document+ - *required* - (String) The policy document.
|
|
925
|
+
# @return [Core::Response]
|
|
926
|
+
|
|
927
|
+
# @!method remove_role_from_instance_profile(options = {})
|
|
928
|
+
# Calls the RemoveRoleFromInstanceProfile API operation.
|
|
929
|
+
# @param [Hash] options
|
|
930
|
+
# * +:instance_profile_name+ - *required* - (String) Name of the
|
|
931
|
+
# instance profile to update.
|
|
932
|
+
# * +:role_name+ - *required* - (String) Name of the role to remove.
|
|
933
|
+
# @return [Core::Response]
|
|
934
|
+
|
|
935
|
+
# @!method remove_user_from_group(options = {})
|
|
936
|
+
# Calls the RemoveUserFromGroup API operation.
|
|
937
|
+
# @param [Hash] options
|
|
938
|
+
# * +:group_name+ - *required* - (String) Name of the group to update.
|
|
939
|
+
# * +:user_name+ - *required* - (String) Name of the user to remove.
|
|
940
|
+
# @return [Core::Response]
|
|
941
|
+
|
|
942
|
+
# @!method resync_mfa_device(options = {})
|
|
943
|
+
# Calls the ResyncMFADevice API operation.
|
|
944
|
+
# @param [Hash] options
|
|
945
|
+
# * +:user_name+ - *required* - (String) Name of the user whose MFA
|
|
946
|
+
# device you want to resynchronize.
|
|
947
|
+
# * +:serial_number+ - *required* - (String) Serial number that
|
|
948
|
+
# uniquely identifies the MFA device.
|
|
949
|
+
# * +:authentication_code_1+ - *required* - (String) An authentication
|
|
950
|
+
# code emitted by the device.
|
|
951
|
+
# * +:authentication_code_2+ - *required* - (String) A subsequent
|
|
952
|
+
# authentication code emitted by the device.
|
|
953
|
+
# @return [Core::Response]
|
|
954
|
+
|
|
955
|
+
# @!method update_access_key(options = {})
|
|
956
|
+
# Calls the UpdateAccessKey API operation.
|
|
957
|
+
# @param [Hash] options
|
|
958
|
+
# * +:user_name+ - (String) Name of the user whose key you want to
|
|
959
|
+
# update.
|
|
960
|
+
# * +:access_key_id+ - *required* - (String) The Access Key ID of the
|
|
961
|
+
# Secret Access Key you want to update.
|
|
962
|
+
# * +:status+ - *required* - (String) The status you want to assign to
|
|
963
|
+
# the Secret Access Key. Active means the key can be used for API
|
|
964
|
+
# calls to AWS, while Inactive means the key cannot be used.
|
|
965
|
+
# @return [Core::Response]
|
|
966
|
+
|
|
967
|
+
# @!method update_account_password_policy(options = {})
|
|
968
|
+
# Calls the UpdateAccountPasswordPolicy API operation.
|
|
969
|
+
# @param [Hash] options
|
|
970
|
+
# * +:minimum_password_length+ - (Integer)
|
|
971
|
+
# * +:require_symbols+ - (Boolean)
|
|
972
|
+
# * +:require_numbers+ - (Boolean)
|
|
973
|
+
# * +:require_uppercase_characters+ - (Boolean)
|
|
974
|
+
# * +:require_lowercase_characters+ - (Boolean)
|
|
975
|
+
# * +:allow_users_to_change_password+ - (Boolean)
|
|
976
|
+
# @return [Core::Response]
|
|
977
|
+
|
|
978
|
+
# @!method update_assume_role_policy(options = {})
|
|
979
|
+
# Calls the UpdateAssumeRolePolicy API operation.
|
|
980
|
+
# @param [Hash] options
|
|
981
|
+
# * +:role_name+ - *required* - (String) Name of the role to update.
|
|
982
|
+
# * +:policy_document+ - *required* - (String) The policy that grants
|
|
983
|
+
# an entity permission to assume the role.
|
|
984
|
+
# @return [Core::Response]
|
|
985
|
+
|
|
986
|
+
# @!method update_group(options = {})
|
|
987
|
+
# Calls the UpdateGroup API operation.
|
|
988
|
+
# @param [Hash] options
|
|
989
|
+
# * +:group_name+ - *required* - (String) Name of the group to update.
|
|
990
|
+
# If you're changing the name of the group, this is the original
|
|
991
|
+
# name.
|
|
992
|
+
# * +:new_path+ - (String) New path for the group. Only include this if
|
|
993
|
+
# changing the group's path.
|
|
994
|
+
# * +:new_group_name+ - (String) New name for the group. Only include
|
|
995
|
+
# this if changing the group's name.
|
|
996
|
+
# @return [Core::Response]
|
|
997
|
+
|
|
998
|
+
# @!method update_login_profile(options = {})
|
|
999
|
+
# Calls the UpdateLoginProfile API operation.
|
|
1000
|
+
# @param [Hash] options
|
|
1001
|
+
# * +:user_name+ - *required* - (String) Name of the user whose
|
|
1002
|
+
# password you want to update.
|
|
1003
|
+
# * +:password+ - (String) The new password for the user name.
|
|
1004
|
+
# @return [Core::Response]
|
|
1005
|
+
|
|
1006
|
+
# @!method update_server_certificate(options = {})
|
|
1007
|
+
# Calls the UpdateServerCertificate API operation.
|
|
1008
|
+
# @param [Hash] options
|
|
1009
|
+
# * +:server_certificate_name+ - *required* - (String) The name of the
|
|
1010
|
+
# server certificate that you want to update.
|
|
1011
|
+
# * +:new_path+ - (String) The new path for the server certificate.
|
|
1012
|
+
# Include this only if you are updating the server certificate's
|
|
1013
|
+
# path.
|
|
1014
|
+
# * +:new_server_certificate_name+ - (String) The new name for the
|
|
1015
|
+
# server certificate. Include this only if you are updating the
|
|
1016
|
+
# server certificate's name.
|
|
1017
|
+
# @return [Core::Response]
|
|
1018
|
+
|
|
1019
|
+
# @!method update_signing_certificate(options = {})
|
|
1020
|
+
# Calls the UpdateSigningCertificate API operation.
|
|
1021
|
+
# @param [Hash] options
|
|
1022
|
+
# * +:user_name+ - (String) Name of the user the signing certificate
|
|
1023
|
+
# belongs to.
|
|
1024
|
+
# * +:certificate_id+ - *required* - (String) The ID of the signing
|
|
1025
|
+
# certificate you want to update.
|
|
1026
|
+
# * +:status+ - *required* - (String) The status you want to assign to
|
|
1027
|
+
# the certificate. Active means the certificate can be used for API
|
|
1028
|
+
# calls to AWS, while Inactive means the certificate cannot be used.
|
|
1029
|
+
# @return [Core::Response]
|
|
1030
|
+
|
|
1031
|
+
# @!method update_user(options = {})
|
|
1032
|
+
# Calls the UpdateUser API operation.
|
|
1033
|
+
# @param [Hash] options
|
|
1034
|
+
# * +:user_name+ - *required* - (String) Name of the user to update. If
|
|
1035
|
+
# you're changing the name of the user, this is the original user
|
|
1036
|
+
# name.
|
|
1037
|
+
# * +:new_path+ - (String) New path for the user. Include this
|
|
1038
|
+
# parameter only if you're changing the user's path.
|
|
1039
|
+
# * +:new_user_name+ - (String) New name for the user. Include this
|
|
1040
|
+
# parameter only if you're changing the user's name.
|
|
1041
|
+
# @return [Core::Response]
|
|
1042
|
+
|
|
1043
|
+
# @!method upload_server_certificate(options = {})
|
|
1044
|
+
# Calls the UploadServerCertificate API operation.
|
|
1045
|
+
# @param [Hash] options
|
|
1046
|
+
# * +:path+ - (String) The path for the server certificate. For more
|
|
1047
|
+
# information about paths, see Identifiers for IAM Entities in Using
|
|
1048
|
+
# AWS Identity and Access Management. This parameter is optional. If
|
|
1049
|
+
# it is not included, it defaults to a slash (/).
|
|
1050
|
+
# * +:server_certificate_name+ - *required* - (String) The name for the
|
|
1051
|
+
# server certificate. Do not include the path in this value.
|
|
1052
|
+
# * +:certificate_body+ - *required* - (String) The contents of the
|
|
1053
|
+
# public key certificate in PEM-encoded format.
|
|
1054
|
+
# * +:private_key+ - *required* - (String) The contents of the private
|
|
1055
|
+
# key in PEM-encoded format.
|
|
1056
|
+
# * +:certificate_chain+ - (String) The contents of the certificate
|
|
1057
|
+
# chain. This is typically a concatenation of the PEM-encoded public
|
|
1058
|
+
# key certificates of the chain.
|
|
1059
|
+
# @return [Core::Response]
|
|
1060
|
+
# The #data method of the response object returns
|
|
1061
|
+
# a hash with the following structure:
|
|
1062
|
+
# * +:server_certificate_metadata+ - (Hash)
|
|
1063
|
+
# * +:path+ - (String)
|
|
1064
|
+
# * +:server_certificate_name+ - (String)
|
|
1065
|
+
# * +:server_certificate_id+ - (String)
|
|
1066
|
+
# * +:arn+ - (String)
|
|
1067
|
+
# * +:upload_date+ - (Time)
|
|
1068
|
+
|
|
1069
|
+
# @!method upload_signing_certificate(options = {})
|
|
1070
|
+
# Calls the UploadSigningCertificate API operation.
|
|
1071
|
+
# @param [Hash] options
|
|
1072
|
+
# * +:user_name+ - (String) Name of the user the signing certificate is
|
|
1073
|
+
# for.
|
|
1074
|
+
# * +:certificate_body+ - *required* - (String) The contents of the
|
|
1075
|
+
# signing certificate.
|
|
1076
|
+
# @return [Core::Response]
|
|
1077
|
+
# The #data method of the response object returns
|
|
1078
|
+
# a hash with the following structure:
|
|
1079
|
+
# * +:certificate+ - (Hash)
|
|
1080
|
+
# * +:user_name+ - (String)
|
|
1081
|
+
# * +:certificate_id+ - (String)
|
|
1082
|
+
# * +:certificate_body+ - (String)
|
|
1083
|
+
# * +:status+ - (String)
|
|
1084
|
+
# * +:upload_date+ - (Time)
|
|
1085
|
+
|
|
1086
|
+
# end client methods #
|
|
1087
|
+
|
|
1088
|
+
define_client_methods('2010-05-08')
|
|
1089
|
+
|
|
1090
|
+
end
|
|
1091
|
+
end
|
|
1092
|
+
end
|