aws-sdk-iot 1.135.0 → 1.136.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: dc43ddae282b70b48f11ecaafd869fd40005d734003721985e4e3c1d822e95b2
4
+ data.tar.gz: 2fb2eedfe4517cd4c1c7142afec6987a6faa8199680bbf5ceb78aa2e8264b1c9
5
5
  SHA512:
6
- metadata.gz: dc3be3c0b1a7022573597abac2026347171ad204a2d83cd9884adb49281acbd67913e397ec1228b2050741d86c2914fb3caa4b01475082d23386d7cd8ebd7abf
7
- data.tar.gz: 1f5cf25bc98df8f9bdaa221049f38e62fa91e945cf9307aa5d5e1dd64d46d929f940feb7d4d09ca6a1cd50a09b09d8fd768e4e9750252ae75972251a10475bcf
6
+ metadata.gz: 1281b9ec53beaef7fb4f2fe2b39192abdd5a78531f61c61d524bdb6a520a7f94c43c7ede57ad6b91705b984fb63c12df7ad308cce8bf5884e5a85c9a872fc3ee
7
+ data.tar.gz: c46c132c7c0e930e652dde6dcf7db00d6a046938833251a8828dabf1560b0409695c2543e6f898851adfc2c043f06125cbca2d6d1696a2171c1c4f4b08e60189
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.136.0 (2024-10-03)
5
+ ------------------
6
+
7
+ * 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.
8
+
4
9
  1.135.0 (2024-09-24)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.135.0
1
+ 1.136.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.136.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"))
@@ -496,8 +496,8 @@ module Aws::IoT
496
496
  # @return [String]
497
497
  #
498
498
  # @!attribute [rw] sbom
499
- # The Amazon S3 location for the software bill of materials associated
500
- # with a software package version.
499
+ # A specific software bill of matrerials associated with a software
500
+ # package version.
501
501
  # @return [Types::Sbom]
502
502
  #
503
503
  # @!attribute [rw] client_token
@@ -527,14 +527,14 @@ module Aws::IoT
527
527
  # @return [String]
528
528
  #
529
529
  # @!attribute [rw] sbom
530
- # The Amazon S3 location for the software bill of materials associated
531
- # with a software package version.
530
+ # A specific software bill of matrerials associated with a software
531
+ # package version.
532
532
  # @return [Types::Sbom]
533
533
  #
534
534
  # @!attribute [rw] sbom_validation_status
535
- # The status of the initial validation for the SBOM against the
536
- # Software Package Data Exchange (SPDX) and CycloneDX industry
537
- # standard format.
535
+ # The status of the initial validation for the software bill of
536
+ # materials against the Software Package Data Exchange (SPDX) and
537
+ # CycloneDX industry standard formats.
538
538
  # @return [String]
539
539
  #
