aws-sdk-iot 1.135.0 → 1.137.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 13f1e0c610346aca94631fed4b71b275c8dd49b26699dc08cedec70085ba1127
4
- data.tar.gz: eb0f525538a5cf0c71b4c0542f5ffe26f653516983fc1f185e9ac2fca6026025
3
+ metadata.gz: 5a51d136f0044d776ab3a569c7f2081ff6b70552e960907b44d18aec890bdd8f
4
+ data.tar.gz: 0f414843ab2f572753485b47e044661d4211402a6d0ecd901106c14efe106433
5
5
  SHA512:
6
- metadata.gz: dc3be3c0b1a7022573597abac2026347171ad204a2d83cd9884adb49281acbd67913e397ec1228b2050741d86c2914fb3caa4b01475082d23386d7cd8ebd7abf
7
- data.tar.gz: 1f5cf25bc98df8f9bdaa221049f38e62fa91e945cf9307aa5d5e1dd64d46d929f940feb7d4d09ca6a1cd50a09b09d8fd768e4e9750252ae75972251a10475bcf
6
+ metadata.gz: dd53f1465dfa49e61bd747d9d727edf7470fbd8cf735b09bdb4cfc55fd2494abafaa143147537d0983698c4d4a1aaf6e6b17bf64850eae9359b44d8e2c075625
7
+ data.tar.gz: f245069310058019821adaf690c61e2d6157ce633bccb0b1713e216cb718283bac61f9a5025d5159bc7e95254fb55b56fc283c91bc0dbce460a3e1b9d745c809
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.137.0 (2024-10-18)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.136.0 (2024-10-03)
10
+ ------------------
11
+
12
+ * Feature - This release adds support for Custom Authentication with X.509 Client Certificates, support for Custom Client Certificate validation, and support for selecting application protocol and authentication type without requiring TLS ALPN for customer's AWS IoT Domain Configurations.
13
+
4
14
  1.135.0 (2024-09-24)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.135.0
1
+ 1.137.0
@@ -571,8 +571,8 @@ module Aws::IoT
571
571
  req.send_request(options)
572
572
  end
573
573
 
574
- # Associates a software bill of materials (SBOM) with a specific
575
- # software package version.
574
+ # Associates the selected software bill of materials (SBOM) with a
575
+ # specific software package version.
576
576
  #
577
577
  # Requires permission to access the [AssociateSbomWithPackageVersion][1]
578
578
  # action.
@@ -588,8 +588,8 @@ module Aws::IoT
588
588
  # The name of the new package version.
589
589
  #
590
590
  # @option params [required, Types::Sbom] :sbom
591
- # The Amazon S3 location for the software bill of materials associated
592
- # with a software package version.
591
+ # A specific software bill of matrerials associated with a software
592
+ # package version.
593
593
  #
594
594
  # @option params [String] :client_token
595
595
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -1298,7 +1298,10 @@ module Aws::IoT
1298
1298
  req.send_request(options)
1299
1299
  end
1300
1300
 
1301
- # Creates a billing group.
1301
+ # Creates a billing group. If this call is made multiple times using the
1302
+ # same billing group name and configuration, the call will succeed. If
1303
+ # this call is made with the same billing group name but different
1304
+ # configuration a `ResourceAlreadyExistsException` is thrown.
1302
1305
  #
1303
1306
  # Requires permission to access the [CreateBillingGroup][1] action.
1304
1307
  #
@@ -1715,6 +1718,78 @@ module Aws::IoT
1715
1718
  # @option params [Types::ServerCertificateConfig] :server_certificate_config
1716
1719
  # The server certificate configuration.
1717
1720
  #
