aws-cdk-lib 2.215.0__py3-none-any.whl → 2.217.0__py3-none-any.whl

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.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (64) hide show
  1. aws_cdk/__init__.py +90 -58
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.215.0.jsii.tgz → aws-cdk-lib@2.217.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +1 -1
  5. aws_cdk/aws_amplify/__init__.py +8 -8
  6. aws_cdk/aws_apigateway/__init__.py +26 -6
  7. aws_cdk/aws_apigatewayv2/__init__.py +32 -21
  8. aws_cdk/aws_appmesh/__init__.py +12 -12
  9. aws_cdk/aws_appstream/__init__.py +14 -4
  10. aws_cdk/aws_appsync/__init__.py +3 -3
  11. aws_cdk/aws_aps/__init__.py +459 -0
  12. aws_cdk/aws_batch/__init__.py +6 -2
  13. aws_cdk/aws_bedrock/__init__.py +162 -0
  14. aws_cdk/aws_bedrockagentcore/__init__.py +3178 -0
  15. aws_cdk/aws_certificatemanager/__init__.py +9 -10
  16. aws_cdk/aws_cleanrooms/__init__.py +163 -0
  17. aws_cdk/aws_cloudformation/__init__.py +14 -14
  18. aws_cdk/aws_cloudfront/__init__.py +91 -10
  19. aws_cdk/aws_cloudfront_origins/__init__.py +422 -47
  20. aws_cdk/aws_cognito/__init__.py +2 -2
  21. aws_cdk/aws_connect/__init__.py +138 -10
  22. aws_cdk/aws_cur/__init__.py +57 -3
  23. aws_cdk/aws_datasync/__init__.py +351 -0
  24. aws_cdk/aws_datazone/__init__.py +675 -2
  25. aws_cdk/aws_dynamodb/__init__.py +123 -0
  26. aws_cdk/aws_ec2/__init__.py +55 -10
  27. aws_cdk/aws_ecr/__init__.py +4 -0
  28. aws_cdk/aws_ecs/__init__.py +55 -12
  29. aws_cdk/aws_elasticloadbalancingv2/__init__.py +275 -0
  30. aws_cdk/aws_elasticsearch/__init__.py +2 -2
  31. aws_cdk/aws_events/__init__.py +187 -0
  32. aws_cdk/aws_evs/__init__.py +58 -4
  33. aws_cdk/aws_gamelift/__init__.py +72 -56
  34. aws_cdk/aws_iam/__init__.py +1 -1
  35. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +35 -38
  36. aws_cdk/aws_iotsitewise/__init__.py +75 -111
  37. aws_cdk/aws_kinesisanalytics/__init__.py +315 -125
  38. aws_cdk/aws_kms/__init__.py +10 -2
  39. aws_cdk/aws_lambda/__init__.py +62 -8
  40. aws_cdk/aws_medialive/__init__.py +127 -0
  41. aws_cdk/aws_mediapackage/__init__.py +2 -2
  42. aws_cdk/aws_networkfirewall/__init__.py +10 -10
  43. aws_cdk/aws_networkmanager/__init__.py +63 -0
  44. aws_cdk/aws_odb/__init__.py +2082 -195
  45. aws_cdk/aws_omics/__init__.py +1414 -171
  46. aws_cdk/aws_opensearchserverless/__init__.py +164 -21
  47. aws_cdk/aws_opensearchservice/__init__.py +5 -4
  48. aws_cdk/aws_pcs/__init__.py +9 -9
  49. aws_cdk/aws_quicksight/__init__.py +295 -3
  50. aws_cdk/aws_rds/__init__.py +338 -58
  51. aws_cdk/aws_route53/__init__.py +5926 -4376
  52. aws_cdk/aws_sagemaker/__init__.py +251 -1
  53. aws_cdk/aws_servicecatalog/__init__.py +162 -154
  54. aws_cdk/aws_smsvoice/__init__.py +5218 -0
  55. aws_cdk/aws_stepfunctions_tasks/__init__.py +669 -81
  56. aws_cdk/aws_transfer/__init__.py +13 -12
  57. aws_cdk/aws_verifiedpermissions/__init__.py +1 -1
  58. aws_cdk/aws_workspacesinstances/__init__.py +641 -2
  59. {aws_cdk_lib-2.215.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/METADATA +1 -1
  60. {aws_cdk_lib-2.215.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/RECORD +64 -62
  61. {aws_cdk_lib-2.215.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/LICENSE +0 -0
  62. {aws_cdk_lib-2.215.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/NOTICE +0 -0
  63. {aws_cdk_lib-2.215.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/WHEEL +0 -0
  64. {aws_cdk_lib-2.215.0.dist-info → aws_cdk_lib-2.217.0.dist-info}/top_level.txt +0 -0
@@ -2184,6 +2184,8 @@ class CfnLocationS3Props:
2184
2184
  name_mapping={
2185
2185
  "agent_arns": "agentArns",
2186
2186
  "authentication_type": "authenticationType",
2187
+ "cmk_secret_config": "cmkSecretConfig",
2188
+ "custom_secret_config": "customSecretConfig",
2187
2189
  "dns_ip_addresses": "dnsIpAddresses",
2188
2190
  "domain": "domain",
2189
2191
  "kerberos_keytab": "kerberosKeytab",
@@ -2203,6 +2205,8 @@ class CfnLocationSMBProps:
2203
2205
  *,
2204
2206
  agent_arns: typing.Sequence[builtins.str],
2205
2207
  authentication_type: typing.Optional[builtins.str] = None,
2208
+ cmk_secret_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLocationSMB.CmkSecretConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2209
+ custom_secret_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLocationSMB.CustomSecretConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2206
2210
  dns_ip_addresses: typing.Optional[typing.Sequence[builtins.str]] = None,
2207
2211
  domain: typing.Optional[builtins.str] = None,
2208
2212
  kerberos_keytab: typing.Optional[builtins.str] = None,
@@ -2219,6 +2223,8 @@ class CfnLocationSMBProps:
2219
2223
 
2220
2224
  :param agent_arns: Specifies the DataSync agent (or agents) that can connect to your SMB file server. You specify an agent by using its Amazon Resource Name (ARN).
2221
2225
  :param authentication_type: The authentication mode used to determine identity of user.
2226
+ :param cmk_secret_config: Specifies configuration information for a DataSync-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and a customer-managed AWS KMS key.
2227
+ :param custom_secret_config: Specifies configuration information for a customer-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and an IAM role that DataSync can assume and access the customer-managed secret.
2222
2228
  :param dns_ip_addresses: Specifies the IPv4 addresses for the DNS servers that your SMB file server belongs to. This parameter applies only if AuthenticationType is set to KERBEROS. If you have multiple domains in your environment, configuring this parameter makes sure that DataSync connects to the right SMB file server.
2223
2229
  :param domain: Specifies the Windows domain name that your SMB file server belongs to. This parameter applies only if ``AuthenticationType`` is set to ``NTLM`` . If you have multiple domains in your environment, configuring this parameter makes sure that DataSync connects to the right file server.
2224
2230
  :param kerberos_keytab: The Base64 string representation of the Keytab file. Specifies your Kerberos key table (keytab) file, which includes mappings between your service principal name (SPN) and encryption keys. To avoid task execution errors, make sure that the SPN in the keytab file matches exactly what you specify for KerberosPrincipal and in your krb5.conf file.
@@ -2245,6 +2251,14 @@ class CfnLocationSMBProps:
2245
2251
 
2246
2252
  # the properties below are optional
2247
2253
  authentication_type="authenticationType",
2254
+ cmk_secret_config=datasync.CfnLocationSMB.CmkSecretConfigProperty(
2255
+ kms_key_arn="kmsKeyArn",
2256
+ secret_arn="secretArn"
2257
+ ),
2258
+ custom_secret_config=datasync.CfnLocationSMB.CustomSecretConfigProperty(
2259
+ secret_access_role_arn="secretAccessRoleArn",
2260
+ secret_arn="secretArn"
2261
+ ),
2248
2262
  dns_ip_addresses=["dnsIpAddresses"],
2249
2263
  domain="domain",
2250
2264
  kerberos_keytab="kerberosKeytab",
@@ -2267,6 +2281,8 @@ class CfnLocationSMBProps:
2267
2281
  type_hints = typing.get_type_hints(_typecheckingstub__b20670d7cb18baa1155ccc397df310282442d51b95170ab568e5c0a9cbea5bc8)
2268
2282
  check_type(argname="argument agent_arns", value=agent_arns, expected_type=type_hints["agent_arns"])
2269
2283
  check_type(argname="argument authentication_type", value=authentication_type, expected_type=type_hints["authentication_type"])
2284
+ check_type(argname="argument cmk_secret_config", value=cmk_secret_config, expected_type=type_hints["cmk_secret_config"])
2285
+ check_type(argname="argument custom_secret_config", value=custom_secret_config, expected_type=type_hints["custom_secret_config"])
2270
2286
  check_type(argname="argument dns_ip_addresses", value=dns_ip_addresses, expected_type=type_hints["dns_ip_addresses"])
2271
2287
  check_type(argname="argument domain", value=domain, expected_type=type_hints["domain"])
2272
2288
  check_type(argname="argument kerberos_keytab", value=kerberos_keytab, expected_type=type_hints["kerberos_keytab"])
@@ -2283,6 +2299,10 @@ class CfnLocationSMBProps:
2283
2299
  }
2284
2300
  if authentication_type is not None:
2285
2301
  self._values["authentication_type"] = authentication_type
2302
+ if cmk_secret_config is not None:
2303
+ self._values["cmk_secret_config"] = cmk_secret_config
2304
+ if custom_secret_config is not None:
2305
+ self._values["custom_secret_config"] = custom_secret_config
2286
2306
  if dns_ip_addresses is not None:
2287
2307
  self._values["dns_ip_addresses"] = dns_ip_addresses
2288
2308
  if domain is not None:
@@ -2327,6 +2347,28 @@ class CfnLocationSMBProps:
2327
2347
  result = self._values.get("authentication_type")
2328
2348
  return typing.cast(typing.Optional[builtins.str], result)
2329
2349
 
2350
+ @builtins.property
2351
+ def cmk_secret_config(
2352
+ self,
2353
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CmkSecretConfigProperty"]]:
2354
+ '''Specifies configuration information for a DataSync-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and a customer-managed AWS KMS key.
2355
+
2356
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-cmksecretconfig
2357
+ '''
2358
+ result = self._values.get("cmk_secret_config")
2359
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CmkSecretConfigProperty"]], result)
2360
+
2361
+ @builtins.property
2362
+ def custom_secret_config(
2363
+ self,
2364
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CustomSecretConfigProperty"]]:
2365
+ '''Specifies configuration information for a customer-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and an IAM role that DataSync can assume and access the customer-managed secret.
2366
+
2367
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-customsecretconfig
2368
+ '''
2369
+ result = self._values.get("custom_secret_config")
2370
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CustomSecretConfigProperty"]], result)
2371
+
2330
2372
  @builtins.property
2331
2373
  def dns_ip_addresses(self) -> typing.Optional[typing.List[builtins.str]]:
2332
2374
  '''Specifies the IPv4 addresses for the DNS servers that your SMB file server belongs to.
@@ -8192,6 +8234,14 @@ class CfnLocationSMB(
8192
8234
 
8193
8235
  # the properties below are optional
8194
8236
  authentication_type="authenticationType",
8237
+ cmk_secret_config=datasync.CfnLocationSMB.CmkSecretConfigProperty(
8238
+ kms_key_arn="kmsKeyArn",
8239
+ secret_arn="secretArn"
8240
+ ),
8241
+ custom_secret_config=datasync.CfnLocationSMB.CustomSecretConfigProperty(
8242
+ secret_access_role_arn="secretAccessRoleArn",
8243
+ secret_arn="secretArn"
8244
+ ),
8195
8245
  dns_ip_addresses=["dnsIpAddresses"],
8196
8246
  domain="domain",
8197
8247
  kerberos_keytab="kerberosKeytab",
@@ -8218,6 +8268,8 @@ class CfnLocationSMB(
8218
8268
  *,
8219
8269
  agent_arns: typing.Sequence[builtins.str],
8220
8270
  authentication_type: typing.Optional[builtins.str] = None,
8271
+ cmk_secret_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLocationSMB.CmkSecretConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
8272
+ custom_secret_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLocationSMB.CustomSecretConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
8221
8273
  dns_ip_addresses: typing.Optional[typing.Sequence[builtins.str]] = None,
8222
8274
  domain: typing.Optional[builtins.str] = None,
8223
8275
  kerberos_keytab: typing.Optional[builtins.str] = None,
@@ -8235,6 +8287,8 @@ class CfnLocationSMB(
8235
8287
  :param id: Construct identifier for this resource (unique in its scope).
8236
8288
  :param agent_arns: Specifies the DataSync agent (or agents) that can connect to your SMB file server. You specify an agent by using its Amazon Resource Name (ARN).
8237
8289
  :param authentication_type: The authentication mode used to determine identity of user.
8290
+ :param cmk_secret_config: Specifies configuration information for a DataSync-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and a customer-managed AWS KMS key.
8291
+ :param custom_secret_config: Specifies configuration information for a customer-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and an IAM role that DataSync can assume and access the customer-managed secret.
8238
8292
  :param dns_ip_addresses: Specifies the IPv4 addresses for the DNS servers that your SMB file server belongs to. This parameter applies only if AuthenticationType is set to KERBEROS. If you have multiple domains in your environment, configuring this parameter makes sure that DataSync connects to the right SMB file server.
8239
8293
  :param domain: Specifies the Windows domain name that your SMB file server belongs to. This parameter applies only if ``AuthenticationType`` is set to ``NTLM`` . If you have multiple domains in your environment, configuring this parameter makes sure that DataSync connects to the right file server.
8240
8294
  :param kerberos_keytab: The Base64 string representation of the Keytab file. Specifies your Kerberos key table (keytab) file, which includes mappings between your service principal name (SPN) and encryption keys. To avoid task execution errors, make sure that the SPN in the keytab file matches exactly what you specify for KerberosPrincipal and in your krb5.conf file.
@@ -8254,6 +8308,8 @@ class CfnLocationSMB(
8254
8308
  props = CfnLocationSMBProps(
8255
8309
  agent_arns=agent_arns,
8256
8310
  authentication_type=authentication_type,
8311
+ cmk_secret_config=cmk_secret_config,
8312
+ custom_secret_config=custom_secret_config,
8257
8313
  dns_ip_addresses=dns_ip_addresses,
8258
8314
  domain=domain,
8259
8315
  kerberos_keytab=kerberos_keytab,
@@ -8299,6 +8355,15 @@ class CfnLocationSMB(
8299
8355
  '''The CloudFormation resource type name for this resource class.'''
8300
8356
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
8301
8357
 
8358
+ @builtins.property
8359
+ @jsii.member(jsii_name="attrCmkSecretConfigSecretArn")
8360
+ def attr_cmk_secret_config_secret_arn(self) -> builtins.str:
8361
+ '''Specifies the ARN for an AWS Secrets Manager secret, managed by DataSync.
8362
+
8363
+ :cloudformationAttribute: CmkSecretConfig.SecretArn
8364
+ '''
8365
+ return typing.cast(builtins.str, jsii.get(self, "attrCmkSecretConfigSecretArn"))
8366
+
8302
8367
  @builtins.property
8303
8368
  @jsii.member(jsii_name="attrLocationArn")
8304
8369
  def attr_location_arn(self) -> builtins.str:
@@ -8317,6 +8382,17 @@ class CfnLocationSMB(
8317
8382
  '''
8318
8383
  return typing.cast(builtins.str, jsii.get(self, "attrLocationUri"))
8319
8384
 
8385
+ @builtins.property
8386
+ @jsii.member(jsii_name="attrManagedSecretConfig")
8387
+ def attr_managed_secret_config(self) -> _IResolvable_da3f097b:
8388
+ '''Specifies configuration information for a DataSync-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location.
8389
+
8390
+ DataSync uses the default AWS-managed KMS key to encrypt this secret in AWS Secrets Manager.
8391
+
8392
+ :cloudformationAttribute: ManagedSecretConfig
8393
+ '''
8394
+ return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrManagedSecretConfig"))
8395
+
8320
8396
  @builtins.property
8321
8397
  @jsii.member(jsii_name="cfnProperties")
8322
8398
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
@@ -8360,6 +8436,42 @@ class CfnLocationSMB(
8360
8436
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8361
8437
  jsii.set(self, "authenticationType", value) # pyright: ignore[reportArgumentType]
8362
8438
 
8439
+ @builtins.property
8440
+ @jsii.member(jsii_name="cmkSecretConfig")
8441
+ def cmk_secret_config(
8442
+ self,
8443
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CmkSecretConfigProperty"]]:
8444
+ '''Specifies configuration information for a DataSync-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and a customer-managed AWS KMS key.'''
8445
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CmkSecretConfigProperty"]], jsii.get(self, "cmkSecretConfig"))
8446
+
8447
+ @cmk_secret_config.setter
8448
+ def cmk_secret_config(
8449
+ self,
8450
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CmkSecretConfigProperty"]],
8451
+ ) -> None:
8452
+ if __debug__:
8453
+ type_hints = typing.get_type_hints(_typecheckingstub__e407ec55488adbc9f81891a5e15e237e234b987b6214eb331162a8b63f344324)
8454
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8455
+ jsii.set(self, "cmkSecretConfig", value) # pyright: ignore[reportArgumentType]
8456
+
8457
+ @builtins.property
8458
+ @jsii.member(jsii_name="customSecretConfig")
8459
+ def custom_secret_config(
8460
+ self,
8461
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CustomSecretConfigProperty"]]:
8462
+ '''Specifies configuration information for a customer-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and an IAM role that DataSync can assume and access the customer-managed secret.'''
8463
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CustomSecretConfigProperty"]], jsii.get(self, "customSecretConfig"))
8464
+
8465
+ @custom_secret_config.setter
8466
+ def custom_secret_config(
8467
+ self,
8468
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationSMB.CustomSecretConfigProperty"]],
8469
+ ) -> None:
8470
+ if __debug__:
8471
+ type_hints = typing.get_type_hints(_typecheckingstub__fde88b8f3a9b839e4f9087f93f80eb219e3a48609302336a5ed68bd2edec2ebb)
8472
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8473
+ jsii.set(self, "customSecretConfig", value) # pyright: ignore[reportArgumentType]
8474
+
8363
8475
  @builtins.property
8364
8476
  @jsii.member(jsii_name="dnsIpAddresses")
8365
8477
  def dns_ip_addresses(self) -> typing.Optional[typing.List[builtins.str]]:
@@ -8511,6 +8623,206 @@ class CfnLocationSMB(
8511
8623
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8512
8624
  jsii.set(self, "user", value) # pyright: ignore[reportArgumentType]
8513
8625
 
8626
+ @jsii.data_type(
8627
+ jsii_type="aws-cdk-lib.aws_datasync.CfnLocationSMB.CmkSecretConfigProperty",
8628
+ jsii_struct_bases=[],
8629
+ name_mapping={"kms_key_arn": "kmsKeyArn", "secret_arn": "secretArn"},
8630
+ )
8631
+ class CmkSecretConfigProperty:
8632
+ def __init__(
8633
+ self,
8634
+ *,
8635
+ kms_key_arn: typing.Optional[builtins.str] = None,
8636
+ secret_arn: typing.Optional[builtins.str] = None,
8637
+ ) -> None:
8638
+ '''Specifies configuration information for a DataSync-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and a customer-managed AWS KMS key.
8639
+
8640
+ :param kms_key_arn: Specifies the ARN for the customer-managed AWS KMS key used to encrypt the secret specified for SecretArn. DataSync provides this key to AWS Secrets Manager.
8641
+ :param secret_arn: Specifies the ARN for an AWS Secrets Manager secret, managed by DataSync.
8642
+
8643
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-cmksecretconfig.html
8644
+ :exampleMetadata: fixture=_generated
8645
+
8646
+ Example::
8647
+
8648
+ # The code below shows an example of how to instantiate this type.
8649
+ # The values are placeholders you should change.
8650
+ from aws_cdk import aws_datasync as datasync
8651
+
8652
+ cmk_secret_config_property = datasync.CfnLocationSMB.CmkSecretConfigProperty(
8653
+ kms_key_arn="kmsKeyArn",
8654
+ secret_arn="secretArn"
8655
+ )
8656
+ '''
8657
+ if __debug__:
8658
+ type_hints = typing.get_type_hints(_typecheckingstub__9351aeda2a3946543003130a0d3d622afa774937076186eaabf4b996745ca99f)
8659
+ check_type(argname="argument kms_key_arn", value=kms_key_arn, expected_type=type_hints["kms_key_arn"])
8660
+ check_type(argname="argument secret_arn", value=secret_arn, expected_type=type_hints["secret_arn"])
8661
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
8662
+ if kms_key_arn is not None:
8663
+ self._values["kms_key_arn"] = kms_key_arn
8664
+ if secret_arn is not None:
8665
+ self._values["secret_arn"] = secret_arn
8666
+
8667
+ @builtins.property
8668
+ def kms_key_arn(self) -> typing.Optional[builtins.str]:
8669
+ '''Specifies the ARN for the customer-managed AWS KMS key used to encrypt the secret specified for SecretArn.
8670
+
8671
+ DataSync provides this key to AWS Secrets Manager.
8672
+
8673
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-cmksecretconfig.html#cfn-datasync-locationsmb-cmksecretconfig-kmskeyarn
8674
+ '''
8675
+ result = self._values.get("kms_key_arn")
8676
+ return typing.cast(typing.Optional[builtins.str], result)
8677
+
8678
+ @builtins.property
8679
+ def secret_arn(self) -> typing.Optional[builtins.str]:
8680
+ '''Specifies the ARN for an AWS Secrets Manager secret, managed by DataSync.
8681
+
8682
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-cmksecretconfig.html#cfn-datasync-locationsmb-cmksecretconfig-secretarn
8683
+ '''
8684
+ result = self._values.get("secret_arn")
8685
+ return typing.cast(typing.Optional[builtins.str], result)
8686
+
8687
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
8688
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
8689
+
8690
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
8691
+ return not (rhs == self)
8692
+
8693
+ def __repr__(self) -> str:
8694
+ return "CmkSecretConfigProperty(%s)" % ", ".join(
8695
+ k + "=" + repr(v) for k, v in self._values.items()
8696
+ )
8697
+
8698
+ @jsii.data_type(
8699
+ jsii_type="aws-cdk-lib.aws_datasync.CfnLocationSMB.CustomSecretConfigProperty",
8700
+ jsii_struct_bases=[],
8701
+ name_mapping={
8702
+ "secret_access_role_arn": "secretAccessRoleArn",
8703
+ "secret_arn": "secretArn",
8704
+ },
8705
+ )
8706
+ class CustomSecretConfigProperty:
8707
+ def __init__(
8708
+ self,
8709
+ *,
8710
+ secret_access_role_arn: builtins.str,
8711
+ secret_arn: builtins.str,
8712
+ ) -> None:
8713
+ '''Specifies configuration information for a customer-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location, and an IAM role that DataSync can assume and access the customer-managed secret.
8714
+
8715
+ :param secret_access_role_arn: Specifies the ARN for the AWS Identity and Access Management role that DataSync uses to access the secret specified for SecretArn.
8716
+ :param secret_arn: Specifies the ARN for a customer created AWS Secrets Manager secret.
8717
+
8718
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-customsecretconfig.html
8719
+ :exampleMetadata: fixture=_generated
8720
+
8721
+ Example::
8722
+
8723
+ # The code below shows an example of how to instantiate this type.
8724
+ # The values are placeholders you should change.
8725
+ from aws_cdk import aws_datasync as datasync
8726
+
8727
+ custom_secret_config_property = datasync.CfnLocationSMB.CustomSecretConfigProperty(
8728
+ secret_access_role_arn="secretAccessRoleArn",
8729
+ secret_arn="secretArn"
8730
+ )
8731
+ '''
8732
+ if __debug__:
8733
+ type_hints = typing.get_type_hints(_typecheckingstub__6049f29f723d7f92a691c991b6232a25e39ba58d2d4400b1c499f542a7a8aee7)
8734
+ check_type(argname="argument secret_access_role_arn", value=secret_access_role_arn, expected_type=type_hints["secret_access_role_arn"])
8735
+ check_type(argname="argument secret_arn", value=secret_arn, expected_type=type_hints["secret_arn"])
8736
+ self._values: typing.Dict[builtins.str, typing.Any] = {
8737
+ "secret_access_role_arn": secret_access_role_arn,
8738
+ "secret_arn": secret_arn,
8739
+ }
8740
+
8741
+ @builtins.property
8742
+ def secret_access_role_arn(self) -> builtins.str:
8743
+ '''Specifies the ARN for the AWS Identity and Access Management role that DataSync uses to access the secret specified for SecretArn.
8744
+
8745
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-customsecretconfig.html#cfn-datasync-locationsmb-customsecretconfig-secretaccessrolearn
8746
+ '''
8747
+ result = self._values.get("secret_access_role_arn")
8748
+ assert result is not None, "Required property 'secret_access_role_arn' is missing"
8749
+ return typing.cast(builtins.str, result)
8750
+
8751
+ @builtins.property
8752
+ def secret_arn(self) -> builtins.str:
8753
+ '''Specifies the ARN for a customer created AWS Secrets Manager secret.
8754
+
8755
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-customsecretconfig.html#cfn-datasync-locationsmb-customsecretconfig-secretarn
8756
+ '''
8757
+ result = self._values.get("secret_arn")
8758
+ assert result is not None, "Required property 'secret_arn' is missing"
8759
+ return typing.cast(builtins.str, result)
8760
+
8761
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
8762
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
8763
+
8764
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
8765
+ return not (rhs == self)
8766
+
8767
+ def __repr__(self) -> str:
8768
+ return "CustomSecretConfigProperty(%s)" % ", ".join(
8769
+ k + "=" + repr(v) for k, v in self._values.items()
8770
+ )
8771
+
8772
+ @jsii.data_type(
8773
+ jsii_type="aws-cdk-lib.aws_datasync.CfnLocationSMB.ManagedSecretConfigProperty",
8774
+ jsii_struct_bases=[],
8775
+ name_mapping={"secret_arn": "secretArn"},
8776
+ )
8777
+ class ManagedSecretConfigProperty:
8778
+ def __init__(self, *, secret_arn: builtins.str) -> None:
8779
+ '''Specifies configuration information for a DataSync-managed secret, such as a password or set of credentials that DataSync uses to access a specific transfer location.
8780
+
8781
+ DataSync uses the default AWS-managed KMS key to encrypt this secret in AWS Secrets Manager.
8782
+
8783
+ :param secret_arn: Specifies the ARN for an AWS Secrets Manager secret.
8784
+
8785
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-managedsecretconfig.html
8786
+ :exampleMetadata: fixture=_generated
8787
+
8788
+ Example::
8789
+
8790
+ # The code below shows an example of how to instantiate this type.
8791
+ # The values are placeholders you should change.
8792
+ from aws_cdk import aws_datasync as datasync
8793
+
8794
+ managed_secret_config_property = datasync.CfnLocationSMB.ManagedSecretConfigProperty(
8795
+ secret_arn="secretArn"
8796
+ )
8797
+ '''
8798
+ if __debug__:
8799
+ type_hints = typing.get_type_hints(_typecheckingstub__5db7c95a4b68a63cb100ea0ecc9392535271eaf1c99519a96ebecbd32455f91c)
8800
+ check_type(argname="argument secret_arn", value=secret_arn, expected_type=type_hints["secret_arn"])
8801
+ self._values: typing.Dict[builtins.str, typing.Any] = {
8802
+ "secret_arn": secret_arn,
8803
+ }
8804
+
8805
+ @builtins.property
8806
+ def secret_arn(self) -> builtins.str:
8807
+ '''Specifies the ARN for an AWS Secrets Manager secret.
8808
+
8809
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-managedsecretconfig.html#cfn-datasync-locationsmb-managedsecretconfig-secretarn
8810
+ '''
8811
+ result = self._values.get("secret_arn")
8812
+ assert result is not None, "Required property 'secret_arn' is missing"
8813
+ return typing.cast(builtins.str, result)
8814
+
8815
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
8816
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
8817
+
8818
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
8819
+ return not (rhs == self)
8820
+
8821
+ def __repr__(self) -> str:
8822
+ return "ManagedSecretConfigProperty(%s)" % ", ".join(
8823
+ k + "=" + repr(v) for k, v in self._values.items()
8824
+ )
8825
+
8514
8826
  @jsii.data_type(
8515
8827
  jsii_type="aws-cdk-lib.aws_datasync.CfnLocationSMB.MountOptionsProperty",
8516
8828
  jsii_struct_bases=[],
@@ -10720,6 +11032,8 @@ def _typecheckingstub__b20670d7cb18baa1155ccc397df310282442d51b95170ab568e5c0a9c
10720
11032
  *,
10721
11033
  agent_arns: typing.Sequence[builtins.str],
10722
11034
  authentication_type: typing.Optional[builtins.str] = None,
11035
+ cmk_secret_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLocationSMB.CmkSecretConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
11036
+ custom_secret_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLocationSMB.CustomSecretConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
10723
11037
  dns_ip_addresses: typing.Optional[typing.Sequence[builtins.str]] = None,
10724
11038
  domain: typing.Optional[builtins.str] = None,
10725
11039
  kerberos_keytab: typing.Optional[builtins.str] = None,
@@ -11774,6 +12088,8 @@ def _typecheckingstub__bafa6101408857d4661895c88a8c9839da8768aa52e07d3f2889a4f27
11774
12088
  *,
11775
12089
  agent_arns: typing.Sequence[builtins.str],
11776
12090
  authentication_type: typing.Optional[builtins.str] = None,
12091
+ cmk_secret_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLocationSMB.CmkSecretConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
12092
+ custom_secret_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLocationSMB.CustomSecretConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
11777
12093
  dns_ip_addresses: typing.Optional[typing.Sequence[builtins.str]] = None,
11778
12094
  domain: typing.Optional[builtins.str] = None,
11779
12095
  kerberos_keytab: typing.Optional[builtins.str] = None,
@@ -11813,6 +12129,18 @@ def _typecheckingstub__35de39b9b573d0d6146fa84be08e6a3a14ff5e9ece5535c93fc8af130
11813
12129
  """Type checking stubs"""
11814
12130
  pass
11815
12131
 
12132
+ def _typecheckingstub__e407ec55488adbc9f81891a5e15e237e234b987b6214eb331162a8b63f344324(
12133
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnLocationSMB.CmkSecretConfigProperty]],
12134
+ ) -> None:
12135
+ """Type checking stubs"""
12136
+ pass
12137
+
12138
+ def _typecheckingstub__fde88b8f3a9b839e4f9087f93f80eb219e3a48609302336a5ed68bd2edec2ebb(
12139
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnLocationSMB.CustomSecretConfigProperty]],
12140
+ ) -> None:
12141
+ """Type checking stubs"""
12142
+ pass
12143
+
11816
12144
  def _typecheckingstub__dc011a04f6ce95bde8af4cc9451501d73cdf7696b6089617c22a1d8aa112d7be(
11817
12145
  value: typing.Optional[typing.List[builtins.str]],
11818
12146
  ) -> None:
@@ -11879,6 +12207,29 @@ def _typecheckingstub__9112e8b177e52fbd055f221015988972f906f8c7291b4a1992bb1656c
11879
12207
  """Type checking stubs"""
11880
12208
  pass
11881
12209
 
12210
+ def _typecheckingstub__9351aeda2a3946543003130a0d3d622afa774937076186eaabf4b996745ca99f(
12211
+ *,
12212
+ kms_key_arn: typing.Optional[builtins.str] = None,
12213
+ secret_arn: typing.Optional[builtins.str] = None,
12214
+ ) -> None:
12215
+ """Type checking stubs"""
12216
+ pass
12217
+
12218
+ def _typecheckingstub__6049f29f723d7f92a691c991b6232a25e39ba58d2d4400b1c499f542a7a8aee7(
12219
+ *,
12220
+ secret_access_role_arn: builtins.str,
12221
+ secret_arn: builtins.str,
12222
+ ) -> None:
12223
+ """Type checking stubs"""
12224
+ pass
12225
+
12226
+ def _typecheckingstub__5db7c95a4b68a63cb100ea0ecc9392535271eaf1c99519a96ebecbd32455f91c(
12227
+ *,
12228
+ secret_arn: builtins.str,
12229
+ ) -> None:
12230
+ """Type checking stubs"""
12231
+ pass
12232
+
11882
12233
  def _typecheckingstub__465428a8e33c33a3926562e4b4d3d671db7fc7f2d1ff95443e6224cb280e8c00(
11883
12234
  *,
11884
12235
  version: typing.Optional[builtins.str] = None,