540
540
  class AssociateSbomWithPackageVersionResponse < Struct.new(
@@ -2025,6 +2025,20 @@ module Aws::IoT
2025
2025
 
2026
2026
  class ClearDefaultAuthorizerResponse < Aws::EmptyStructure; end
2027
2027
 
2028
+ # An object that specifies the client certificate configuration for a
2029
+ # domain.
2030
+ #
2031
+ # @!attribute [rw] client_certificate_callback_arn
2032
+ # The ARN of the Lambda function that IoT invokes after mutual TLS
2033
+ # authentication during the connection.
2034
+ # @return [String]
2035
+ #
2036
+ class ClientCertificateConfig < Struct.new(
2037
+ :client_certificate_callback_arn)
2038
+ SENSITIVE = []
2039
+ include Aws::Structure
2040
+ end
2041
+
2028
2042
  # Describes an action that updates a CloudWatch alarm.
2029
2043
  #
2030
2044
  # @!attribute [rw] role_arn
@@ -2667,6 +2681,83 @@ module Aws::IoT
2667
2681
  # The server certificate configuration.
2668
2682
  # @return [Types::ServerCertificateConfig]
2669
2683
  #
2684
+ # @!attribute [rw] authentication_type
2685
+ # An enumerated string that specifies the authentication type.
2686
+ #
2687
+ # * `CUSTOM_AUTH_X509` - Use custom authentication and authorization
2688
+ # with additional details from the X.509 client certificate.
2689
+ #
2690
+ # ^
2691
+ # ^
2692
+ #
2693
+ # * `CUSTOM_AUTH` - Use custom authentication and authorization. For
2694
+ # more information, see [Custom authentication and
2695
+ # authorization][1].
2696
+ #
2697
+ # ^
2698
+ # ^
2699
+ #
2700
+ # * `AWS_X509` - Use X.509 client certificates without custom
2701
+ # authentication and authorization. For more information, see [X.509
2702
+ # client certificates][2].
2703
+ #
2704
+ # ^
2705
+ # ^
2706
+ #
2707
+ # * `AWS_SIGV4` - Use Amazon Web Services Signature Version 4. For
2708
+ # more information, see [IAM users, groups, and roles][1].
2709
+ #
2710
+ # ^
2711
+ # ^
2712
+ #
2713
+ # * `DEFAULT` - Use a combination of port and Application Layer
2714
+ # Protocol Negotiation (ALPN) to specify authentication type. For
2715
+ # more information, see [Device communication protocols][3].
2716
+ #
2717
+ # ^
2718
+ #
2719
+ #
2720
+ #
2721
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html
2722
+ # [2]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html
2723
+ # [3]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
2724
+ # @return [String]
2725
+ #
2726
+ # @!attribute [rw] application_protocol
2727
+ # An enumerated string that specifies the application-layer protocol.
2728
+ #
2729
+ # * `SECURE_MQTT` - MQTT over TLS.
2730
+ #
2731
+ # ^
2732
+ # ^
2733
+ #
2734
+ # * `MQTT_WSS` - MQTT over WebSocket.
2735
+ #
2736
+ # ^
2737
+ # ^
2738
+ #
2739
+ # * `HTTPS` - HTTP over TLS.
2740
+ #
2741
+ # ^
2742
+ # ^
2743
+ #
2744
+ # * `DEFAULT` - Use a combination of port and Application Layer
2745
+ # Protocol Negotiation (ALPN) to specify application\_layer
2746
+ # protocol. For more information, see [Device communication
2747
+ # protocols][1].
2748
+ #
2749
+ # ^
2750
+ #
2751
+ #
2752
+ #
2753
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
2754
+ # @return [String]
2755
+ #
2756
+ # @!attribute [rw] client_certificate_config
2757
+ # An object that specifies the client certificate configuration for a
2758
+ # domain.
2759
+ # @return [Types::ClientCertificateConfig]
2760
+ #
2670
2761
  class CreateDomainConfigurationRequest < Struct.new(
2671
2762
  :domain_configuration_name,
2672
2763
  :domain_name,
@@ -2676,7 +2767,10 @@ module Aws::IoT
2676
2767
  :service_type,
2677
2768
  :tags,
2678
2769
  :tls_config,
2679
- :server_certificate_config)
2770
+ :server_certificate_config,
2771
+ :authentication_type,
2772
+ :application_protocol,
2773
+ :client_certificate_config)
2680
2774
  SENSITIVE = []
2681
2775
  include Aws::Structure
2682
2776
  end
@@ -3433,7 +3527,7 @@ module Aws::IoT
3433
3527
  #
3434
3528
  # @!attribute [rw] recipe
3435
3529
  # The inline job document associated with a software package version
3436
- # used for a quick job deployment via IoT Jobs.
3530
+ # used for a quick job deployment.
3437
3531
  # @return [String]
3438
3532
  #
3439
3533
  # @!attribute [rw] tags
@@ -5509,6 +5603,83 @@ module Aws::IoT
5509
5603
  # The server certificate configuration.
5510
5604
  # @return [Types::ServerCertificateConfig]
5511
5605
  #