1721
+ # @option params [String] :authentication_type
1722
+ # An enumerated string that specifies the authentication type.
1723
+ #
1724
+ # * `CUSTOM_AUTH_X509` - Use custom authentication and authorization
1725
+ # with additional details from the X.509 client certificate.
1726
+ #
1727
+ # ^
1728
+ # ^
1729
+ #
1730
+ # * `CUSTOM_AUTH` - Use custom authentication and authorization. For
1731
+ # more information, see [Custom authentication and authorization][1].
1732
+ #
1733
+ # ^
1734
+ # ^
1735
+ #
1736
+ # * `AWS_X509` - Use X.509 client certificates without custom
1737
+ # authentication and authorization. For more information, see [X.509
1738
+ # client certificates][2].
1739
+ #
1740
+ # ^
1741
+ # ^
1742
+ #
1743
+ # * `AWS_SIGV4` - Use Amazon Web Services Signature Version 4. For more
1744
+ # information, see [IAM users, groups, and roles][1].
1745
+ #
1746
+ # ^
1747
+ # ^
1748
+ #
1749
+ # * `DEFAULT` - Use a combination of port and Application Layer Protocol
1750
+ # Negotiation (ALPN) to specify authentication type. For more
1751
+ # information, see [Device communication protocols][3].
1752
+ #
1753
+ # ^
1754
+ #
1755
+ #
1756
+ #
1757
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html
1758
+ # [2]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html
1759
+ # [3]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
1760
+ #
1761
+ # @option params [String] :application_protocol
1762
+ # An enumerated string that specifies the application-layer protocol.
1763
+ #
1764
+ # * `SECURE_MQTT` - MQTT over TLS.
1765
+ #
1766
+ # ^
1767
+ # ^
1768
+ #
1769
+ # * `MQTT_WSS` - MQTT over WebSocket.
1770
+ #
1771
+ # ^
1772
+ # ^
1773
+ #
1774
+ # * `HTTPS` - HTTP over TLS.
1775
+ #
1776
+ # ^
1777
+ # ^
1778
+ #
1779
+ # * `DEFAULT` - Use a combination of port and Application Layer Protocol
1780
+ # Negotiation (ALPN) to specify application\_layer protocol. For more
1781
+ # information, see [Device communication protocols][1].
1782
+ #
1783
+ # ^
1784
+ #
1785
+ #
1786
+ #
1787
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
1788
+ #
1789
+ # @option params [Types::ClientCertificateConfig] :client_certificate_config
1790
+ # An object that specifies the client certificate configuration for a
1791
+ # domain.
1792
+ #
1718
1793
  # @return [Types::CreateDomainConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1719
1794
  #
1720
1795
  # * {Types::CreateDomainConfigurationResponse#domain_configuration_name #domain_configuration_name} => String
@@ -1744,6 +1819,11 @@ module Aws::IoT
1744
1819
  # server_certificate_config: {
1745
1820
  # enable_ocsp_check: false,
1746
1821
  # },
1822
+ # authentication_type: "CUSTOM_AUTH_X509", # accepts CUSTOM_AUTH_X509, CUSTOM_AUTH, AWS_X509, AWS_SIGV4, DEFAULT
1823
+ # application_protocol: "SECURE_MQTT", # accepts SECURE_MQTT, MQTT_WSS, HTTPS, DEFAULT
1824
+ # client_certificate_config: {
1825
+ # client_certificate_callback_arn: "ClientCertificateCallbackArn",
1826
+ # },
1747
1827
  # })
1748
1828
  #
1749
1829
  # @example Response structure
@@ -2693,7 +2773,7 @@ module Aws::IoT
2693
2773
  #
2694
2774
  # @option params [String] :recipe
2695
2775
  # The inline job document associated with a software package version
2696
- # used for a quick job deployment via IoT Jobs.
2776
+ # used for a quick job deployment.
2697
2777
  #
2698
2778
  # @option params [Hash<String,String>] :tags
2699
2779
  # Metadata that can be used to manage the package version.
@@ -3073,9 +3153,17 @@ module Aws::IoT
3073
3153
  #
3074
3154
  # Requires permission to access the [CreateRoleAlias][1] action.
3075
3155
  #
3156
+ # The value of [ `credentialDurationSeconds` ][2] must be less than or
3157
+ # equal to the maximum session duration of the IAM role that the role
3158
+ # alias references. For more information, see [ Modifying a role maximum
3159
+ # session duration (Amazon Web Services API)][3] from the Amazon Web
3160
+ # Services Identity and Access Management User Guide.
3161
+ #
3076
3162
  #
3077
3163
  #
3078
3164
  # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
3165
+ # [2]: https://docs.aws.amazon.com/iot/latest/apireference/API_CreateRoleAlias.html#iot-CreateRoleAlias-request-credentialDurationSeconds
3166
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-api.html#roles-modify_max-session-duration-api
3079
3167
  #
3080
3168
  # @option params [required, String] :role_alias
3081
3169
  # The role alias that points to a role ARN. This allows you to change
