aws-sdk-directoryservice 1.31.0 → 1.36.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: 2c69849c79b2b5d4a7a5eb4b74047b10e1e056a268b431b6a071af156c05edb6
4
- data.tar.gz: 8b95e92c0727e7b6973c82e7c760d66e9974e2db228ac54d53696c32ecf3b1ca
3
+ metadata.gz: eebbbdcffc97de8c09d60e84108ece87f99bf7b342938ade8034f8995d0d7e9a
4
+ data.tar.gz: aedbccb9c7780c2fb411d8f01f6c990d3b207a2a3cbc9c2ece0c830d25608d83
5
5
  SHA512:
6
- metadata.gz: dad98d3cfd55ce5ca841a52a936e07884030a6f668bdcfc6baca6953c7a3b5bd6ba092afac049c39a6ac9592fea0ab2ca767d24966d7f8216a76ee704bdc57fb
7
- data.tar.gz: 2329dd626305549aee76e1f954ae6b8bbd817e469479aba0c3f256a0f3d9dadb3e7d35fb389a954f810657fb144e0437dbcac96d85f2e1369abb69e9dd82cbf4
6
+ metadata.gz: 7418e57eeab0ac6784e9d296e12ed6a397f41580f27c5843fea858dc8d44e27b4ed1820cddf4adbb3d8f54224e2606c59e08f0c2c5dd87daa87e7e6a8d1b1a64
7
+ data.tar.gz: e73b538172fe694f0513000f6ca7a819963671493dbf9b43ca5252e84d0937a40b4f6a3747fa716eee437f46247eebf046fcd855779d1baac9a853e93a650c58
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  require 'aws-sdk-core'
11
12
  require 'aws-sigv4'
12
13
 
@@ -44,9 +45,9 @@ require_relative 'aws-sdk-directoryservice/customizations'
44
45
  #
45
46
  # See {Errors} for more information.
46
47
  #
47
- # @service
48
+ # @!group service
48
49
  module Aws::DirectoryService
49
50
 
50
- GEM_VERSION = '1.31.0'
51
+ GEM_VERSION = '1.36.0'
51
52
 
52
53
  end
@@ -85,13 +85,28 @@ module Aws::DirectoryService
85
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
86
  # credentials.
87
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
88
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
89
103
  # from an EC2 IMDS on an EC2 instance.
90
104
  #
91
- # * `Aws::SharedCredentials` - Used for loading credentials from a
92
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
93
107
  #
94
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
95
110
  #
96
111
  # When `:credentials` are not configured directly, the following
97
112
  # locations will be searched for credentials:
@@ -101,10 +116,10 @@ module Aws::DirectoryService
101
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
102
117
  # * `~/.aws/credentials`
103
118
  # * `~/.aws/config`
104
- # * EC2 IMDS instance profile - When used by default, the timeouts are
105
- # very aggressive. Construct and pass an instance of
106
- # `Aws::InstanceProfileCredentails` to enable retries and extended
107
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
108
123
  #
109
124
  # @option options [required, String] :region
110
125
  # The AWS region to connect to. The configured `:region` is
@@ -463,6 +478,43 @@ module Aws::DirectoryService
463
478
  req.send_request(options)
464
479
  end
465
480
 
481
+ # Adds two domain controllers in the specified Region for the specified
482
+ # directory.
483
+ #
484
+ # @option params [required, String] :directory_id
485
+ # The identifier of the directory to which you want to add Region
486
+ # replication.
487
+ #
488
+ # @option params [required, String] :region_name
489
+ # The name of the Region where you want to add domain controllers for
490
+ # replication. For example, `us-east-1`.
491
+ #
492
+ # @option params [required, Types::DirectoryVpcSettings] :vpc_settings
493
+ # Contains VPC information for the CreateDirectory or CreateMicrosoftAD
494
+ # operation.
495
+ #
496
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
497
+ #
498
+ # @example Request syntax with placeholder values
499
+ #
500
+ # resp = client.add_region({
501
+ # directory_id: "DirectoryId", # required
502
+ # region_name: "RegionName", # required
503
+ # vpc_settings: { # required
504
+ # vpc_id: "VpcId", # required
505
+ # subnet_ids: ["SubnetId"], # required
506
+ # },
507
+ # })
508
+ #
509
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ds-2015-04-16/AddRegion AWS API Documentation
510
+ #
511
+ # @overload add_region(params = {})
512
+ # @param [Hash] params ({})
513
+ def add_region(params = {}, options = {})
514
+ req = build_request(:add_region, params)
515
+ req.send_request(options)
516
+ end
517
+
466
518
  # Adds or overwrites one or more tags for the specified directory. Each
467
519
  # directory can have a maximum of 50 tags. Each tag consists of a key
468
520
  # and optional value. Tag keys must be unique to each resource.
@@ -644,8 +696,8 @@ module Aws::DirectoryService
644
696
  req.send_request(options)
645
697
  end
646
698
 
647
- # Creates a computer account in the specified directory, and joins the
648
- # computer to the directory.
699
+ # Creates an Active Directory computer object in the specified
700
+ # directory.
649
701
  #
650
702
  # @option params [required, String] :directory_id
651
703
  # The identifier of the directory in which to create the computer
@@ -768,6 +820,36 @@ module Aws::DirectoryService
768
820
  # If you need to change the password for the administrator account, you
769
821
  # can use the ResetUserPassword API call.
770
822
  #