5606
+ # @!attribute [rw] authentication_type
5607
+ # An enumerated string that specifies the authentication type.
5608
+ #
5609
+ # * `CUSTOM_AUTH_X509` - Use custom authentication and authorization
5610
+ # with additional details from the X.509 client certificate.
5611
+ #
5612
+ # ^
5613
+ # ^
5614
+ #
5615
+ # * `CUSTOM_AUTH` - Use custom authentication and authorization. For
5616
+ # more information, see [Custom authentication and
5617
+ # authorization][1].
5618
+ #
5619
+ # ^
5620
+ # ^
5621
+ #
5622
+ # * `AWS_X509` - Use X.509 client certificates without custom
5623
+ # authentication and authorization. For more information, see [X.509
5624
+ # client certificates][2].
5625
+ #
5626
+ # ^
5627
+ # ^
5628
+ #
5629
+ # * `AWS_SIGV4` - Use Amazon Web Services Signature Version 4. For
5630
+ # more information, see [IAM users, groups, and roles][1].
5631
+ #
5632
+ # ^
5633
+ # ^
5634
+ #
5635
+ # * `DEFAULT` - Use a combination of port and Application Layer
5636
+ # Protocol Negotiation (ALPN) to specify authentication type. For
5637
+ # more information, see [Device communication protocols][3].
5638
+ #
5639
+ # ^
5640
+ #
5641
+ #
5642
+ #
5643
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html
5644
+ # [2]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html
5645
+ # [3]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
5646
+ # @return [String]
5647
+ #
5648
+ # @!attribute [rw] application_protocol
5649
+ # An enumerated string that specifies the application-layer protocol.
5650
+ #
5651
+ # * `SECURE_MQTT` - MQTT over TLS.
5652
+ #
5653
+ # ^
5654
+ # ^
5655
+ #
5656
+ # * `MQTT_WSS` - MQTT over WebSocket.
5657
+ #
5658
+ # ^
5659
+ # ^
5660
+ #
5661
+ # * `HTTPS` - HTTP over TLS.
5662
+ #
5663
+ # ^
5664
+ # ^
5665
+ #
5666
+ # * `DEFAULT` - Use a combination of port and Application Layer
5667
+ # Protocol Negotiation (ALPN) to specify application\_layer
5668
+ # protocol. For more information, see [Device communication
5669
+ # protocols][1].
5670
+ #
5671
+ # ^
5672
+ #
5673
+ #
5674
+ #
5675
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
5676
+ # @return [String]
5677
+ #
5678
+ # @!attribute [rw] client_certificate_config
5679
+ # An object that specifies the client certificate configuration for a
5680
+ # domain.
5681
+ # @return [Types::ClientCertificateConfig]
5682
+ #
5512
5683
  class DescribeDomainConfigurationResponse < Struct.new(
5513
5684
  :domain_configuration_name,
5514
5685
  :domain_configuration_arn,
@@ -5520,7 +5691,10 @@ module Aws::IoT
5520
5691
  :domain_type,
5521
5692
  :last_status_change_date,
5522
5693
  :tls_config,
5523
- :server_certificate_config)
5694
+ :server_certificate_config,
5695
+ :authentication_type,
5696
+ :application_protocol,
5697
+ :client_certificate_config)
5524
5698
  SENSITIVE = []
5525
5699
  include Aws::Structure
5526
5700
  end
@@ -7688,7 +7862,7 @@ module Aws::IoT
7688
7862
  #
7689
7863
  # @!attribute [rw] recipe
7690
7864
  # The inline job document associated with a software package version
7691
- # used for a quick job deployment via IoT Jobs.
7865
+ # used for a quick job deployment.
7692
7866
  # @return [String]
7693
7867
  #