@@ -3543,7 +3631,10 @@ module Aws::IoT
3543
3631
  req.send_request(options)
3544
3632
  end
3545
3633
 
3546
- # Creates a new thing type.
3634
+ # Creates a new thing type. If this call is made multiple times using
3635
+ # the same thing type name and configuration, the call will succeed. If
3636
+ # this call is made with the same thing type name but different
3637
+ # configuration a `ResourceAlreadyExistsException` is thrown.
3547
3638
  #
3548
3639
  # Requires permission to access the [CreateThingType][1] action.
3549
3640
  #
@@ -6021,6 +6112,9 @@ module Aws::IoT
6021
6112
  # * {Types::DescribeDomainConfigurationResponse#last_status_change_date #last_status_change_date} => Time
6022
6113
  # * {Types::DescribeDomainConfigurationResponse#tls_config #tls_config} => Types::TlsConfig
6023
6114
  # * {Types::DescribeDomainConfigurationResponse#server_certificate_config #server_certificate_config} => Types::ServerCertificateConfig
6115
+ # * {Types::DescribeDomainConfigurationResponse#authentication_type #authentication_type} => String
6116
+ # * {Types::DescribeDomainConfigurationResponse#application_protocol #application_protocol} => String
6117
+ # * {Types::DescribeDomainConfigurationResponse#client_certificate_config #client_certificate_config} => Types::ClientCertificateConfig
6024
6118
  #
6025
6119
  # @example Request syntax with placeholder values
6026
6120
  #
@@ -6045,6 +6139,9 @@ module Aws::IoT
6045
6139
  # resp.last_status_change_date #=> Time
6046
6140
  # resp.tls_config.security_policy #=> String
6047
6141
  # resp.server_certificate_config.enable_ocsp_check #=> Boolean
6142
+ # resp.authentication_type #=> String, one of "CUSTOM_AUTH_X509", "CUSTOM_AUTH", "AWS_X509", "AWS_SIGV4", "DEFAULT"
6143
+ # resp.application_protocol #=> String, one of "SECURE_MQTT", "MQTT_WSS", "HTTPS", "DEFAULT"
6144
+ # resp.client_certificate_config.client_certificate_callback_arn #=> String
6048
6145
  #
6049
6146
  # @overload describe_domain_configuration(params = {})
6050
6147
  # @param [Hash] params ({})
@@ -7229,8 +7326,8 @@ module Aws::IoT
7229
7326
  req.send_request(options)
7230
7327
  end
7231
7328
 
7232
- # Disassociates a software bill of materials (SBOM) from a specific
7233
- # software package version.
7329
+ # Disassociates the selected software bill of materials (SBOM) from a
7330
+ # specific software package version.
7234
7331
  #
7235
7332
  # Requires permission to access the
7236
7333
  # [DisassociateSbomWithPackageVersion][1] action.
@@ -14086,6 +14183,78 @@ module Aws::IoT
14086
14183
  # @option params [Types::ServerCertificateConfig] :server_certificate_config
14087
14184
  # The server certificate configuration.
14088
14185
  #