823
+ # The regex pattern for this string is made up of the following
824
+ # conditions:
825
+ #
826
+ # * Length (?=^.\\\{8,64\\}$) – Must be between 8 and 64 characters
827
+ #
828
+ # ^
829
+ #
830
+ # AND any 3 of the following password complexity rules required by
831
+ # Active Directory:
832
+ #
833
+ # * Numbers and upper case and lowercase
834
+ # (?=.*\\d)(?=.*\[A-Z\])(?=.*\[a-z\])
835
+ #
836
+ # * Numbers and special characters and lower case
837
+ # (?=.*\\d)(?=.*\[^A-Za-z0-9\\s\])(?=.*\[a-z\])
838
+ #
839
+ # * Special characters and upper case and lower case
840
+ # (?=.*\[^A-Za-z0-9\\s\])(?=.*\[A-Z\])(?=.*\[a-z\])
841
+ #
842
+ # * Numbers and upper case and special characters
843
+ # (?=.*\\d)(?=.*\[A-Z\])(?=.*\[^A-Za-z0-9\\s\])
844
+ #
845
+ # For additional information about how Active Directory passwords are
846
+ # enforced, see [Password must meet complexity requirements][1] on the
847
+ # Microsoft website.
848
+ #
849
+ #
850
+ #
851
+ # [1]: https://docs.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/password-must-meet-complexity-requirements
852
+ #
771
853
  # @option params [String] :description
772
854
  # A description for the directory.
773
855
  #
@@ -1268,6 +1350,8 @@ module Aws::DirectoryService
1268
1350
  # resp.certificate.common_name #=> String
1269
1351
  # resp.certificate.registered_date_time #=> Time
1270
1352
  # resp.certificate.expiry_date_time #=> Time
1353
+ # resp.certificate.type #=> String, one of "ClientCertAuth", "ClientLDAPS"
1354
+ # resp.certificate.client_cert_auth_settings.ocsp_url #=> String
1271
1355
  #
1272
1356
  # @see http://docs.aws.amazon.com/goto/WebAPI/ds-2015-04-16/DescribeCertificate AWS API Documentation
1273
1357
  #
@@ -1433,6 +1517,9 @@ module Aws::DirectoryService
1433
1517
  # resp.directory_descriptions[0].owner_directory_description.radius_settings.display_label #=> String
1434
1518
  # resp.directory_descriptions[0].owner_directory_description.radius_settings.use_same_username #=> Boolean
1435
1519
  # resp.directory_descriptions[0].owner_directory_description.radius_status #=> String, one of "Creating", "Completed", "Failed"
1520
+ # resp.directory_descriptions[0].regions_info.primary_region #=> String
1521
+ # resp.directory_descriptions[0].regions_info.additional_regions #=> Array
1522
+ # resp.directory_descriptions[0].regions_info.additional_regions[0] #=> String
1436
1523
  # resp.next_token #=> String
1437
1524
  #
1438
1525
  # @see http://docs.aws.amazon.com/goto/WebAPI/ds-2015-04-16/DescribeDirectories AWS API Documentation
@@ -1594,6 +1681,57 @@ module Aws::DirectoryService
1594
1681
  req.send_request(options)
1595
1682
  end
1596
1683
 
1684
+ # Provides information about the Regions that are configured for
1685
+ # multi-Region replication.
1686
+ #
1687
+ # @option params [required, String] :directory_id
1688
+ # The identifier of the directory.
1689
+ #
1690
+ # @option params [String] :region_name
1691
+ # The name of the Region. For example, `us-east-1`.
1692
+ #
1693
+ # @option params [String] :next_token
1694
+ # The `DescribeRegionsResult.NextToken` value from a previous call to
1695
+ # DescribeRegions. Pass null if this is the first call.
1696
+ #
1697
+ # @return [Types::DescribeRegionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1698
+ #
1699
+ # * {Types::DescribeRegionsResult#regions_description #regions_description} => Array<Types::RegionDescription>
1700
+ # * {Types::DescribeRegionsResult#next_token #next_token} => String
1701
+ #
1702
+ # @example Request syntax with placeholder values
1703
+ #
1704
+ # resp = client.describe_regions({
1705
+ # directory_id: "DirectoryId", # required
1706
+ # region_name: "RegionName",
1707
+ # next_token: "NextToken",
1708
+ # })
1709
+ #
1710
+ # @example Response structure
1711
+ #
1712
+ # resp.regions_description #=> Array
1713
+ # resp.regions_description[0].directory_id #=> String
1714
+ # resp.regions_description[0].region_name #=> String
1715
+ # resp.regions_description[0].region_type #=> String, one of "Primary", "Additional"
1716
+ # resp.regions_description[0].status #=> String, one of "Requested", "Creating", "Created", "Active", "Inoperable", "Impaired", "Restoring", "RestoreFailed", "Deleting", "Deleted", "Failed"
1717
+ # resp.regions_description[0].vpc_settings.vpc_id #=> String
1718
+ # resp.regions_description[0].vpc_settings.subnet_ids #=> Array
1719
+ # resp.regions_description[0].vpc_settings.subnet_ids[0] #=> String
1720
+ # resp.regions_description[0].desired_number_of_domain_controllers #=> Integer
1721
+ # resp.regions_description[0].launch_time #=> Time
1722
+ # resp.regions_description[0].status_last_updated_date_time #=> Time
1723
+ # resp.regions_description[0].last_updated_date_time #=> Time
1724
+ # resp.next_token #=> String
1725
+ #
1726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ds-2015-04-16/DescribeRegions AWS API Documentation
1727
+ #
1728
+ # @overload describe_regions(params = {})
1729
+ # @param [Hash] params ({})
1730
+ def describe_regions(params = {}, options = {})
1731
+ req = build_request(:describe_regions, params)
1732
+ req.send_request(options)
1733
+ end
1734
+
1597
1735
  # Returns the shared directories in your account.
1598
1736
  #
1599
1737
  # @option params [required, String] :owner_directory_id
@@ -1772,6 +1910,33 @@ module Aws::DirectoryService
1772
1910
  req.send_request(options)
1773
1911
  end
1774
1912
 