7694
7868
  class GetPackageVersionResponse < Struct.new(
@@ -12623,8 +12797,8 @@ module Aws::IoT
12623
12797
  include Aws::Structure
12624
12798
  end
12625
12799
 
12626
- # The Amazon S3 location for the artifacts associated with a software
12627
- # package version.
12800
+ # A specific package version artifact associated with a software package
12801
+ # version.
12628
12802
  #
12629
12803
  # @!attribute [rw] s3_location
12630
12804
  # The S3 location.
@@ -13643,8 +13817,8 @@ module Aws::IoT
13643
13817
  include Aws::Structure
13644
13818
  end
13645
13819
 
13646
- # The Amazon S3 location for the software bill of materials associated
13647
- # with a software package version.
13820
+ # A specific software bill of matrerials associated with a software
13821
+ # package version.
13648
13822
  #
13649
13823
  # @!attribute [rw] s3_location
13650
13824
  # The S3 location.
@@ -14928,7 +15102,7 @@ module Aws::IoT
14928
15102
  # @return [String]
14929
15103
  #
14930
15104
  # @!attribute [rw] thing_group_names
14931
- # Thing group names.
15105
+ # Thing group and billing group names.
14932
15106
  # @return [Array<String>]
14933
15107
  #
14934
15108
  # @!attribute [rw] attributes
@@ -16266,13 +16440,93 @@ module Aws::IoT
16266
16440
  # The server certificate configuration.
16267
16441
  # @return [Types::ServerCertificateConfig]
16268
16442
  #
16443
+ # @!attribute [rw] authentication_type
16444
+ # An enumerated string that specifies the authentication type.
16445
+ #
16446
+ # * `CUSTOM_AUTH_X509` - Use custom authentication and authorization
16447
+ # with additional details from the X.509 client certificate.
16448
+ #
16449
+ # ^
16450
+ # ^
16451
+ #
16452
+ # * `CUSTOM_AUTH` - Use custom authentication and authorization. For
16453
+ # more information, see [Custom authentication and
16454
+ # authorization][1].
16455
+ #
16456
+ # ^
16457
+ # ^
16458
+ #
16459
+ # * `AWS_X509` - Use X.509 client certificates without custom
16460
+ # authentication and authorization. For more information, see [X.509
16461
+ # client certificates][2].
16462
+ #
16463
+ # ^
16464
+ # ^
16465
+ #
16466
+ # * `AWS_SIGV4` - Use Amazon Web Services Signature Version 4. For
16467
+ # more information, see [IAM users, groups, and roles][1].
16468
+ #
16469
+ # ^
16470
+ # ^
16471
+ #
16472
+ # * `DEFAULT ` - Use a combination of port and Application Layer
16473
+ # Protocol Negotiation (ALPN) to specify authentication type. For
16474
+ # more information, see [Device communication protocols][3].
16475
+ #
16476
+ # ^
16477
+ #
16478
+ #
16479
+ #
16480
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/custom-authentication.html
16481
+ # [2]: https://docs.aws.amazon.com/iot/latest/developerguide/x509-client-certs.html
16482
+ # [3]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
16483
+ # @return [String]
16484
+ #
16485
+ # @!attribute [rw] application_protocol
16486
+ # An enumerated string that specifies the application-layer protocol.
16487
+ #
16488
+ # * `SECURE_MQTT` - MQTT over TLS.
16489
+ #
16490
+ # ^
16491
+ # ^
16492
+ #
16493
+ # * `MQTT_WSS` - MQTT over WebSocket.
16494
+ #
16495
+ # ^
16496
+ # ^
16497
+ #
16498
+ # * `HTTPS` - HTTP over TLS.
16499
+ #
16500
+ # ^
16501
+ # ^
16502
+ #
16503
+ # * `DEFAULT` - Use a combination of port and Application Layer
16504
+ # Protocol Negotiation (ALPN) to specify application\_layer
16505
+ # protocol. For more information, see [Device communication
16506
+ # protocols][1].
16507
+ #
16508
+ # ^
16509
+ #
16510
+ #
16511
+ #
16512
+ # [1]: https://docs.aws.amazon.com/iot/latest/developerguide/protocols.html
16513
+ # @return [String]
16514
+ #
16515
+ # @!attribute [rw] client_certificate_config
16516
+ # An object that specifies the client certificate configuration for a
16517
+ # domain.
16518
+ # @return [Types::ClientCertificateConfig]
16519
+ #
16269
16520
  class UpdateDomainConfigurationRequest < Struct.new(
16270
16521
  :domain_configuration_name,
16271
16522
  :authorizer_config,
16272
16523
  :domain_configuration_status,
16273
16524
  :remove_authorizer_config,
16274
16525
  :tls_config,
16275
- :server_certificate_config)
16526
+ :server_certificate_config,
16527
+ :authentication_type,
16528
+ :application_protocol,
16529
+ :client_certificate_config)
16276
16530
  SENSITIVE = []
16277
16531
  include Aws::Structure
16278
16532
  end
@@ -16645,7 +16899,7 @@ module Aws::IoT
16645
16899
  #
16646
16900
  # @!attribute [rw] recipe
16647
16901
  # The inline job document associated with a software package version
16648
- # used for a quick job deployment via IoT Jobs.
16902
+ # used for a quick job deployment.
16649
16903
  # @return [String]
16650
16904
  #
16651
16905
  # @!attribute [rw] client_token
data/lib/aws-sdk-iot.rb CHANGED
@@ -54,7 +54,7 @@ module Aws::IoT
54
54
  autoload :EndpointProvider, 'aws-sdk-iot/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-iot/endpoints'
56
56
 
57
- GEM_VERSION = '1.135.0'
57
+ GEM_VERSION = '1.136.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -429,6 +429,11 @@ module Aws
429
429
  },
430
430
  ?server_certificate_config: {
431
431
  enable_ocsp_check: bool?
432
+ },
433
+ ?authentication_type: ("CUSTOM_AUTH_X509" | "CUSTOM_AUTH" | "AWS_X509" | "AWS_SIGV4" | "DEFAULT"),
434
+ ?application_protocol: ("SECURE_MQTT" | "MQTT_WSS" | "HTTPS" | "DEFAULT"),
435
+ ?client_certificate_config: {
436
+ client_certificate_callback_arn: ::String?
432
437
  }
433
438
  ) -> _CreateDomainConfigurationResponseSuccess
434
439
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateDomainConfigurationResponseSuccess
@@ -2101,6 +2106,9 @@ module Aws
2101
2106
  def last_status_change_date: () -> ::Time