14186
+ # @option params [String] :authentication_type
14187
+ # An enumerated string that specifies the authentication type.
14188
+ #
14189
+ # * `CUSTOM_AUTH_X509` - Use custom authentication and authorization
14190
+ # with additional details from the X.509 client certificate.
14191
+ #
14192
+ # ^
14193
+ # ^
14194
+ #
14195
+ # * `CUSTOM_AUTH` - Use custom authentication and authorization. For
14196
+ # more information, see [Custom authentication and authorization][1].
14197
+ #
14198
+ # ^
14199
+ # ^
14200
+ #
14201
+ # * `AWS_X509` - Use X.509 client certificates without custom
14202
+ # authentication and authorization. For more information, see [X.509
14203
+ # client certificates][2].
14204
+ #
14205
+ # ^
14206
+ # ^
14207
+ #
14208
+ # * `AWS_SIGV4` - Use Amazon Web Services Signature Version 4. For more
14209
+ # information, see [IAM users, groups, and roles][1].
14210
+ #
14211
+ # ^
14212
+ # ^
14213
+ #
14214
+ # * `DEFAULT ` - Use a combination of port and Application Layer
14215
+ # Protocol Negotiation (ALPN) to specify authentication type. For more
14216
+ # information, see [Device communication protocols][3].
14217
+ #
14218
+ # ^
14219
+ #
14220
+ #
14221
+ #
14222
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html
14223
+ # [2]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html
14224
+ # [3]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
14225
+ #
14226
+ # @option params [String] :application_protocol
14227
+ # An enumerated string that specifies the application-layer protocol.
14228
+ #
14229
+ # * `SECURE_MQTT` - MQTT over TLS.
14230
+ #
14231
+ # ^
14232
+ # ^
14233
+ #
14234
+ # * `MQTT_WSS` - MQTT over WebSocket.
14235
+ #
14236
+ # ^
14237
+ # ^
14238
+ #
14239
+ # * `HTTPS` - HTTP over TLS.
14240
+ #
14241
+ # ^
14242
+ # ^
14243
+ #
14244
+ # * `DEFAULT` - Use a combination of port and Application Layer Protocol
14245
+ # Negotiation (ALPN) to specify application\_layer protocol. For more
14246
+ # information, see [Device communication protocols][1].
14247
+ #
14248
+ # ^
14249
+ #
14250
+ #
14251
+ #
14252
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
14253
+ #
14254
+ # @option params [Types::ClientCertificateConfig] :client_certificate_config
14255
+ # An object that specifies the client certificate configuration for a
14256
+ # domain.
14257
+ #
14089
14258
  # @return [Types::UpdateDomainConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
14090
14259
  #
14091
14260
  # * {Types::UpdateDomainConfigurationResponse#domain_configuration_name #domain_configuration_name} => String
@@ -14107,6 +14276,11 @@ module Aws::IoT
14107
14276
  # server_certificate_config: {
14108
14277
  # enable_ocsp_check: false,
14109
14278
  # },
14279
+ # authentication_type: "CUSTOM_AUTH_X509", # accepts CUSTOM_AUTH_X509, CUSTOM_AUTH, AWS_X509, AWS_SIGV4, DEFAULT
14280
+ # application_protocol: "SECURE_MQTT", # accepts SECURE_MQTT, MQTT_WSS, HTTPS, DEFAULT
14281
+ # client_certificate_config: {
14282
+ # client_certificate_callback_arn: "ClientCertificateCallbackArn",
14283
+ # },
14110
14284
  # })
14111
14285
  #
14112
14286
  # @example Response structure
@@ -14672,7 +14846,7 @@ module Aws::IoT
14672
14846
  #
14673
14847
  # @option params [String] :recipe
14674
14848
  # The inline job document associated with a software package version
14675
- # used for a quick job deployment via IoT Jobs.
14849
+ # used for a quick job deployment.
14676
14850
  #
14677
14851
  # @option params [String] :client_token
14678
14852
  # A unique case-sensitive identifier that you can provide to ensure the
@@ -14777,9 +14951,17 @@ module Aws::IoT
14777
14951
  #
14778
14952
  # Requires permission to access the [UpdateRoleAlias][1] action.
14779
14953
  #
14954
+ # The value of [ `credentialDurationSeconds` ][2] must be less than or
14955
+ # equal to the maximum session duration of the IAM role that the role
14956
+ # alias references. For more information, see [ Modifying a role maximum
14957
+ # session duration (Amazon Web Services API)][3] from the Amazon Web
14958
+ # Services Identity and Access Management User Guide.
14959
+ #
14780
14960
  #
14781
14961
  #
14782
14962
  # [1]: https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiot.html#awsiot-actions-as-permissions
14963
+ # [2]: https://docs.aws.amazon.com/iot/latest/apireference/API_UpdateRoleAlias.html#iot-UpdateRoleAlias-request-credentialDurationSeconds
14964
+ # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-api.html#roles-modify_max-session-duration-api
14783
14965
  #
14784
14966
  # @option params [required, String] :role_alias
14785
14967
  # The role alias to update.
@@ -15431,7 +15613,7 @@ module Aws::IoT
15431
15613
  tracer: tracer
15432
15614
  )
15433
15615
  context[:gem_name] = 'aws-sdk-iot'
15434
- context[:gem_version] = '1.135.0'
15616
+ context[:gem_version] = '1.137.0'
15435
15617
  Seahorse::Client::Request.new(handlers, context)
15436
15618
  end
15437
15619
 