1913
+ # Disable client authentication for smart cards.
1914
+ #
1915
+ # @option params [required, String] :directory_id
1916
+ # Disable client authentication in a specified directory for smart
1917
+ # cards.
1918
+ #
1919
+ # @option params [required, String] :type
1920
+ # Disable the type of client authentication request.
1921
+ #
1922
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1923
+ #
1924
+ # @example Request syntax with placeholder values
1925
+ #
1926
+ # resp = client.disable_client_authentication({
1927
+ # directory_id: "DirectoryId", # required
1928
+ # type: "SmartCard", # required, accepts SmartCard
1929
+ # })
1930
+ #
1931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ds-2015-04-16/DisableClientAuthentication AWS API Documentation
1932
+ #
1933
+ # @overload disable_client_authentication(params = {})
1934
+ # @param [Hash] params ({})
1935
+ def disable_client_authentication(params = {}, options = {})
1936
+ req = build_request(:disable_client_authentication, params)
1937
+ req.send_request(options)
1938
+ end
1939
+
1775
1940
  # Deactivates LDAP secure calls for the specified directory.
1776
1941
  #
1777
1942
  # @option params [required, String] :directory_id
@@ -1863,6 +2028,32 @@ module Aws::DirectoryService
1863
2028
  req.send_request(options)
1864
2029
  end
1865
2030
 
2031
+ # Enable client authentication for smardtcards.
2032
+ #
2033
+ # @option params [required, String] :directory_id
2034
+ # Enable client authentication in a specified directory for smart cards.
2035
+ #
2036
+ # @option params [required, String] :type
2037
+ # Enable the type of client authentication request.
2038
+ #
2039
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2040
+ #
2041
+ # @example Request syntax with placeholder values
2042
+ #
2043
+ # resp = client.enable_client_authentication({
2044
+ # directory_id: "DirectoryId", # required
2045
+ # type: "SmartCard", # required, accepts SmartCard
2046
+ # })
2047
+ #
2048
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ds-2015-04-16/EnableClientAuthentication AWS API Documentation
2049
+ #
2050
+ # @overload enable_client_authentication(params = {})
2051
+ # @param [Hash] params ({})
2052
+ def enable_client_authentication(params = {}, options = {})
2053
+ req = build_request(:enable_client_authentication, params)
2054
+ req.send_request(options)
2055
+ end
2056
+
1866
2057
  # Activates the switch for the specific directory to always use LDAP
1867
2058
  # secure calls.
1868
2059
  #
@@ -2064,6 +2255,7 @@ module Aws::DirectoryService
2064
2255
  # resp.certificates_info[0].common_name #=> String
2065
2256
  # resp.certificates_info[0].state #=> String, one of "Registering", "Registered", "RegisterFailed", "Deregistering", "Deregistered", "DeregisterFailed"
2066
2257
  # resp.certificates_info[0].expiry_date_time #=> Time
2258
+ # resp.certificates_info[0].type #=> String, one of "ClientCertAuth", "ClientLDAPS"
2067
2259
  #
2068
2260
  # @see http://docs.aws.amazon.com/goto/WebAPI/ds-2015-04-16/ListCertificates AWS API Documentation
2069
2261
  #
@@ -2261,6 +2453,13 @@ module Aws::DirectoryService
2261
2453
  # @option params [required, String] :certificate_data
2262
2454
  # The certificate PEM string that needs to be registered.
2263
2455
  #
2456
+ # @option params [String] :type
2457
+ # The certificate type to register for the request.
2458
+ #
2459
+ # @option params [Types::ClientCertAuthSettings] :client_cert_auth_settings
2460
+ # Contains information about the client certificate authentication
2461
+ # settings, such as `ClientLDAPS` or `ClientCertAuth`.
2462
+ #
2264
2463
  # @return [Types::RegisterCertificateResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2265
2464
  #
2266
2465
  # * {Types::RegisterCertificateResult#certificate_id #certificate_id} => String
@@ -2270,6 +2469,10 @@ module Aws::DirectoryService
2270
2469
  # resp = client.register_certificate({
2271
2470
  # directory_id: "DirectoryId", # required
2272
2471
  # certificate_data: "CertificateData", # required
2472
+ # type: "ClientCertAuth", # accepts ClientCertAuth, ClientLDAPS
2473
+ # client_cert_auth_settings: {
2474
+ # ocsp_url: "OCSPUrl",
2475
+ # },
2273
2476
  # })
2274
2477
  #
2275
2478
  # @example Response structure
@@ -2375,6 +2578,31 @@ module Aws::DirectoryService
2375
2578
  req.send_request(options)
2376
2579
  end
2377
2580
 
2581
+ # Stops all replication and removes the domain controllers from the
2582
+ # specified Region. You cannot remove the primary Region with this
2583
+ # operation. Instead, use the `DeleteDirectory` API.
2584
+ #
2585
+ # @option params [required, String] :directory_id
2586
+ # The identifier of the directory for which you want to remove Region
2587
+ # replication.
2588
+ #
2589
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2590
+ #
2591
+ # @example Request syntax with placeholder values
2592
+ #
2593
+ # resp = client.remove_region({
2594
+ # directory_id: "DirectoryId", # required
2595
+ # })
2596
+ #
2597
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ds-2015-04-16/RemoveRegion AWS API Documentation
2598
+ #
2599
+ # @overload remove_region(params = {})
2600
+ # @param [Hash] params ({})
2601
+ def remove_region(params = {}, options = {})
2602
+ req = build_request(:remove_region, params)
2603
+ req.send_request(options)
2604
+ end
2605
+
2378
2606
  # Removes tags from a directory.
2379
2607
  #
2380
2608
  # @option params [required, String] :resource_id
@@ -2819,7 +3047,7 @@ module Aws::DirectoryService
2819
3047
  params: params,
2820
3048
  config: config)
2821
3049
  context[:gem_name] = 'aws-sdk-directoryservice'
2822
- context[:gem_version] = '1.31.0'
3050
+ context[:gem_version] = '1.36.0'
2823
3051
  Seahorse::Client::Request.new(handlers, context)
2824
3052
  end
2825
3053
 
@@ -19,9 +19,12 @@ module Aws::DirectoryService
19
19
  AccessUrl = Shapes::StringShape.new(name: 'AccessUrl')
20
20
  AddIpRoutesRequest = Shapes::StructureShape.new(name: 'AddIpRoutesRequest')
21
21
  AddIpRoutesResult = Shapes::StructureShape.new(name: 'AddIpRoutesResult')