2102
2107
  def tls_config: () -> Types::TlsConfig
2103
2108
  def server_certificate_config: () -> Types::ServerCertificateConfig
2109
+ def authentication_type: () -> ("CUSTOM_AUTH_X509" | "CUSTOM_AUTH" | "AWS_X509" | "AWS_SIGV4" | "DEFAULT")
2110
+ def application_protocol: () -> ("SECURE_MQTT" | "MQTT_WSS" | "HTTPS" | "DEFAULT")
2111
+ def client_certificate_config: () -> Types::ClientCertificateConfig
2104
2112
  end
2105
2113
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/IoT/Client.html#describe_domain_configuration-instance_method
2106
2114
  def describe_domain_configuration: (
@@ -4495,6 +4503,11 @@ module Aws
4495
4503
  },
4496
4504
  ?server_certificate_config: {
4497
4505
  enable_ocsp_check: bool?
4506
+ },
4507
+ ?authentication_type: ("CUSTOM_AUTH_X509" | "CUSTOM_AUTH" | "AWS_X509" | "AWS_SIGV4" | "DEFAULT"),
4508
+ ?application_protocol: ("SECURE_MQTT" | "MQTT_WSS" | "HTTPS" | "DEFAULT"),
4509
+ ?client_certificate_config: {
4510
+ client_certificate_callback_arn: ::String?
4498
4511
  }
4499
4512
  ) -> _UpdateDomainConfigurationResponseSuccess
4500
4513
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateDomainConfigurationResponseSuccess
data/sig/types.rbs CHANGED
@@ -555,6 +555,11 @@ module Aws::IoT
555
555
  class ClearDefaultAuthorizerResponse < Aws::EmptyStructure
556
556
  end
557
557
 
558
+ class ClientCertificateConfig
559
+ attr_accessor client_certificate_callback_arn: ::String
560
+ SENSITIVE: []
561
+ end
562
+
558
563
  class CloudwatchAlarmAction
559
564
  attr_accessor role_arn: ::String
560
565
  attr_accessor alarm_name: ::String
@@ -735,6 +740,9 @@ module Aws::IoT
735
740
  attr_accessor tags: ::Array[Types::Tag]
736
741
  attr_accessor tls_config: Types::TlsConfig
737
742
  attr_accessor server_certificate_config: Types::ServerCertificateConfig
743
+ attr_accessor authentication_type: ("CUSTOM_AUTH_X509" | "CUSTOM_AUTH" | "AWS_X509" | "AWS_SIGV4" | "DEFAULT")
744
+ attr_accessor application_protocol: ("SECURE_MQTT" | "MQTT_WSS" | "HTTPS" | "DEFAULT")
745
+ attr_accessor client_certificate_config: Types::ClientCertificateConfig
738
746
  SENSITIVE: []
739
747
  end
740
748
 
@@ -1613,6 +1621,9 @@ module Aws::IoT
1613
1621
  attr_accessor last_status_change_date: ::Time
1614
1622
  attr_accessor tls_config: Types::TlsConfig
1615
1623
  attr_accessor server_certificate_config: Types::ServerCertificateConfig
1624
+ attr_accessor authentication_type: ("CUSTOM_AUTH_X509" | "CUSTOM_AUTH" | "AWS_X509" | "AWS_SIGV4" | "DEFAULT")
1625
+ attr_accessor application_protocol: ("SECURE_MQTT" | "MQTT_WSS" | "HTTPS" | "DEFAULT")
1626
+ attr_accessor client_certificate_config: Types::ClientCertificateConfig
1616
1627
  SENSITIVE: []
1617
1628
  end
1618
1629
 
@@ -4714,6 +4725,9 @@ module Aws::IoT
4714
4725
  attr_accessor remove_authorizer_config: bool
4715
4726
  attr_accessor tls_config: Types::TlsConfig
4716
4727
  attr_accessor server_certificate_config: Types::ServerCertificateConfig
4728
+ attr_accessor authentication_type: ("CUSTOM_AUTH_X509" | "CUSTOM_AUTH" | "AWS_X509" | "AWS_SIGV4" | "DEFAULT")
4729
+ attr_accessor application_protocol: ("SECURE_MQTT" | "MQTT_WSS" | "HTTPS" | "DEFAULT")
4730
+ attr_accessor client_certificate_config: Types::ClientCertificateConfig
4717
4731
  SENSITIVE: []
4718
4732
  end
4719
4733
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iot
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.135.0
4
+ version: 1.136.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-24 00:00:00.000000000 Z
11
+ date: 2024-10-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core