@@ -47,6 +47,7 @@ module Aws::IoT
47
47
  AllowAuthorizerOverride = Shapes::BooleanShape.new(name: 'AllowAuthorizerOverride')
48
48
  AllowAutoRegistration = Shapes::BooleanShape.new(name: 'AllowAutoRegistration')
49
49
  Allowed = Shapes::StructureShape.new(name: 'Allowed')
50
+ ApplicationProtocol = Shapes::StringShape.new(name: 'ApplicationProtocol')
50
51
  ApproximateSecondsBeforeTimedOut = Shapes::IntegerShape.new(name: 'ApproximateSecondsBeforeTimedOut')
51
52
  AscendingOrder = Shapes::BooleanShape.new(name: 'AscendingOrder')
52
53
  AssetId = Shapes::StringShape.new(name: 'AssetId')
@@ -116,6 +117,7 @@ module Aws::IoT
116
117
  AuthInfos = Shapes::ListShape.new(name: 'AuthInfos')
117
118
  AuthResult = Shapes::StructureShape.new(name: 'AuthResult')
118
119
  AuthResults = Shapes::ListShape.new(name: 'AuthResults')
120
+ AuthenticationType = Shapes::StringShape.new(name: 'AuthenticationType')
119
121
  AuthorizerArn = Shapes::StringShape.new(name: 'AuthorizerArn')
120
122
  AuthorizerConfig = Shapes::StructureShape.new(name: 'AuthorizerConfig')
121
123
  AuthorizerDescription = Shapes::StructureShape.new(name: 'AuthorizerDescription')
@@ -219,6 +221,8 @@ module Aws::IoT
219
221
  Cidrs = Shapes::ListShape.new(name: 'Cidrs')
220
222
  ClearDefaultAuthorizerRequest = Shapes::StructureShape.new(name: 'ClearDefaultAuthorizerRequest')
221
223
  ClearDefaultAuthorizerResponse = Shapes::StructureShape.new(name: 'ClearDefaultAuthorizerResponse')
224
+ ClientCertificateCallbackArn = Shapes::StringShape.new(name: 'ClientCertificateCallbackArn')
225
+ ClientCertificateConfig = Shapes::StructureShape.new(name: 'ClientCertificateConfig')
222
226
  ClientId = Shapes::StringShape.new(name: 'ClientId')
223
227
  ClientProperties = Shapes::MapShape.new(name: 'ClientProperties')
224
228
  ClientRequestToken = Shapes::StringShape.new(name: 'ClientRequestToken')
@@ -1878,6 +1882,9 @@ module Aws::IoT
1878
1882
 
1879
1883
  ClearDefaultAuthorizerResponse.struct_class = Types::ClearDefaultAuthorizerResponse
1880
1884
 
1885
+ ClientCertificateConfig.add_member(:client_certificate_callback_arn, Shapes::ShapeRef.new(shape: ClientCertificateCallbackArn, location_name: "clientCertificateCallbackArn"))
1886
+ ClientCertificateConfig.struct_class = Types::ClientCertificateConfig
1887
+
1881
1888
  ClientProperties.key = Shapes::ShapeRef.new(shape: String)
1882
1889
  ClientProperties.value = Shapes::ShapeRef.new(shape: String)
1883
1890
 
@@ -2012,6 +2019,9 @@ module Aws::IoT
2012
2019
  CreateDomainConfigurationRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
2013
2020
  CreateDomainConfigurationRequest.add_member(:tls_config, Shapes::ShapeRef.new(shape: TlsConfig, location_name: "tlsConfig"))
2014
2021
  CreateDomainConfigurationRequest.add_member(:server_certificate_config, Shapes::ShapeRef.new(shape: ServerCertificateConfig, location_name: "serverCertificateConfig"))
2022
+ CreateDomainConfigurationRequest.add_member(:authentication_type, Shapes::ShapeRef.new(shape: AuthenticationType, location_name: "authenticationType"))
2023
+ CreateDomainConfigurationRequest.add_member(:application_protocol, Shapes::ShapeRef.new(shape: ApplicationProtocol, location_name: "applicationProtocol"))
2024
+ CreateDomainConfigurationRequest.add_member(:client_certificate_config, Shapes::ShapeRef.new(shape: ClientCertificateConfig, location_name: "clientCertificateConfig"))
2015
2025
  CreateDomainConfigurationRequest.struct_class = Types::CreateDomainConfigurationRequest