22
+ AddRegionRequest = Shapes::StructureShape.new(name: 'AddRegionRequest')
23
+ AddRegionResult = Shapes::StructureShape.new(name: 'AddRegionResult')
22
24
  AddTagsToResourceRequest = Shapes::StructureShape.new(name: 'AddTagsToResourceRequest')
23
25
  AddTagsToResourceResult = Shapes::StructureShape.new(name: 'AddTagsToResourceResult')
24
26
  AddedDateTime = Shapes::TimestampShape.new(name: 'AddedDateTime')
27
+ AdditionalRegions = Shapes::ListShape.new(name: 'AdditionalRegions')
25
28
  AliasName = Shapes::StringShape.new(name: 'AliasName')
26
29
  Attribute = Shapes::StructureShape.new(name: 'Attribute')
27
30
  AttributeName = Shapes::StringShape.new(name: 'AttributeName')
@@ -45,9 +48,12 @@ module Aws::DirectoryService
45
48
  CertificateRegisteredDateTime = Shapes::TimestampShape.new(name: 'CertificateRegisteredDateTime')
46
49
  CertificateState = Shapes::StringShape.new(name: 'CertificateState')
47
50
  CertificateStateReason = Shapes::StringShape.new(name: 'CertificateStateReason')
51
+ CertificateType = Shapes::StringShape.new(name: 'CertificateType')
48
52
  CertificatesInfo = Shapes::ListShape.new(name: 'CertificatesInfo')
49
53
  CidrIp = Shapes::StringShape.new(name: 'CidrIp')
50
54
  CidrIps = Shapes::ListShape.new(name: 'CidrIps')
55
+ ClientAuthenticationType = Shapes::StringShape.new(name: 'ClientAuthenticationType')
56
+ ClientCertAuthSettings = Shapes::StructureShape.new(name: 'ClientCertAuthSettings')
51
57
  ClientException = Shapes::StructureShape.new(name: 'ClientException')
52
58
  CloudOnlyDirectoriesLimitReached = Shapes::BooleanShape.new(name: 'CloudOnlyDirectoriesLimitReached')
53
59
  Computer = Shapes::StructureShape.new(name: 'Computer')
@@ -106,6 +112,8 @@ module Aws::DirectoryService
106
112
  DescribeEventTopicsResult = Shapes::StructureShape.new(name: 'DescribeEventTopicsResult')
107
113
  DescribeLDAPSSettingsRequest = Shapes::StructureShape.new(name: 'DescribeLDAPSSettingsRequest')
108
114
  DescribeLDAPSSettingsResult = Shapes::StructureShape.new(name: 'DescribeLDAPSSettingsResult')
115
+ DescribeRegionsRequest = Shapes::StructureShape.new(name: 'DescribeRegionsRequest')
116
+ DescribeRegionsResult = Shapes::StructureShape.new(name: 'DescribeRegionsResult')
109
117
  DescribeSharedDirectoriesRequest = Shapes::StructureShape.new(name: 'DescribeSharedDirectoriesRequest')
110
118
  DescribeSharedDirectoriesResult = Shapes::StructureShape.new(name: 'DescribeSharedDirectoriesResult')
111
119
  DescribeSnapshotsRequest = Shapes::StructureShape.new(name: 'DescribeSnapshotsRequest')
@@ -114,6 +122,7 @@ module Aws::DirectoryService
114
122
  DescribeTrustsResult = Shapes::StructureShape.new(name: 'DescribeTrustsResult')
115
123
  Description = Shapes::StringShape.new(name: 'Description')
116
124
  DesiredNumberOfDomainControllers = Shapes::IntegerShape.new(name: 'DesiredNumberOfDomainControllers')
125
+ DirectoryAlreadyInRegionException = Shapes::StructureShape.new(name: 'DirectoryAlreadyInRegionException')
117
126
  DirectoryAlreadySharedException = Shapes::StructureShape.new(name: 'DirectoryAlreadySharedException')
118
127
  DirectoryConnectSettings = Shapes::StructureShape.new(name: 'DirectoryConnectSettings')
119
128
  DirectoryConnectSettingsDescription = Shapes::StructureShape.new(name: 'DirectoryConnectSettingsDescription')
@@ -134,6 +143,8 @@ module Aws::DirectoryService
134
143
  DirectoryUnavailableException = Shapes::StructureShape.new(name: 'DirectoryUnavailableException')
135
144
  DirectoryVpcSettings = Shapes::StructureShape.new(name: 'DirectoryVpcSettings')
136
145
  DirectoryVpcSettingsDescription = Shapes::StructureShape.new(name: 'DirectoryVpcSettingsDescription')
146
+ DisableClientAuthenticationRequest = Shapes::StructureShape.new(name: 'DisableClientAuthenticationRequest')
147
+ DisableClientAuthenticationResult = Shapes::StructureShape.new(name: 'DisableClientAuthenticationResult')
137
148
  DisableLDAPSRequest = Shapes::StructureShape.new(name: 'DisableLDAPSRequest')
138
149
  DisableLDAPSResult = Shapes::StructureShape.new(name: 'DisableLDAPSResult')
139
150
  DisableRadiusRequest = Shapes::StructureShape.new(name: 'DisableRadiusRequest')
@@ -148,6 +159,8 @@ module Aws::DirectoryService
148
159
  DomainControllerStatus = Shapes::StringShape.new(name: 'DomainControllerStatus')
149
160
  DomainControllerStatusReason = Shapes::StringShape.new(name: 'DomainControllerStatusReason')
150
161
  DomainControllers = Shapes::ListShape.new(name: 'DomainControllers')
162
+ EnableClientAuthenticationRequest = Shapes::StructureShape.new(name: 'EnableClientAuthenticationRequest')
163
+ EnableClientAuthenticationResult = Shapes::StructureShape.new(name: 'EnableClientAuthenticationResult')
151
164
  EnableLDAPSRequest = Shapes::StructureShape.new(name: 'EnableLDAPSRequest')
152
165
  EnableLDAPSResult = Shapes::StructureShape.new(name: 'EnableLDAPSResult')
