aws-sdk-organizations 1.70.0 → 1.72.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ba87ed7289c6599b0767d8ce02ecd53ddff64127f0e7fbcff441265d0342c05d
4
- data.tar.gz: 6d24512c2c462703d2115ca371df6218a65b868f2591f615dbd8cc3e580f1881
3
+ metadata.gz: 162f30bd271059884b85837abd5cf6f63df7fcf70f56ce1b821973b56b02e345
4
+ data.tar.gz: 0b06f5bb24482b314f0eed58b3439aa54555fcb0c8d10d6cedc6d178ba95d256
5
5
  SHA512:
6
- metadata.gz: 6c26f41e20c68f82656785ca84db3f3206c2a0102263376cbb74c6ff6b936f636514336bf7f3bcde60cee7b6d93696671c61c0650e2b82e18fc250dbe14a84c1
7
- data.tar.gz: e3adb4cf9f194cfa622e5adaa916fee581c97e02e217c3b2e5f85dac9c7e86c6813bad05c62c090eb0f5516b5096f897e7bc5cdeb199bbf6ce9d286d267e85aa
6
+ metadata.gz: 84937fd2eb312592f7384bc2b8310f9f80e6bdc9b509f63d996b2214fff88674a1f7c4bda133a52e242886f878a91aed868868ed191ac7b65df6a97fcdbf62fe
7
+ data.tar.gz: 51fae0fcf272d98be315c7b476dd8130f341f505aecc2c5063c55e9ce0a83978f003729da118ff61b60e67a797f0897e0953fad55556b72143c1618a7e32ecfc
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.72.0 (2022-11-28)
5
+ ------------------
6
+
7
+ * Feature - This release introduces delegated administrator for AWS Organizations, a new feature to help you delegate the management of your Organizations policies, enabling you to govern your AWS organization in a decentralized way. You can now allow member accounts to manage Organizations policies.
8
+
9
+ 1.71.0 (2022-10-25)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.70.0 (2022-05-02)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.70.0
1
+ 1.72.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:organizations)
@@ -79,8 +79,9 @@ module Aws::Organizations
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
84
+ add_plugin(Aws::Organizations::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -297,6 +298,19 @@ module Aws::Organizations
297
298
  # ** Please note ** When response stubbing is enabled, no HTTP
298
299
  # requests are made, and retries are disabled.
299
300
  #
301
+ # @option options [Aws::TokenProvider] :token_provider
302
+ # A Bearer Token Provider. This can be an instance of any one of the
303
+ # following classes:
304
+ #
305
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
306
+ # tokens.
307
+ #
308
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
309
+ # access token generated from `aws login`.
310
+ #
311
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
312
+ # will be used to search for tokens configured for your profile in shared configuration files.
313
+ #
300
314
  # @option options [Boolean] :use_dualstack_endpoint
301
315
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
302
316
  # will be used if available.
@@ -310,6 +324,9 @@ module Aws::Organizations
310
324
  # When `true`, request parameters are validated before
311
325
  # sending the request.
312
326
  #
327
+ # @option options [Aws::Organizations::EndpointProvider] :endpoint_provider
328
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::Organizations::EndpointParameters`
329
+ #
313
330
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
314
331
  # requests through. Formatted like 'http://proxy.com:123'.
315
332
  #
@@ -364,8 +381,8 @@ module Aws::Organizations
364
381
  # Sends a response to the originator of a handshake agreeing to the
365
382
  # action proposed by the handshake request.
366
383
  #
367
- # This operation can be called only by the following principals when
368
- # they also have the relevant IAM permissions:
384
+ # You can only call this operation by the following principals when they
385
+ # also have the relevant IAM permissions:
369
386
  #
370
387
  # * **Invitation to join** or **Approve all features request**
371
388
  # handshakes: only a principal from the member account.
@@ -787,7 +804,7 @@ module Aws::Organizations
787
804
  # few minutes before you can successfully access the account. To check
788
805
  # the status of the request, do one of the following:
789
806
  #
790
- # * Use the `Id` member of the `CreateAccountStatus` response element
807
+ # * Use the `Id` value of the `CreateAccountStatus` response element
791
808
  # from this operation to provide as a parameter to the
792
809
  # DescribeCreateAccountStatus operation.
793
810
  #
@@ -901,8 +918,6 @@ module Aws::Organizations
901
918
  # The friendly name of the member account.
902
919
  #
903
920
  # @option params [String] :role_name
904
- # (Optional)
905
- #
906
921
  # The name of an IAM role that Organizations automatically preconfigures
907
922
  # in the new member account. This role trusts the management account,
908
923
  # allowing users in the management account to assume the role, as
@@ -1013,7 +1028,7 @@ module Aws::Organizations
1013
1028
  # resp.create_account_status.completed_timestamp #=> Time
1014
1029
  # resp.create_account_status.account_id #=> String
1015
1030
  # resp.create_account_status.gov_cloud_account_id #=> String
1016
- # resp.create_account_status.failure_reason #=> String, one of "ACCOUNT_LIMIT_EXCEEDED", "EMAIL_ALREADY_EXISTS", "INVALID_ADDRESS", "INVALID_EMAIL", "CONCURRENT_ACCOUNT_MODIFICATION", "INTERNAL_FAILURE", "GOVCLOUD_ACCOUNT_ALREADY_EXISTS", "MISSING_BUSINESS_VALIDATION", "FAILED_BUSINESS_VALIDATION", "PENDING_BUSINESS_VALIDATION", "INVALID_IDENTITY_FOR_BUSINESS_VALIDATION", "UNKNOWN_BUSINESS_VALIDATION", "MISSING_PAYMENT_INSTRUMENT", "INVALID_PAYMENT_INSTRUMENT"
1031
+ # resp.create_account_status.failure_reason #=> String, one of "ACCOUNT_LIMIT_EXCEEDED", "EMAIL_ALREADY_EXISTS", "INVALID_ADDRESS", "INVALID_EMAIL", "CONCURRENT_ACCOUNT_MODIFICATION", "INTERNAL_FAILURE", "GOVCLOUD_ACCOUNT_ALREADY_EXISTS", "MISSING_BUSINESS_VALIDATION", "FAILED_BUSINESS_VALIDATION", "PENDING_BUSINESS_VALIDATION", "INVALID_IDENTITY_FOR_BUSINESS_VALIDATION", "UNKNOWN_BUSINESS_VALIDATION", "MISSING_PAYMENT_INSTRUMENT", "INVALID_PAYMENT_INSTRUMENT", "UPDATE_EXISTING_RESOURCE_POLICY_WITH_TAGS_NOT_SUPPORTED"
1017
1032
  #
1018
1033
  # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateAccount AWS API Documentation
1019
1034
  #
@@ -1300,7 +1315,7 @@ module Aws::Organizations
1300
1315
  # resp.create_account_status.completed_timestamp #=> Time
1301
1316
  # resp.create_account_status.account_id #=> String
1302
1317
  # resp.create_account_status.gov_cloud_account_id #=> String
1303
- # resp.create_account_status.failure_reason #=> String, one of "ACCOUNT_LIMIT_EXCEEDED", "EMAIL_ALREADY_EXISTS", "INVALID_ADDRESS", "INVALID_EMAIL", "CONCURRENT_ACCOUNT_MODIFICATION", "INTERNAL_FAILURE", "GOVCLOUD_ACCOUNT_ALREADY_EXISTS", "MISSING_BUSINESS_VALIDATION", "FAILED_BUSINESS_VALIDATION", "PENDING_BUSINESS_VALIDATION", "INVALID_IDENTITY_FOR_BUSINESS_VALIDATION", "UNKNOWN_BUSINESS_VALIDATION", "MISSING_PAYMENT_INSTRUMENT", "INVALID_PAYMENT_INSTRUMENT"
1318
+ # resp.create_account_status.failure_reason #=> String, one of "ACCOUNT_LIMIT_EXCEEDED", "EMAIL_ALREADY_EXISTS", "INVALID_ADDRESS", "INVALID_EMAIL", "CONCURRENT_ACCOUNT_MODIFICATION", "INTERNAL_FAILURE", "GOVCLOUD_ACCOUNT_ALREADY_EXISTS", "MISSING_BUSINESS_VALIDATION", "FAILED_BUSINESS_VALIDATION", "PENDING_BUSINESS_VALIDATION", "INVALID_IDENTITY_FOR_BUSINESS_VALIDATION", "UNKNOWN_BUSINESS_VALIDATION", "MISSING_PAYMENT_INSTRUMENT", "INVALID_PAYMENT_INSTRUMENT", "UPDATE_EXISTING_RESOURCE_POLICY_WITH_TAGS_NOT_SUPPORTED"
1304
1319
  #
1305
1320
  # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/CreateGovCloudAccount AWS API Documentation
1306
1321
  #
@@ -1906,6 +1921,22 @@ module Aws::Organizations
1906
1921
  req.send_request(options)
1907
1922
  end
1908
1923
 
1924
+ # Deletes the resource policy from your organization.
1925
+ #
1926
+ # You can only call this operation from the organization's management
1927
+ # account.
1928
+ #
1929
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1930
+ #
1931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DeleteResourcePolicy AWS API Documentation
1932
+ #
1933
+ # @overload delete_resource_policy(params = {})
1934
+ # @param [Hash] params ({})
1935
+ def delete_resource_policy(params = {}, options = {})
1936
+ req = build_request(:delete_resource_policy, params)
1937
+ req.send_request(options)
1938
+ end
1939
+
1909
1940
  # Removes the specified member Amazon Web Services account as a
1910
1941
  # delegated administrator for the specified Amazon Web Services service.
1911
1942
  #
@@ -2085,7 +2116,7 @@ module Aws::Organizations
2085
2116
  # resp.create_account_status.completed_timestamp #=> Time
2086
2117
  # resp.create_account_status.account_id #=> String
2087
2118
  # resp.create_account_status.gov_cloud_account_id #=> String
2088
- # resp.create_account_status.failure_reason #=> String, one of "ACCOUNT_LIMIT_EXCEEDED", "EMAIL_ALREADY_EXISTS", "INVALID_ADDRESS", "INVALID_EMAIL", "CONCURRENT_ACCOUNT_MODIFICATION", "INTERNAL_FAILURE", "GOVCLOUD_ACCOUNT_ALREADY_EXISTS", "MISSING_BUSINESS_VALIDATION", "FAILED_BUSINESS_VALIDATION", "PENDING_BUSINESS_VALIDATION", "INVALID_IDENTITY_FOR_BUSINESS_VALIDATION", "UNKNOWN_BUSINESS_VALIDATION", "MISSING_PAYMENT_INSTRUMENT", "INVALID_PAYMENT_INSTRUMENT"
2119
+ # resp.create_account_status.failure_reason #=> String, one of "ACCOUNT_LIMIT_EXCEEDED", "EMAIL_ALREADY_EXISTS", "INVALID_ADDRESS", "INVALID_EMAIL", "CONCURRENT_ACCOUNT_MODIFICATION", "INTERNAL_FAILURE", "GOVCLOUD_ACCOUNT_ALREADY_EXISTS", "MISSING_BUSINESS_VALIDATION", "FAILED_BUSINESS_VALIDATION", "PENDING_BUSINESS_VALIDATION", "INVALID_IDENTITY_FOR_BUSINESS_VALIDATION", "UNKNOWN_BUSINESS_VALIDATION", "MISSING_PAYMENT_INSTRUMENT", "INVALID_PAYMENT_INSTRUMENT", "UPDATE_EXISTING_RESOURCE_POLICY_WITH_TAGS_NOT_SUPPORTED"
2089
2120
  #
2090
2121
  # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeCreateAccountStatus AWS API Documentation
2091
2122
  #
@@ -2470,6 +2501,31 @@ module Aws::Organizations
2470
2501
  req.send_request(options)
2471
2502
  end
2472
2503
 
2504
+ # Retrieves information about a resource policy.
2505
+ #
2506
+ # You can only call this operation from the organization's management
2507
+ # account or by a member account that is a delegated administrator for
2508
+ # an AWS service.
2509
+ #
2510
+ # @return [Types::DescribeResourcePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2511
+ #
2512
+ # * {Types::DescribeResourcePolicyResponse#resource_policy #resource_policy} => Types::ResourcePolicy
2513
+ #
2514
+ # @example Response structure
2515
+ #
2516
+ # resp.resource_policy.resource_policy_summary.id #=> String
2517
+ # resp.resource_policy.resource_policy_summary.arn #=> String
2518
+ # resp.resource_policy.content #=> String
2519
+ #
2520
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/DescribeResourcePolicy AWS API Documentation
2521
+ #
2522
+ # @overload describe_resource_policy(params = {})
2523
+ # @param [Hash] params ({})
2524
+ def describe_resource_policy(params = {}, options = {})
2525
+ req = build_request(:describe_resource_policy, params)
2526
+ req.send_request(options)
2527
+ end
2528
+
2473
2529
  # Detaches a policy from a target root, organizational unit (OU), or
2474
2530
  # account.
2475
2531
  #
@@ -2775,7 +2831,7 @@ module Aws::Organizations
2775
2831
  # Organizations, see [Integrating Organizations with Other Amazon Web
2776
2832
  # Services Services][2] in the *Organizations User Guide.*
2777
2833
  #
2778
- # This operation can be called only from the organization's management
2834
+ # You can only call this operation from the organization's management
2779
2835
  # account and only if the organization has [enabled all features][3].
2780
2836
  #
2781
2837
  #
@@ -3804,7 +3860,7 @@ module Aws::Organizations
3804
3860
  # resp.create_account_statuses[0].completed_timestamp #=> Time
3805
3861
  # resp.create_account_statuses[0].account_id #=> String
3806
3862
  # resp.create_account_statuses[0].gov_cloud_account_id #=> String
3807
- # resp.create_account_statuses[0].failure_reason #=> String, one of "ACCOUNT_LIMIT_EXCEEDED", "EMAIL_ALREADY_EXISTS", "INVALID_ADDRESS", "INVALID_EMAIL", "CONCURRENT_ACCOUNT_MODIFICATION", "INTERNAL_FAILURE", "GOVCLOUD_ACCOUNT_ALREADY_EXISTS", "MISSING_BUSINESS_VALIDATION", "FAILED_BUSINESS_VALIDATION", "PENDING_BUSINESS_VALIDATION", "INVALID_IDENTITY_FOR_BUSINESS_VALIDATION", "UNKNOWN_BUSINESS_VALIDATION", "MISSING_PAYMENT_INSTRUMENT", "INVALID_PAYMENT_INSTRUMENT"
3863
+ # resp.create_account_statuses[0].failure_reason #=> String, one of "ACCOUNT_LIMIT_EXCEEDED", "EMAIL_ALREADY_EXISTS", "INVALID_ADDRESS", "INVALID_EMAIL", "CONCURRENT_ACCOUNT_MODIFICATION", "INTERNAL_FAILURE", "GOVCLOUD_ACCOUNT_ALREADY_EXISTS", "MISSING_BUSINESS_VALIDATION", "FAILED_BUSINESS_VALIDATION", "PENDING_BUSINESS_VALIDATION", "INVALID_IDENTITY_FOR_BUSINESS_VALIDATION", "UNKNOWN_BUSINESS_VALIDATION", "MISSING_PAYMENT_INSTRUMENT", "INVALID_PAYMENT_INSTRUMENT", "UPDATE_EXISTING_RESOURCE_POLICY_WITH_TAGS_NOT_SUPPORTED"
3808
3864
  # resp.next_token #=> String
3809
3865
  #
3810
3866
  # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/ListCreateAccountStatus AWS API Documentation
@@ -5135,6 +5191,70 @@ module Aws::Organizations
5135
5191
  req.send_request(options)
5136
5192
  end
5137
5193
 
5194
+ # Creates or updates a resource policy.
5195
+ #
5196
+ # You can only call this operation from the organization's management
5197
+ # account.
5198
+ #
5199
+ # @option params [required, String] :content
5200
+ # If provided, the new content for the resource policy. The text must be
5201
+ # correctly formatted JSON that complies with the syntax for the
5202
+ # resource policy's type. For more information, see [Service Control
5203
+ # Policy Syntax][1] in the *Organizations User Guide.*
5204
+ #
5205
+ #
5206
+ #
5207
+ # [1]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_reference_scp-syntax.html
5208
+ #
5209
+ # @option params [Array<Types::Tag>] :tags
5210
+ # Updates the list of tags that you want to attach to the newly-created
5211
+ # resource policy. For each tag in the list, you must specify both a tag
5212
+ # key and a value. You can set the value to an empty string, but you
5213
+ # can't set it to `null`. For more information about tagging, see
5214
+ # [Tagging Organizations resources][1] in the Organizations User Guide.
5215
+ #
5216
+ # <note markdown="1"> Calls with tags apply to the initial creation of the resource policy,
5217
+ # otherwise an exception is thrown. If any one of the tags is invalid or
5218
+ # if you exceed the allowed number of tags for the resource policy, then
5219
+ # the entire request fails and the resource policy is not created.
5220
+ #
5221
+ # </note>
5222
+ #
5223
+ #
5224
+ #
5225
+ # [1]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_tagging.html
5226
+ #
5227
+ # @return [Types::PutResourcePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5228
+ #
5229
+ # * {Types::PutResourcePolicyResponse#resource_policy #resource_policy} => Types::ResourcePolicy
5230
+ #
5231
+ # @example Request syntax with placeholder values
5232
+ #
5233
+ # resp = client.put_resource_policy({
5234
+ # content: "ResourcePolicyContent", # required
5235
+ # tags: [
5236
+ # {
5237
+ # key: "TagKey", # required
5238
+ # value: "TagValue", # required
5239
+ # },
5240
+ # ],
5241
+ # })
5242
+ #
5243
+ # @example Response structure
5244
+ #
5245
+ # resp.resource_policy.resource_policy_summary.id #=> String
5246
+ # resp.resource_policy.resource_policy_summary.arn #=> String
5247
+ # resp.resource_policy.content #=> String
5248
+ #
5249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/organizations-2016-11-28/PutResourcePolicy AWS API Documentation
5250
+ #
5251
+ # @overload put_resource_policy(params = {})
5252
+ # @param [Hash] params ({})
5253
+ def put_resource_policy(params = {}, options = {})
5254
+ req = build_request(:put_resource_policy, params)
5255
+ req.send_request(options)
5256
+ end
5257
+
5138
5258
  # Enables the specified member account to administer the Organizations
5139
5259
  # features of the specified Amazon Web Services service. It grants
5140
5260
  # read-only access to Organizations service data. The account still
@@ -5591,7 +5711,7 @@ module Aws::Organizations
5591
5711
  params: params,
5592
5712
  config: config)
5593
5713
  context[:gem_name] = 'aws-sdk-organizations'
5594
- context[:gem_version] = '1.70.0'
5714
+ context[:gem_version] = '1.72.0'
5595
5715
  Seahorse::Client::Request.new(handlers, context)
5596
5716
  end
5597
5717
 
@@ -87,6 +87,7 @@ module Aws::Organizations
87
87
  DescribeOrganizationalUnitResponse = Shapes::StructureShape.new(name: 'DescribeOrganizationalUnitResponse')
88
88
  DescribePolicyRequest = Shapes::StructureShape.new(name: 'DescribePolicyRequest')
89
89
  DescribePolicyResponse = Shapes::StructureShape.new(name: 'DescribePolicyResponse')
90
+ DescribeResourcePolicyResponse = Shapes::StructureShape.new(name: 'DescribeResourcePolicyResponse')
90
91
  DestinationParentNotFoundException = Shapes::StructureShape.new(name: 'DestinationParentNotFoundException')
91
92
  DetachPolicyRequest = Shapes::StructureShape.new(name: 'DetachPolicyRequest')
92
93
  DisableAWSServiceAccessRequest = Shapes::StructureShape.new(name: 'DisableAWSServiceAccessRequest')
@@ -213,8 +214,16 @@ module Aws::Organizations
213
214
  PolicyTypeStatus = Shapes::StringShape.new(name: 'PolicyTypeStatus')
214
215
  PolicyTypeSummary = Shapes::StructureShape.new(name: 'PolicyTypeSummary')
215
216
  PolicyTypes = Shapes::ListShape.new(name: 'PolicyTypes')
217
+ PutResourcePolicyRequest = Shapes::StructureShape.new(name: 'PutResourcePolicyRequest')
218
+ PutResourcePolicyResponse = Shapes::StructureShape.new(name: 'PutResourcePolicyResponse')
216
219
  RegisterDelegatedAdministratorRequest = Shapes::StructureShape.new(name: 'RegisterDelegatedAdministratorRequest')
217
220
  RemoveAccountFromOrganizationRequest = Shapes::StructureShape.new(name: 'RemoveAccountFromOrganizationRequest')
221
+ ResourcePolicy = Shapes::StructureShape.new(name: 'ResourcePolicy')
222
+ ResourcePolicyArn = Shapes::StringShape.new(name: 'ResourcePolicyArn')
223
+ ResourcePolicyContent = Shapes::StringShape.new(name: 'ResourcePolicyContent')
224
+ ResourcePolicyId = Shapes::StringShape.new(name: 'ResourcePolicyId')
225
+ ResourcePolicyNotFoundException = Shapes::StructureShape.new(name: 'ResourcePolicyNotFoundException')
226
+ ResourcePolicySummary = Shapes::StructureShape.new(name: 'ResourcePolicySummary')
218
227
  RoleName = Shapes::StringShape.new(name: 'RoleName')
219
228
  Root = Shapes::StructureShape.new(name: 'Root')
220
229
  RootArn = Shapes::StringShape.new(name: 'RootArn')
@@ -456,6 +465,9 @@ module Aws::Organizations
456
465
  DescribePolicyResponse.add_member(:policy, Shapes::ShapeRef.new(shape: Policy, location_name: "Policy"))
457
466
  DescribePolicyResponse.struct_class = Types::DescribePolicyResponse
458
467
 
468
+ DescribeResourcePolicyResponse.add_member(:resource_policy, Shapes::ShapeRef.new(shape: ResourcePolicy, location_name: "ResourcePolicy"))
469
+ DescribeResourcePolicyResponse.struct_class = Types::DescribeResourcePolicyResponse
470
+
459
471
  DestinationParentNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
460
472
  DestinationParentNotFoundException.struct_class = Types::DestinationParentNotFoundException
461
473
 
@@ -811,6 +823,13 @@ module Aws::Organizations
811
823
 
812
824
  PolicyTypes.member = Shapes::ShapeRef.new(shape: PolicyTypeSummary)
813
825
 
826
+ PutResourcePolicyRequest.add_member(:content, Shapes::ShapeRef.new(shape: ResourcePolicyContent, required: true, location_name: "Content"))
827
+ PutResourcePolicyRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, location_name: "Tags"))
828
+ PutResourcePolicyRequest.struct_class = Types::PutResourcePolicyRequest
829
+
830
+ PutResourcePolicyResponse.add_member(:resource_policy, Shapes::ShapeRef.new(shape: ResourcePolicy, location_name: "ResourcePolicy"))
831
+ PutResourcePolicyResponse.struct_class = Types::PutResourcePolicyResponse
832
+
814
833
  RegisterDelegatedAdministratorRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "AccountId"))
815
834
  RegisterDelegatedAdministratorRequest.add_member(:service_principal, Shapes::ShapeRef.new(shape: ServicePrincipal, required: true, location_name: "ServicePrincipal"))
816
835
  RegisterDelegatedAdministratorRequest.struct_class = Types::RegisterDelegatedAdministratorRequest
@@ -818,6 +837,17 @@ module Aws::Organizations
818
837
  RemoveAccountFromOrganizationRequest.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "AccountId"))
819
838
  RemoveAccountFromOrganizationRequest.struct_class = Types::RemoveAccountFromOrganizationRequest
820
839
 
840
+ ResourcePolicy.add_member(:resource_policy_summary, Shapes::ShapeRef.new(shape: ResourcePolicySummary, location_name: "ResourcePolicySummary"))
841
+ ResourcePolicy.add_member(:content, Shapes::ShapeRef.new(shape: ResourcePolicyContent, location_name: "Content"))
842
+ ResourcePolicy.struct_class = Types::ResourcePolicy
843
+
844
+ ResourcePolicyNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
845
+ ResourcePolicyNotFoundException.struct_class = Types::ResourcePolicyNotFoundException
846
+
847
+ ResourcePolicySummary.add_member(:id, Shapes::ShapeRef.new(shape: ResourcePolicyId, location_name: "Id"))
848
+ ResourcePolicySummary.add_member(:arn, Shapes::ShapeRef.new(shape: ResourcePolicyArn, location_name: "Arn"))
849
+ ResourcePolicySummary.struct_class = Types::ResourcePolicySummary
850
+
821
851
  Root.add_member(:id, Shapes::ShapeRef.new(shape: RootId, location_name: "Id"))
822
852
  Root.add_member(:arn, Shapes::ShapeRef.new(shape: RootArn, location_name: "Arn"))
823
853
  Root.add_member(:name, Shapes::ShapeRef.new(shape: RootName, location_name: "Name"))
@@ -1121,6 +1151,22 @@ module Aws::Organizations
1121
1151
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedAPIEndpointException)
1122
1152
  end)
1123
1153
 
1154
+ api.add_operation(:delete_resource_policy, Seahorse::Model::Operation.new.tap do |o|
1155
+ o.name = "DeleteResourcePolicy"
1156
+ o.http_method = "POST"
1157
+ o.http_request_uri = "/"
1158
+ o.input = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1159
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1160
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1161
+ o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1162
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedAPIEndpointException)
1163
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1164
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
1165
+ o.errors << Shapes::ShapeRef.new(shape: ConstraintViolationException)
1166
+ o.errors << Shapes::ShapeRef.new(shape: AWSOrganizationsNotInUseException)
1167
+ o.errors << Shapes::ShapeRef.new(shape: ResourcePolicyNotFoundException)
1168
+ end)
1169
+
1124
1170
  api.add_operation(:deregister_delegated_administrator, Seahorse::Model::Operation.new.tap do |o|
1125
1171
  o.name = "DeregisterDelegatedAdministrator"
1126
1172
  o.http_method = "POST"
@@ -1241,6 +1287,21 @@ module Aws::Organizations
1241
1287
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedAPIEndpointException)
1242
1288
  end)
1243
1289
 
1290
+ api.add_operation(:describe_resource_policy, Seahorse::Model::Operation.new.tap do |o|
1291
+ o.name = "DescribeResourcePolicy"
1292
+ o.http_method = "POST"
1293
+ o.http_request_uri = "/"
1294
+ o.input = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1295
+ o.output = Shapes::ShapeRef.new(shape: DescribeResourcePolicyResponse)
1296
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1297
+ o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1298
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedAPIEndpointException)
1299
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1300
+ o.errors << Shapes::ShapeRef.new(shape: AWSOrganizationsNotInUseException)
1301
+ o.errors << Shapes::ShapeRef.new(shape: ResourcePolicyNotFoundException)
1302
+ o.errors << Shapes::ShapeRef.new(shape: ConstraintViolationException)
1303
+ end)
1304
+
1244
1305
  api.add_operation(:detach_policy, Seahorse::Model::Operation.new.tap do |o|
1245
1306
  o.name = "DetachPolicy"
1246
1307
  o.http_method = "POST"
@@ -1724,6 +1785,22 @@ module Aws::Organizations
1724
1785
  o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1725
1786
  end)
1726
1787
 
1788
+ api.add_operation(:put_resource_policy, Seahorse::Model::Operation.new.tap do |o|
1789
+ o.name = "PutResourcePolicy"
1790
+ o.http_method = "POST"
1791
+ o.http_request_uri = "/"
1792
+ o.input = Shapes::ShapeRef.new(shape: PutResourcePolicyRequest)
1793
+ o.output = Shapes::ShapeRef.new(shape: PutResourcePolicyResponse)
1794
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1795
+ o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1796
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedAPIEndpointException)
1797
+ o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
1798
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
1799
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
1800
+ o.errors << Shapes::ShapeRef.new(shape: ConstraintViolationException)
1801
+ o.errors << Shapes::ShapeRef.new(shape: AWSOrganizationsNotInUseException)
1802
+ end)
1803
+
1727
1804
  api.add_operation(:register_delegated_administrator, Seahorse::Model::Operation.new.tap do |o|
1728
1805
  o.name = "RegisterDelegatedAdministrator"
1729
1806
  o.http_method = "POST"
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::Organizations
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ if self[:region].nil?
54
+ raise ArgumentError, "Missing required EndpointParameter: :region"
55
+ end
56
+ self[:use_dual_stack] = options[:use_dual_stack]
57
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
+ if self[:use_dual_stack].nil?
59
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
60
+ end
61
+ self[:use_fips] = options[:use_fips]
62
+ self[:use_fips] = false if self[:use_fips].nil?
63
+ if self[:use_fips].nil?
64
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
65
+ end
66
+ self[:endpoint] = options[:endpoint]
67
+ end
68
+ end
69
+ end