2016
2026
 
2017
2027
  CreateDomainConfigurationResponse.add_member(:domain_configuration_name, Shapes::ShapeRef.new(shape: DomainConfigurationName, location_name: "domainConfigurationName"))
@@ -2641,6 +2651,9 @@ module Aws::IoT
2641
2651
  DescribeDomainConfigurationResponse.add_member(:last_status_change_date, Shapes::ShapeRef.new(shape: DateType, location_name: "lastStatusChangeDate"))
2642
2652
  DescribeDomainConfigurationResponse.add_member(:tls_config, Shapes::ShapeRef.new(shape: TlsConfig, location_name: "tlsConfig"))
2643
2653
  DescribeDomainConfigurationResponse.add_member(:server_certificate_config, Shapes::ShapeRef.new(shape: ServerCertificateConfig, location_name: "serverCertificateConfig"))
2654
+ DescribeDomainConfigurationResponse.add_member(:authentication_type, Shapes::ShapeRef.new(shape: AuthenticationType, location_name: "authenticationType"))
2655
+ DescribeDomainConfigurationResponse.add_member(:application_protocol, Shapes::ShapeRef.new(shape: ApplicationProtocol, location_name: "applicationProtocol"))
2656
+ DescribeDomainConfigurationResponse.add_member(:client_certificate_config, Shapes::ShapeRef.new(shape: ClientCertificateConfig, location_name: "clientCertificateConfig"))
2644
2657
  DescribeDomainConfigurationResponse.struct_class = Types::DescribeDomainConfigurationResponse
2645
2658
 
2646
2659
  DescribeEndpointRequest.add_member(:endpoint_type, Shapes::ShapeRef.new(shape: EndpointType, location: "querystring", location_name: "endpointType"))
@@ -5083,6 +5096,9 @@ module Aws::IoT
5083
5096
  UpdateDomainConfigurationRequest.add_member(:remove_authorizer_config, Shapes::ShapeRef.new(shape: RemoveAuthorizerConfig, location_name: "removeAuthorizerConfig"))
5084
5097
  UpdateDomainConfigurationRequest.add_member(:tls_config, Shapes::ShapeRef.new(shape: TlsConfig, location_name: "tlsConfig"))
5085
5098
  UpdateDomainConfigurationRequest.add_member(:server_certificate_config, Shapes::ShapeRef.new(shape: ServerCertificateConfig, location_name: "serverCertificateConfig"))
5099
+ UpdateDomainConfigurationRequest.add_member(:authentication_type, Shapes::ShapeRef.new(shape: AuthenticationType, location_name: "authenticationType"))
5100
+ UpdateDomainConfigurationRequest.add_member(:application_protocol, Shapes::ShapeRef.new(shape: ApplicationProtocol, location_name: "applicationProtocol"))
5101
+ UpdateDomainConfigurationRequest.add_member(:client_certificate_config, Shapes::ShapeRef.new(shape: ClientCertificateConfig, location_name: "clientCertificateConfig"))
5086
5102
  UpdateDomainConfigurationRequest.struct_class = Types::UpdateDomainConfigurationRequest
5087
5103
 
5088
5104
  UpdateDomainConfigurationResponse.add_member(:domain_configuration_name, Shapes::ShapeRef.new(shape: ReservedDomainConfigurationName, location_name: "domainConfigurationName"))
@@ -52,15 +52,18 @@ module Aws::IoT
52
52
  self[:region] = options[:region]
53
53
  self[:use_dual_stack] = options[:use_dual_stack]
54
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
55
- if self[:use_dual_stack].nil?
56
- raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
57
- end
58
55
  self[:use_fips] = options[:use_fips]
59
56
  self[:use_fips] = false if self[:use_fips].nil?
60
- if self[:use_fips].nil?
61
- raise ArgumentError, "Missing required EndpointParameter: :use_fips"
62
- end
63
57
  self[:endpoint] = options[:endpoint]
64
58
  end
59
+
60
+ def self.create(config, options={})
61
+ new({
62
+ region: config.region,
63
+ use_dual_stack: config.use_dualstack_endpoint,
64
+ use_fips: config.use_fips_endpoint,
65
+ endpoint: (config.endpoint.to_s unless config.regional_endpoint),
66
+ }.merge(options))
67
+ end
65
68
  end
66
69
  end