153
166
  EnableRadiusRequest = Shapes::StructureShape.new(name: 'EnableRadiusRequest')
@@ -166,6 +179,7 @@ module Aws::DirectoryService
166
179
  GetSnapshotLimitsResult = Shapes::StructureShape.new(name: 'GetSnapshotLimitsResult')
167
180
  InsufficientPermissionsException = Shapes::StructureShape.new(name: 'InsufficientPermissionsException')
168
181
  InvalidCertificateException = Shapes::StructureShape.new(name: 'InvalidCertificateException')
182
+ InvalidClientAuthStatusException = Shapes::StructureShape.new(name: 'InvalidClientAuthStatusException')
169
183
  InvalidLDAPSStatusException = Shapes::StructureShape.new(name: 'InvalidLDAPSStatusException')
170
184
  InvalidNextTokenException = Shapes::StructureShape.new(name: 'InvalidNextTokenException')
171
185
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
@@ -206,6 +220,7 @@ module Aws::DirectoryService
206
220
  NextToken = Shapes::StringShape.new(name: 'NextToken')
207
221
  NoAvailableCertificateException = Shapes::StructureShape.new(name: 'NoAvailableCertificateException')
208
222
  Notes = Shapes::StringShape.new(name: 'Notes')
223
+ OCSPUrl = Shapes::StringShape.new(name: 'OCSPUrl')
209
224
  OrganizationalUnitDN = Shapes::StringShape.new(name: 'OrganizationalUnitDN')
210
225
  OrganizationsException = Shapes::StructureShape.new(name: 'OrganizationsException')
211
226
  OwnerDirectoryDescription = Shapes::StructureShape.new(name: 'OwnerDirectoryDescription')
@@ -219,6 +234,12 @@ module Aws::DirectoryService
219
234
  RadiusSharedSecret = Shapes::StringShape.new(name: 'RadiusSharedSecret')
220
235
  RadiusStatus = Shapes::StringShape.new(name: 'RadiusStatus')
221
236
  RadiusTimeout = Shapes::IntegerShape.new(name: 'RadiusTimeout')
237
+ RegionDescription = Shapes::StructureShape.new(name: 'RegionDescription')
238
+ RegionLimitExceededException = Shapes::StructureShape.new(name: 'RegionLimitExceededException')
239
+ RegionName = Shapes::StringShape.new(name: 'RegionName')
240
+ RegionType = Shapes::StringShape.new(name: 'RegionType')
241
+ RegionsDescription = Shapes::ListShape.new(name: 'RegionsDescription')
242
+ RegionsInfo = Shapes::StructureShape.new(name: 'RegionsInfo')
222
243
  RegisterCertificateRequest = Shapes::StructureShape.new(name: 'RegisterCertificateRequest')
223
244
  RegisterCertificateResult = Shapes::StructureShape.new(name: 'RegisterCertificateResult')
224
245
  RegisterEventTopicRequest = Shapes::StructureShape.new(name: 'RegisterEventTopicRequest')
@@ -229,6 +250,8 @@ module Aws::DirectoryService
229
250
  RemoteDomainNames = Shapes::ListShape.new(name: 'RemoteDomainNames')
230
251
  RemoveIpRoutesRequest = Shapes::StructureShape.new(name: 'RemoveIpRoutesRequest')
231
252
  RemoveIpRoutesResult = Shapes::StructureShape.new(name: 'RemoveIpRoutesResult')
253
+ RemoveRegionRequest = Shapes::StructureShape.new(name: 'RemoveRegionRequest')
254
+ RemoveRegionResult = Shapes::StructureShape.new(name: 'RemoveRegionResult')
232
255
  RemoveTagsFromResourceRequest = Shapes::StructureShape.new(name: 'RemoveTagsFromResourceRequest')
233
256
  RemoveTagsFromResourceResult = Shapes::StructureShape.new(name: 'RemoveTagsFromResourceResult')
234
257
  ReplicationScope = Shapes::StringShape.new(name: 'ReplicationScope')
@@ -335,12 +358,21 @@ module Aws::DirectoryService
335
358
 
336
359
  AddIpRoutesResult.struct_class = Types::AddIpRoutesResult
337
360
 
361
+ AddRegionRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
362
+ AddRegionRequest.add_member(:region_name, Shapes::ShapeRef.new(shape: RegionName, required: true, location_name: "RegionName"))
363
+ AddRegionRequest.add_member(:vpc_settings, Shapes::ShapeRef.new(shape: DirectoryVpcSettings, required: true, location_name: "VPCSettings"))
364
+ AddRegionRequest.struct_class = Types::AddRegionRequest
365
+
366
+ AddRegionResult.struct_class = Types::AddRegionResult
367
+
338
368
  AddTagsToResourceRequest.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "ResourceId"))
339
369
  AddTagsToResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, required: true, location_name: "Tags"))
340
370
  AddTagsToResourceRequest.struct_class = Types::AddTagsToResourceRequest
341
371
 
342
372
  AddTagsToResourceResult.struct_class = Types::AddTagsToResourceResult
343
373
 
374
+ AdditionalRegions.member = Shapes::ShapeRef.new(shape: RegionName)
375
+
344
376
  Attribute.add_member(:name, Shapes::ShapeRef.new(shape: AttributeName, location_name: "Name"))
345
377
  Attribute.add_member(:value, Shapes::ShapeRef.new(shape: AttributeValue, location_name: "Value"))
346
378
  Attribute.struct_class = Types::Attribute
@@ -365,6 +397,8 @@ module Aws::DirectoryService
365
397
  Certificate.add_member(:common_name, Shapes::ShapeRef.new(shape: CertificateCN, location_name: "CommonName"))
366
398
  Certificate.add_member(:registered_date_time, Shapes::ShapeRef.new(shape: CertificateRegisteredDateTime, location_name: "RegisteredDateTime"))
367
399
  Certificate.add_member(:expiry_date_time, Shapes::ShapeRef.new(shape: CertificateExpiryDateTime, location_name: "ExpiryDateTime"))
400
+ Certificate.add_member(:type, Shapes::ShapeRef.new(shape: CertificateType, location_name: "Type"))
401
+ Certificate.add_member(:client_cert_auth_settings, Shapes::ShapeRef.new(shape: ClientCertAuthSettings, location_name: "ClientCertAuthSettings"))
368
402
  Certificate.struct_class = Types::Certificate
369
403
 
370
404
  CertificateAlreadyExistsException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
@@ -383,6 +417,7 @@ module Aws::DirectoryService
383
417
  CertificateInfo.add_member(:common_name, Shapes::ShapeRef.new(shape: CertificateCN, location_name: "CommonName"))
384
418
  CertificateInfo.add_member(:state, Shapes::ShapeRef.new(shape: CertificateState, location_name: "State"))
385
419
  CertificateInfo.add_member(:expiry_date_time, Shapes::ShapeRef.new(shape: CertificateExpiryDateTime, location_name: "ExpiryDateTime"))
420
+ CertificateInfo.add_member(:type, Shapes::ShapeRef.new(shape: CertificateType, location_name: "Type"))
386
421
  CertificateInfo.struct_class = Types::CertificateInfo
387
422
 
388
423
  CertificateLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
@@ -393,6 +428,9 @@ module Aws::DirectoryService
393
428
 
394
429
  CidrIps.member = Shapes::ShapeRef.new(shape: CidrIp)
395
430
 
431
+ ClientCertAuthSettings.add_member(:ocsp_url, Shapes::ShapeRef.new(shape: OCSPUrl, location_name: "OCSPUrl"))
432
+ ClientCertAuthSettings.struct_class = Types::ClientCertAuthSettings
433
+
396
434
  ClientException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
397
435
  ClientException.add_member(:request_id, Shapes::ShapeRef.new(shape: RequestId, location_name: "RequestId"))
398
436
  ClientException.struct_class = Types::ClientException
@@ -587,6 +625,15 @@ module Aws::DirectoryService
587
625
  DescribeLDAPSSettingsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
588
626
  DescribeLDAPSSettingsResult.struct_class = Types::DescribeLDAPSSettingsResult
589
627
 
628
+ DescribeRegionsRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
629
+ DescribeRegionsRequest.add_member(:region_name, Shapes::ShapeRef.new(shape: RegionName, location_name: "RegionName"))
630
+ DescribeRegionsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
631
+ DescribeRegionsRequest.struct_class = Types::DescribeRegionsRequest
632
+
633
+ DescribeRegionsResult.add_member(:regions_description, Shapes::ShapeRef.new(shape: RegionsDescription, location_name: "RegionsDescription"))
634
+ DescribeRegionsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
635
+ DescribeRegionsResult.struct_class = Types::DescribeRegionsResult
636
+
590
637
  DescribeSharedDirectoriesRequest.add_member(:owner_directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "OwnerDirectoryId"))
591
638
  DescribeSharedDirectoriesRequest.add_member(:shared_directory_ids, Shapes::ShapeRef.new(shape: DirectoryIds, location_name: "SharedDirectoryIds"))
592
639
  DescribeSharedDirectoriesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
@@ -617,6 +664,10 @@ module Aws::DirectoryService
617
664
  DescribeTrustsResult.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
618
665
  DescribeTrustsResult.struct_class = Types::DescribeTrustsResult
619
666
 
667
+ DirectoryAlreadyInRegionException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
668
+ DirectoryAlreadyInRegionException.add_member(:request_id, Shapes::ShapeRef.new(shape: RequestId, location_name: "RequestId"))
669
+ DirectoryAlreadyInRegionException.struct_class = Types::DirectoryAlreadyInRegionException
670
+
620
671
  DirectoryAlreadySharedException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
621
672
  DirectoryAlreadySharedException.add_member(:request_id, Shapes::ShapeRef.new(shape: RequestId, location_name: "RequestId"))
622
673
  DirectoryAlreadySharedException.struct_class = Types::DirectoryAlreadySharedException
@@ -659,6 +710,7 @@ module Aws::DirectoryService
659
710
  DirectoryDescription.add_member(:sso_enabled, Shapes::ShapeRef.new(shape: SsoEnabled, location_name: "SsoEnabled"))
660
711
  DirectoryDescription.add_member(:desired_number_of_domain_controllers, Shapes::ShapeRef.new(shape: DesiredNumberOfDomainControllers, location_name: "DesiredNumberOfDomainControllers"))
661
712
  DirectoryDescription.add_member(:owner_directory_description, Shapes::ShapeRef.new(shape: OwnerDirectoryDescription, location_name: "OwnerDirectoryDescription"))
713
+ DirectoryDescription.add_member(:regions_info, Shapes::ShapeRef.new(shape: RegionsInfo, location_name: "RegionsInfo"))
662
714
  DirectoryDescription.struct_class = Types::DirectoryDescription
663
715
 
664
716
  DirectoryDescriptions.member = Shapes::ShapeRef.new(shape: DirectoryDescription)
@@ -702,6 +754,12 @@ module Aws::DirectoryService
702
754
  DirectoryVpcSettingsDescription.add_member(:availability_zones, Shapes::ShapeRef.new(shape: AvailabilityZones, location_name: "AvailabilityZones"))
703
755
  DirectoryVpcSettingsDescription.struct_class = Types::DirectoryVpcSettingsDescription
704
756
 
757
+ DisableClientAuthenticationRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
758
+ DisableClientAuthenticationRequest.add_member(:type, Shapes::ShapeRef.new(shape: ClientAuthenticationType, required: true, location_name: "Type"))
759
+ DisableClientAuthenticationRequest.struct_class = Types::DisableClientAuthenticationRequest
760
+
761
+ DisableClientAuthenticationResult.struct_class = Types::DisableClientAuthenticationResult
762
+
705
763
  DisableLDAPSRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
706
764
  DisableLDAPSRequest.add_member(:type, Shapes::ShapeRef.new(shape: LDAPSType, required: true, location_name: "Type"))
707
765
  DisableLDAPSRequest.struct_class = Types::DisableLDAPSRequest
@@ -742,6 +800,12 @@ module Aws::DirectoryService
742
800
 
743
801
  DomainControllers.member = Shapes::ShapeRef.new(shape: DomainController)
744
802
 
803
+ EnableClientAuthenticationRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
804
+ EnableClientAuthenticationRequest.add_member(:type, Shapes::ShapeRef.new(shape: ClientAuthenticationType, required: true, location_name: "Type"))
805
+ EnableClientAuthenticationRequest.struct_class = Types::EnableClientAuthenticationRequest
806
+
807
+ EnableClientAuthenticationResult.struct_class = Types::EnableClientAuthenticationResult
808
+
745
809
  EnableLDAPSRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
746
810
  EnableLDAPSRequest.add_member(:type, Shapes::ShapeRef.new(shape: LDAPSType, required: true, location_name: "Type"))
747
811
  EnableLDAPSRequest.struct_class = Types::EnableLDAPSRequest
@@ -797,6 +861,10 @@ module Aws::DirectoryService
797
861
  InvalidCertificateException.add_member(:request_id, Shapes::ShapeRef.new(shape: RequestId, location_name: "RequestId"))
798
862
  InvalidCertificateException.struct_class = Types::InvalidCertificateException
799
863
 
864
+ InvalidClientAuthStatusException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
865
+ InvalidClientAuthStatusException.add_member(:request_id, Shapes::ShapeRef.new(shape: RequestId, location_name: "RequestId"))
866
+ InvalidClientAuthStatusException.struct_class = Types::InvalidClientAuthStatusException
867
+
800
868
  InvalidLDAPSStatusException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
801
869
  InvalidLDAPSStatusException.add_member(:request_id, Shapes::ShapeRef.new(shape: RequestId, location_name: "RequestId"))
802
870
  InvalidLDAPSStatusException.struct_class = Types::InvalidLDAPSStatusException
@@ -924,8 +992,31 @@ module Aws::DirectoryService
924
992
  RadiusSettings.add_member(:use_same_username, Shapes::ShapeRef.new(shape: UseSameUsername, location_name: "UseSameUsername"))
925
993
  RadiusSettings.struct_class = Types::RadiusSettings
926
994
 
995
+ RegionDescription.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, location_name: "DirectoryId"))
996
+ RegionDescription.add_member(:region_name, Shapes::ShapeRef.new(shape: RegionName, location_name: "RegionName"))
997
+ RegionDescription.add_member(:region_type, Shapes::ShapeRef.new(shape: RegionType, location_name: "RegionType"))
998
+ RegionDescription.add_member(:status, Shapes::ShapeRef.new(shape: DirectoryStage, location_name: "Status"))
999
+ RegionDescription.add_member(:vpc_settings, Shapes::ShapeRef.new(shape: DirectoryVpcSettings, location_name: "VpcSettings"))
1000
+ RegionDescription.add_member(:desired_number_of_domain_controllers, Shapes::ShapeRef.new(shape: DesiredNumberOfDomainControllers, location_name: "DesiredNumberOfDomainControllers"))
1001
+ RegionDescription.add_member(:launch_time, Shapes::ShapeRef.new(shape: LaunchTime, location_name: "LaunchTime"))
1002
+ RegionDescription.add_member(:status_last_updated_date_time, Shapes::ShapeRef.new(shape: StateLastUpdatedDateTime, location_name: "StatusLastUpdatedDateTime"))
1003
+ RegionDescription.add_member(:last_updated_date_time, Shapes::ShapeRef.new(shape: LastUpdatedDateTime, location_name: "LastUpdatedDateTime"))
1004
+ RegionDescription.struct_class = Types::RegionDescription
1005
+
1006
+ RegionLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "Message"))
1007
+ RegionLimitExceededException.add_member(:request_id, Shapes::ShapeRef.new(shape: RequestId, location_name: "RequestId"))
1008
+ RegionLimitExceededException.struct_class = Types::RegionLimitExceededException
1009
+
1010
+ RegionsDescription.member = Shapes::ShapeRef.new(shape: RegionDescription)
1011
+
1012
+ RegionsInfo.add_member(:primary_region, Shapes::ShapeRef.new(shape: RegionName, location_name: "PrimaryRegion"))
1013
+ RegionsInfo.add_member(:additional_regions, Shapes::ShapeRef.new(shape: AdditionalRegions, location_name: "AdditionalRegions"))
1014
+ RegionsInfo.struct_class = Types::RegionsInfo
1015
+
927
1016
  RegisterCertificateRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
928
1017
  RegisterCertificateRequest.add_member(:certificate_data, Shapes::ShapeRef.new(shape: CertificateData, required: true, location_name: "CertificateData"))
1018
+ RegisterCertificateRequest.add_member(:type, Shapes::ShapeRef.new(shape: CertificateType, location_name: "Type"))
1019
+ RegisterCertificateRequest.add_member(:client_cert_auth_settings, Shapes::ShapeRef.new(shape: ClientCertAuthSettings, location_name: "ClientCertAuthSettings"))
929
1020
  RegisterCertificateRequest.struct_class = Types::RegisterCertificateRequest
930
1021
 
931
1022
  RegisterCertificateResult.add_member(:certificate_id, Shapes::ShapeRef.new(shape: CertificateId, location_name: "CertificateId"))
@@ -951,6 +1042,11 @@ module Aws::DirectoryService
951
1042
 
952
1043
  RemoveIpRoutesResult.struct_class = Types::RemoveIpRoutesResult
953
1044
 
1045
+ RemoveRegionRequest.add_member(:directory_id, Shapes::ShapeRef.new(shape: DirectoryId, required: true, location_name: "DirectoryId"))
1046
+ RemoveRegionRequest.struct_class = Types::RemoveRegionRequest
1047
+
1048
+ RemoveRegionResult.struct_class = Types::RemoveRegionResult
1049
+
954
1050
  RemoveTagsFromResourceRequest.add_member(:resource_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "ResourceId"))
955
1051
  RemoveTagsFromResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeys, required: true, location_name: "TagKeys"))
956
1052
  RemoveTagsFromResourceRequest.struct_class = Types::RemoveTagsFromResourceRequest
@@ -1178,6 +1274,24 @@ module Aws::DirectoryService
1178
1274
  o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1179
1275
  end)
1180
1276
 
1277
+ api.add_operation(:add_region, Seahorse::Model::Operation.new.tap do |o|
1278
+ o.name = "AddRegion"
1279
+ o.http_method = "POST"
1280
+ o.http_request_uri = "/"
1281
+ o.input = Shapes::ShapeRef.new(shape: AddRegionRequest)
1282
+ o.output = Shapes::ShapeRef.new(shape: AddRegionResult)
1283
+ o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
1284
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1285
+ o.errors << Shapes::ShapeRef.new(shape: EntityDoesNotExistException)
1286
+ o.errors << Shapes::ShapeRef.new(shape: DirectoryAlreadyInRegionException)
1287
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1288
+ o.errors << Shapes::ShapeRef.new(shape: DirectoryDoesNotExistException)
1289
+ o.errors << Shapes::ShapeRef.new(shape: RegionLimitExceededException)
1290
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1291
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
1292
+ o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1293
+ end)
1294
+
1181
1295
  api.add_operation(:add_tags_to_resource, Seahorse::Model::Operation.new.tap do |o|
1182
1296
  o.name = "AddTagsToResource"
1183
1297
  o.http_method = "POST"
@@ -1501,6 +1615,21 @@ module Aws::DirectoryService
1501
1615
  o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1502
1616
  end)
1503
1617
 
1618
+ api.add_operation(:describe_regions, Seahorse::Model::Operation.new.tap do |o|
1619
+ o.name = "DescribeRegions"
1620
+ o.http_method = "POST"
1621
+ o.http_request_uri = "/"
1622
+ o.input = Shapes::ShapeRef.new(shape: DescribeRegionsRequest)
1623
+ o.output = Shapes::ShapeRef.new(shape: DescribeRegionsResult)
1624
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1625
+ o.errors << Shapes::ShapeRef.new(shape: DirectoryDoesNotExistException)
1626
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1627
+ o.errors << Shapes::ShapeRef.new(shape: InvalidNextTokenException)
1628
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1629
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
1630
+ o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1631
+ end)
1632
+
1504
1633
  api.add_operation(:describe_shared_directories, Seahorse::Model::Operation.new.tap do |o|
1505
1634
  o.name = "DescribeSharedDirectories"
1506
1635
  o.http_method = "POST"
@@ -1542,6 +1671,20 @@ module Aws::DirectoryService
1542
1671
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1543
1672
  end)
1544
1673
 
1674
+ api.add_operation(:disable_client_authentication, Seahorse::Model::Operation.new.tap do |o|
1675
+ o.name = "DisableClientAuthentication"
1676
+ o.http_method = "POST"
1677
+ o.http_request_uri = "/"
1678
+ o.input = Shapes::ShapeRef.new(shape: DisableClientAuthenticationRequest)
1679
+ o.output = Shapes::ShapeRef.new(shape: DisableClientAuthenticationResult)
1680
+ o.errors << Shapes::ShapeRef.new(shape: DirectoryDoesNotExistException)
1681
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1682
+ o.errors << Shapes::ShapeRef.new(shape: InvalidClientAuthStatusException)
1683
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1684
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
1685
+ o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1686
+ end)
1687
+
1545
1688
  api.add_operation(:disable_ldaps, Seahorse::Model::Operation.new.tap do |o|
1546
1689
  o.name = "DisableLDAPS"
1547
1690
  o.http_method = "POST"
@@ -1581,6 +1724,21 @@ module Aws::DirectoryService
1581
1724
  o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1582
1725
  end)
1583
1726
 
1727
+ api.add_operation(:enable_client_authentication, Seahorse::Model::Operation.new.tap do |o|
1728
+ o.name = "EnableClientAuthentication"
1729
+ o.http_method = "POST"
1730
+ o.http_request_uri = "/"
1731
+ o.input = Shapes::ShapeRef.new(shape: EnableClientAuthenticationRequest)
1732
+ o.output = Shapes::ShapeRef.new(shape: EnableClientAuthenticationResult)
1733
+ o.errors << Shapes::ShapeRef.new(shape: DirectoryDoesNotExistException)
1734
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1735
+ o.errors << Shapes::ShapeRef.new(shape: InvalidClientAuthStatusException)
1736
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1737
+ o.errors << Shapes::ShapeRef.new(shape: NoAvailableCertificateException)
1738
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
1739
+ o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1740
+ end)
1741
+
1584
1742
  api.add_operation(:enable_ldaps, Seahorse::Model::Operation.new.tap do |o|
1585
1743
  o.name = "EnableLDAPS"
1586
1744
  o.http_method = "POST"
@@ -1764,6 +1922,20 @@ module Aws::DirectoryService
1764
1922
  o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1765
1923
  end)
1766
1924
 
1925
+ api.add_operation(:remove_region, Seahorse::Model::Operation.new.tap do |o|
1926
+ o.name = "RemoveRegion"
1927
+ o.http_method = "POST"
1928
+ o.http_request_uri = "/"
1929
+ o.input = Shapes::ShapeRef.new(shape: RemoveRegionRequest)
1930
+ o.output = Shapes::ShapeRef.new(shape: RemoveRegionResult)
1931
+ o.errors << Shapes::ShapeRef.new(shape: DirectoryUnavailableException)
1932
+ o.errors << Shapes::ShapeRef.new(shape: DirectoryDoesNotExistException)
1933
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedOperationException)
1934
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
1935
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
1936
+ o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1937
+ end)
1938
+
1767
1939
  api.add_operation(:remove_tags_from_resource, Seahorse::Model::Operation.new.tap do |o|
1768
1940
  o.name = "RemoveTagsFromResource"
1769
1941
  o.http_method = "POST"