aws-cdk-lib 2.166.0__py3-none-any.whl → 2.167.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 (38) hide show
  1. aws_cdk/__init__.py +1 -1
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.166.0.jsii.tgz → aws-cdk-lib@2.167.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigateway/__init__.py +9 -0
  5. aws_cdk/aws_appsync/__init__.py +209 -79
  6. aws_cdk/aws_bedrock/__init__.py +51 -45
  7. aws_cdk/aws_cleanrooms/__init__.py +66 -5
  8. aws_cdk/aws_cloudfront/__init__.py +21 -3
  9. aws_cdk/aws_cloudfront/experimental/__init__.py +3 -3
  10. aws_cdk/aws_codebuild/__init__.py +59 -29
  11. aws_cdk/aws_datasync/__init__.py +51 -0
  12. aws_cdk/aws_ec2/__init__.py +305 -9
  13. aws_cdk/aws_ecs/__init__.py +37 -34
  14. aws_cdk/aws_elasticache/__init__.py +5 -3
  15. aws_cdk/aws_elasticloadbalancingv2/__init__.py +73 -46
  16. aws_cdk/aws_gamelift/__init__.py +52 -40
  17. aws_cdk/aws_inspectorv2/__init__.py +6 -12
  18. aws_cdk/aws_kms/__init__.py +2 -0
  19. aws_cdk/aws_lambda/__init__.py +336 -19
  20. aws_cdk/aws_lambda_nodejs/__init__.py +3 -3
  21. aws_cdk/aws_logs/__init__.py +214 -0
  22. aws_cdk/aws_nimblestudio/__init__.py +6 -103
  23. aws_cdk/aws_quicksight/__init__.py +481 -10
  24. aws_cdk/aws_rds/__init__.py +602 -0
  25. aws_cdk/aws_s3_assets/__init__.py +37 -0
  26. aws_cdk/aws_s3_deployment/__init__.py +5 -0
  27. aws_cdk/aws_servicecatalog/__init__.py +52 -4
  28. aws_cdk/aws_ses/__init__.py +5 -3
  29. aws_cdk/aws_stepfunctions/__init__.py +8 -0
  30. aws_cdk/aws_synthetics/__init__.py +12 -1
  31. aws_cdk/aws_wisdom/__init__.py +344 -24
  32. aws_cdk/triggers/__init__.py +3 -3
  33. {aws_cdk_lib-2.166.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/METADATA +1 -1
  34. {aws_cdk_lib-2.166.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/RECORD +38 -38
  35. {aws_cdk_lib-2.166.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/WHEEL +1 -1
  36. {aws_cdk_lib-2.166.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/LICENSE +0 -0
  37. {aws_cdk_lib-2.166.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/NOTICE +0 -0
  38. {aws_cdk_lib-2.166.0.dist-info → aws_cdk_lib-2.167.0.dist-info}/top_level.txt +0 -0
@@ -992,6 +992,7 @@ from ..aws_iam import (
992
992
  IRole as _IRole_235f5d8e,
993
993
  Role as _Role_e8c6e11f,
994
994
  )
995
+ from ..aws_kms import IKey as _IKey_5f11635f
995
996
  from ..aws_lambda import IFunction as _IFunction_6adb0ab8
996
997
  from ..aws_logs import (
997
998
  ILogGroup as _ILogGroup_3c4fa718, RetentionDays as _RetentionDays_070f99f0
@@ -2452,7 +2453,7 @@ class CfnApi(
2452
2453
  metaclass=jsii.JSIIMeta,
2453
2454
  jsii_type="aws-cdk-lib.aws_appsync.CfnApi",
2454
2455
  ):
2455
- '''Creates a ``GraphqlApi`` object.
2456
+ '''The ``AWS::AppSync::Api`` resource creates an AWS AppSync API that you can use for an AWS AppSync API with your preferred configuration, such as an Event API that provides real-time message publishing and message subscriptions over WebSockets.
2456
2457
 
2457
2458
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html
2458
2459
  :cloudformationResource: AWS::AppSync::Api
@@ -2533,10 +2534,10 @@ class CfnApi(
2533
2534
  '''
2534
2535
  :param scope: Scope in which this resource is defined.
2535
2536
  :param id: Construct identifier for this resource (unique in its scope).
2536
- :param name: The API name.
2537
- :param event_config: The configuration for an Event Api.
2537
+ :param name: The name of the ``Api`` .
2538
+ :param event_config: Describes the authorization configuration for connections, message publishing, message subscriptions, and logging for an Event API.
2538
2539
  :param owner_contact: The owner contact information for an API resource. This field accepts any string input with a length of 0 - 256 characters.
2539
- :param tags: The tags.
2540
+ :param tags: A set of tags (key-value pairs) for this API.
2540
2541
  '''
2541
2542
  if __debug__:
2542
2543
  type_hints = typing.get_type_hints(_typecheckingstub__9b24e030284e4cb760e04c0345cc69b457962fa5c53b82f009a5c412ad0fa1e5)
@@ -2584,7 +2585,7 @@ class CfnApi(
2584
2585
  @builtins.property
2585
2586
  @jsii.member(jsii_name="attrApiArn")
2586
2587
  def attr_api_arn(self) -> builtins.str:
2587
- '''The Amazon Resource Name (ARN) of the AppSync Api.
2588
+ '''The Amazon Resource Name (ARN) of the AWS AppSync Api.
2588
2589
 
2589
2590
  :cloudformationAttribute: ApiArn
2590
2591
  '''
@@ -2593,7 +2594,7 @@ class CfnApi(
2593
2594
  @builtins.property
2594
2595
  @jsii.member(jsii_name="attrApiId")
2595
2596
  def attr_api_id(self) -> builtins.str:
2596
- '''The API ID.
2597
+ '''The unique identifier for the AWS AppSync Api generated by the service.
2597
2598
 
2598
2599
  :cloudformationAttribute: ApiId
2599
2600
  '''
@@ -2608,6 +2609,24 @@ class CfnApi(
2608
2609
  '''
2609
2610
  return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrDns"))
2610
2611
 
2612
+ @builtins.property
2613
+ @jsii.member(jsii_name="attrDnsHttp")
2614
+ def attr_dns_http(self) -> builtins.str:
2615
+ '''The domain name of the Api's HTTP endpoint.
2616
+
2617
+ :cloudformationAttribute: Dns.Http
2618
+ '''
2619
+ return typing.cast(builtins.str, jsii.get(self, "attrDnsHttp"))
2620
+
2621
+ @builtins.property
2622
+ @jsii.member(jsii_name="attrDnsRealtime")
2623
+ def attr_dns_realtime(self) -> builtins.str:
2624
+ '''The domain name of the Api's real-time endpoint.
2625
+
2626
+ :cloudformationAttribute: Dns.Realtime
2627
+ '''
2628
+ return typing.cast(builtins.str, jsii.get(self, "attrDnsRealtime"))
2629
+
2611
2630
  @builtins.property
2612
2631
  @jsii.member(jsii_name="cdkTagManager")
2613
2632
  def cdk_tag_manager(self) -> _TagManager_0a598cb3:
@@ -2622,7 +2641,7 @@ class CfnApi(
2622
2641
  @builtins.property
2623
2642
  @jsii.member(jsii_name="name")
2624
2643
  def name(self) -> builtins.str:
2625
- '''The API name.'''
2644
+ '''The name of the ``Api`` .'''
2626
2645
  return typing.cast(builtins.str, jsii.get(self, "name"))
2627
2646
 
2628
2647
  @name.setter
@@ -2637,7 +2656,7 @@ class CfnApi(
2637
2656
  def event_config(
2638
2657
  self,
2639
2658
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnApi.EventConfigProperty"]]:
2640
- '''The configuration for an Event Api.'''
2659
+ '''Describes the authorization configuration for connections, message publishing, message subscriptions, and logging for an Event API.'''
2641
2660
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnApi.EventConfigProperty"]], jsii.get(self, "eventConfig"))
2642
2661
 
2643
2662
  @event_config.setter
@@ -2666,7 +2685,7 @@ class CfnApi(
2666
2685
  @builtins.property
2667
2686
  @jsii.member(jsii_name="tags")
2668
2687
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
2669
- '''The tags.'''
2688
+ '''A set of tags (key-value pairs) for this API.'''
2670
2689
  return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
2671
2690
 
2672
2691
  @tags.setter
@@ -2683,9 +2702,11 @@ class CfnApi(
2683
2702
  )
2684
2703
  class AuthModeProperty:
2685
2704
  def __init__(self, *, auth_type: typing.Optional[builtins.str] = None) -> None:
2686
- '''An auth mode.
2705
+ '''Describes an authorization configuration.
2706
+
2707
+ Use ``AuthMode`` to specify the publishing and subscription authorization configuration for an Event API.
2687
2708
 
2688
- :param auth_type: Security configuration for your AppSync API.
2709
+ :param auth_type: The authorization type.
2689
2710
 
2690
2711
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authmode.html
2691
2712
  :exampleMetadata: fixture=_generated
@@ -2709,7 +2730,7 @@ class CfnApi(
2709
2730
 
2710
2731
  @builtins.property
2711
2732
  def auth_type(self) -> typing.Optional[builtins.str]:
2712
- '''Security configuration for your AppSync API.
2733
+ '''The authorization type.
2713
2734
 
2714
2735
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authmode.html#cfn-appsync-api-authmode-authtype
2715
2736
  '''
@@ -2746,12 +2767,12 @@ class CfnApi(
2746
2767
  lambda_authorizer_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnApi.LambdaAuthorizerConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2747
2768
  open_id_connect_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnApi.OpenIDConnectConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2748
2769
  ) -> None:
2749
- '''An auth provider for the AppSync API.
2770
+ '''Describes an authorization provider.
2750
2771
 
2751
- :param auth_type: Security configuration for your AppSync API.
2752
- :param cognito_config: Optional authorization configuration for using Amazon Cognito user pools with your API endpoint.
2753
- :param lambda_authorizer_config: A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode. Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
2754
- :param open_id_connect_config: The OpenID Connect configuration.
2772
+ :param auth_type: The authorization type.
2773
+ :param cognito_config: Describes an Amazon Cognito user pool configuration.
2774
+ :param lambda_authorizer_config: A ``LambdaAuthorizerConfig`` specifies how to authorize AWS AppSync API access when using the ``AWS_LAMBDA`` authorizer mode. Be aware that an AWS AppSync API can have only one AWS Lambda authorizer configured at a time.
2775
+ :param open_id_connect_config: Describes an OpenID Connect (OIDC) configuration.
2755
2776
 
2756
2777
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authprovider.html
2757
2778
  :exampleMetadata: fixture=_generated
@@ -2808,7 +2829,7 @@ class CfnApi(
2808
2829
 
2809
2830
  @builtins.property
2810
2831
  def auth_type(self) -> builtins.str:
2811
- '''Security configuration for your AppSync API.
2832
+ '''The authorization type.
2812
2833
 
2813
2834
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authprovider.html#cfn-appsync-api-authprovider-authtype
2814
2835
  '''
@@ -2820,7 +2841,7 @@ class CfnApi(
2820
2841
  def cognito_config(
2821
2842
  self,
2822
2843
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnApi.CognitoConfigProperty"]]:
2823
- '''Optional authorization configuration for using Amazon Cognito user pools with your API endpoint.
2844
+ '''Describes an Amazon Cognito user pool configuration.
2824
2845
 
2825
2846
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authprovider.html#cfn-appsync-api-authprovider-cognitoconfig
2826
2847
  '''
@@ -2831,9 +2852,9 @@ class CfnApi(
2831
2852
  def lambda_authorizer_config(
2832
2853
  self,
2833
2854
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnApi.LambdaAuthorizerConfigProperty"]]:
2834
- '''A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode.
2855
+ '''A ``LambdaAuthorizerConfig`` specifies how to authorize AWS AppSync API access when using the ``AWS_LAMBDA`` authorizer mode.
2835
2856
 
2836
- Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
2857
+ Be aware that an AWS AppSync API can have only one AWS Lambda authorizer configured at a time.
2837
2858
 
2838
2859
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authprovider.html#cfn-appsync-api-authprovider-lambdaauthorizerconfig
2839
2860
  '''
@@ -2844,7 +2865,7 @@ class CfnApi(
2844
2865
  def open_id_connect_config(
2845
2866
  self,
2846
2867
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnApi.OpenIDConnectConfigProperty"]]:
2847
- '''The OpenID Connect configuration.
2868
+ '''Describes an OpenID Connect (OIDC) configuration.
2848
2869
 
2849
2870
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-authprovider.html#cfn-appsync-api-authprovider-openidconnectconfig
2850
2871
  '''
@@ -2879,11 +2900,11 @@ class CfnApi(
2879
2900
  user_pool_id: builtins.str,
2880
2901
  app_id_client_regex: typing.Optional[builtins.str] = None,
2881
2902
  ) -> None:
2882
- '''Optional authorization configuration for using Amazon Cognito user pools with your API endpoint.
2903
+ '''Describes an Amazon Cognito configuration.
2883
2904
 
2884
- :param aws_region:
2885
- :param user_pool_id:
2886
- :param app_id_client_regex:
2905
+ :param aws_region: The AWS Region in which the user pool was created.
2906
+ :param user_pool_id: The user pool ID.
2907
+ :param app_id_client_regex: A regular expression for validating the incoming Amazon Cognito user pool app client ID. If this value isn't set, no filtering is applied.
2887
2908
 
2888
2909
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-cognitoconfig.html
2889
2910
  :exampleMetadata: fixture=_generated
@@ -2916,7 +2937,8 @@ class CfnApi(
2916
2937
 
2917
2938
  @builtins.property
2918
2939
  def aws_region(self) -> builtins.str:
2919
- '''
2940
+ '''The AWS Region in which the user pool was created.
2941
+
2920
2942
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-cognitoconfig.html#cfn-appsync-api-cognitoconfig-awsregion
2921
2943
  '''
2922
2944
  result = self._values.get("aws_region")
@@ -2925,7 +2947,8 @@ class CfnApi(
2925
2947
 
2926
2948
  @builtins.property
2927
2949
  def user_pool_id(self) -> builtins.str:
2928
- '''
2950
+ '''The user pool ID.
2951
+
2929
2952
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-cognitoconfig.html#cfn-appsync-api-cognitoconfig-userpoolid
2930
2953
  '''
2931
2954
  result = self._values.get("user_pool_id")
@@ -2934,7 +2957,10 @@ class CfnApi(
2934
2957
 
2935
2958
  @builtins.property
2936
2959
  def app_id_client_regex(self) -> typing.Optional[builtins.str]:
2937
- '''
2960
+ '''A regular expression for validating the incoming Amazon Cognito user pool app client ID.
2961
+
2962
+ If this value isn't set, no filtering is applied.
2963
+
2938
2964
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-cognitoconfig.html#cfn-appsync-api-cognitoconfig-appidclientregex
2939
2965
  '''
2940
2966
  result = self._values.get("app_id_client_regex")
@@ -2951,6 +2977,76 @@ class CfnApi(
2951
2977
  k + "=" + repr(v) for k, v in self._values.items()
2952
2978
  )
2953
2979
 
2980
+ @jsii.data_type(
2981
+ jsii_type="aws-cdk-lib.aws_appsync.CfnApi.DnsMapProperty",
2982
+ jsii_struct_bases=[],
2983
+ name_mapping={"http": "http", "realtime": "realtime"},
2984
+ )
2985
+ class DnsMapProperty:
2986
+ def __init__(
2987
+ self,
2988
+ *,
2989
+ http: typing.Optional[builtins.str] = None,
2990
+ realtime: typing.Optional[builtins.str] = None,
2991
+ ) -> None:
2992
+ '''A map of DNS names for the Api.
2993
+
2994
+ :param http: The domain name of the Api's HTTP endpoint.
2995
+ :param realtime: The domain name of the Api's real-time endpoint.
2996
+
2997
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-dnsmap.html
2998
+ :exampleMetadata: fixture=_generated
2999
+
3000
+ Example::
3001
+
3002
+ # The code below shows an example of how to instantiate this type.
3003
+ # The values are placeholders you should change.
3004
+ from aws_cdk import aws_appsync as appsync
3005
+
3006
+ dns_map_property = appsync.CfnApi.DnsMapProperty(
3007
+ http="http",
3008
+ realtime="realtime"
3009
+ )
3010
+ '''
3011
+ if __debug__:
3012
+ type_hints = typing.get_type_hints(_typecheckingstub__312a111f84f5f64be12d3d7c09cc00f4c64e4fe99cd1bf78561ebcfd82084e0c)
3013
+ check_type(argname="argument http", value=http, expected_type=type_hints["http"])
3014
+ check_type(argname="argument realtime", value=realtime, expected_type=type_hints["realtime"])
3015
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
3016
+ if http is not None:
3017
+ self._values["http"] = http
3018
+ if realtime is not None:
3019
+ self._values["realtime"] = realtime
3020
+
3021
+ @builtins.property
3022
+ def http(self) -> typing.Optional[builtins.str]:
3023
+ '''The domain name of the Api's HTTP endpoint.
3024
+
3025
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-dnsmap.html#cfn-appsync-api-dnsmap-http
3026
+ '''
3027
+ result = self._values.get("http")
3028
+ return typing.cast(typing.Optional[builtins.str], result)
3029
+
3030
+ @builtins.property
3031
+ def realtime(self) -> typing.Optional[builtins.str]:
3032
+ '''The domain name of the Api's real-time endpoint.
3033
+
3034
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-dnsmap.html#cfn-appsync-api-dnsmap-realtime
3035
+ '''
3036
+ result = self._values.get("realtime")
3037
+ return typing.cast(typing.Optional[builtins.str], result)
3038
+
3039
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3040
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3041
+
3042
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3043
+ return not (rhs == self)
3044
+
3045
+ def __repr__(self) -> str:
3046
+ return "DnsMapProperty(%s)" % ", ".join(
3047
+ k + "=" + repr(v) for k, v in self._values.items()
3048
+ )
3049
+
2954
3050
  @jsii.data_type(
2955
3051
  jsii_type="aws-cdk-lib.aws_appsync.CfnApi.EventConfigProperty",
2956
3052
  jsii_struct_bases=[],
@@ -2972,13 +3068,13 @@ class CfnApi(
2972
3068
  default_subscribe_auth_modes: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnApi.AuthModeProperty", typing.Dict[builtins.str, typing.Any]]]]],
2973
3069
  log_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnApi.EventLogConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2974
3070
  ) -> None:
2975
- '''The configuration for an Event Api.
3071
+ '''Describes the authorization configuration for connections, message publishing, message subscriptions, and logging for an Event API.
2976
3072
 
2977
- :param auth_providers: A list of auth providers for the AppSync API.
2978
- :param connection_auth_modes: A list of auth modes for the AppSync API.
2979
- :param default_publish_auth_modes: A list of auth modes for the AppSync API.
2980
- :param default_subscribe_auth_modes: A list of auth modes for the AppSync API.
2981
- :param log_config: The log config for the AppSync API.
3073
+ :param auth_providers: A list of authorization providers.
3074
+ :param connection_auth_modes: A list of valid authorization modes for the Event API connections.
3075
+ :param default_publish_auth_modes: A list of valid authorization modes for the Event API publishing.
3076
+ :param default_subscribe_auth_modes: A list of valid authorization modes for the Event API subscriptions.
3077
+ :param log_config: The CloudWatch Logs configuration for the Event API.
2982
3078
 
2983
3079
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventconfig.html
2984
3080
  :exampleMetadata: fixture=_generated
@@ -3054,7 +3150,7 @@ class CfnApi(
3054
3150
  def auth_providers(
3055
3151
  self,
3056
3152
  ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApi.AuthProviderProperty"]]]:
3057
- '''A list of auth providers for the AppSync API.
3153
+ '''A list of authorization providers.
3058
3154
 
3059
3155
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventconfig.html#cfn-appsync-api-eventconfig-authproviders
3060
3156
  '''
@@ -3066,7 +3162,7 @@ class CfnApi(
3066
3162
  def connection_auth_modes(
3067
3163
  self,
3068
3164
  ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApi.AuthModeProperty"]]]:
3069
- '''A list of auth modes for the AppSync API.
3165
+ '''A list of valid authorization modes for the Event API connections.
3070
3166
 
3071
3167
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventconfig.html#cfn-appsync-api-eventconfig-connectionauthmodes
3072
3168
  '''
@@ -3078,7 +3174,7 @@ class CfnApi(
3078
3174
  def default_publish_auth_modes(
3079
3175
  self,
3080
3176
  ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApi.AuthModeProperty"]]]:
3081
- '''A list of auth modes for the AppSync API.
3177
+ '''A list of valid authorization modes for the Event API publishing.
3082
3178
 
3083
3179
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventconfig.html#cfn-appsync-api-eventconfig-defaultpublishauthmodes
3084
3180
  '''
@@ -3090,7 +3186,7 @@ class CfnApi(
3090
3186
  def default_subscribe_auth_modes(
3091
3187
  self,
3092
3188
  ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnApi.AuthModeProperty"]]]:
3093
- '''A list of auth modes for the AppSync API.
3189
+ '''A list of valid authorization modes for the Event API subscriptions.
3094
3190
 
3095
3191
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventconfig.html#cfn-appsync-api-eventconfig-defaultsubscribeauthmodes
3096
3192
  '''
@@ -3102,7 +3198,7 @@ class CfnApi(
3102
3198
  def log_config(
3103
3199
  self,
3104
3200
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnApi.EventLogConfigProperty"]]:
3105
- '''The log config for the AppSync API.
3201
+ '''The CloudWatch Logs configuration for the Event API.
3106
3202
 
3107
3203
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventconfig.html#cfn-appsync-api-eventconfig-logconfig
3108
3204
  '''
@@ -3135,10 +3231,10 @@ class CfnApi(
3135
3231
  cloud_watch_logs_role_arn: builtins.str,
3136
3232
  log_level: builtins.str,
3137
3233
  ) -> None:
3138
- '''The log config for the AppSync API.
3234
+ '''Describes the CloudWatch Logs configuration for the Event API.
3139
3235
 
3140
- :param cloud_watch_logs_role_arn:
3141
- :param log_level: Logging level for the AppSync API.
3236
+ :param cloud_watch_logs_role_arn: The IAM service role that AWS AppSync assumes to publish CloudWatch Logs in your account.
3237
+ :param log_level: The type of information to log for the Event API.
3142
3238
 
3143
3239
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventlogconfig.html
3144
3240
  :exampleMetadata: fixture=_generated
@@ -3165,7 +3261,8 @@ class CfnApi(
3165
3261
 
3166
3262
  @builtins.property
3167
3263
  def cloud_watch_logs_role_arn(self) -> builtins.str:
3168
- '''
3264
+ '''The IAM service role that AWS AppSync assumes to publish CloudWatch Logs in your account.
3265
+
3169
3266
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventlogconfig.html#cfn-appsync-api-eventlogconfig-cloudwatchlogsrolearn
3170
3267
  '''
3171
3268
  result = self._values.get("cloud_watch_logs_role_arn")
@@ -3174,7 +3271,7 @@ class CfnApi(
3174
3271
 
3175
3272
  @builtins.property
3176
3273
  def log_level(self) -> builtins.str:
3177
- '''Logging level for the AppSync API.
3274
+ '''The type of information to log for the Event API.
3178
3275
 
3179
3276
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-api-eventlogconfig.html#cfn-appsync-api-eventlogconfig-loglevel
3180
3277
  '''
@@ -4095,10 +4192,10 @@ class CfnApiProps:
4095
4192
  ) -> None:
4096
4193
  '''Properties for defining a ``CfnApi``.
4097
4194
 
4098
- :param name: The API name.
4099
- :param event_config: The configuration for an Event Api.
4195
+ :param name: The name of the ``Api`` .
4196
+ :param event_config: Describes the authorization configuration for connections, message publishing, message subscriptions, and logging for an Event API.
4100
4197
  :param owner_contact: The owner contact information for an API resource. This field accepts any string input with a length of 0 - 256 characters.
4101
- :param tags: The tags.
4198
+ :param tags: A set of tags (key-value pairs) for this API.
4102
4199
 
4103
4200
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html
4104
4201
  :exampleMetadata: fixture=_generated
@@ -4182,7 +4279,7 @@ class CfnApiProps:
4182
4279
 
4183
4280
  @builtins.property
4184
4281
  def name(self) -> builtins.str:
4185
- '''The API name.
4282
+ '''The name of the ``Api`` .
4186
4283
 
4187
4284
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html#cfn-appsync-api-name
4188
4285
  '''
@@ -4194,7 +4291,7 @@ class CfnApiProps:
4194
4291
  def event_config(
4195
4292
  self,
4196
4293
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnApi.EventConfigProperty]]:
4197
- '''The configuration for an Event Api.
4294
+ '''Describes the authorization configuration for connections, message publishing, message subscriptions, and logging for an Event API.
4198
4295
 
4199
4296
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html#cfn-appsync-api-eventconfig
4200
4297
  '''
@@ -4214,7 +4311,7 @@ class CfnApiProps:
4214
4311
 
4215
4312
  @builtins.property
4216
4313
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4217
- '''The tags.
4314
+ '''A set of tags (key-value pairs) for this API.
4218
4315
 
4219
4316
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-api.html#cfn-appsync-api-tags
4220
4317
  '''
@@ -4239,7 +4336,9 @@ class CfnChannelNamespace(
4239
4336
  metaclass=jsii.JSIIMeta,
4240
4337
  jsii_type="aws-cdk-lib.aws_appsync.CfnChannelNamespace",
4241
4338
  ):
4242
- '''Resource schema for AppSync ChannelNamespace.
4339
+ '''The ``AWS::AppSync::ChannelNamespace`` resource creates a channel namespace associated with an ``Api`` .
4340
+
4341
+ The ``ChannelNamespace`` contains the definitions for code handlers for the ``Api`` .
4243
4342
 
4244
4343
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html
4245
4344
  :cloudformationResource: AWS::AppSync::ChannelNamespace
@@ -4287,13 +4386,13 @@ class CfnChannelNamespace(
4287
4386
  '''
4288
4387
  :param scope: Scope in which this resource is defined.
4289
4388
  :param id: Construct identifier for this resource (unique in its scope).
4290
- :param api_id: AppSync Api Id that this Channel Namespace belongs to.
4291
- :param name: Namespace indentifier.
4292
- :param code_handlers: String of APPSYNC_JS code to be used by the handlers.
4389
+ :param api_id: The ``Api`` ID.
4390
+ :param name: The name of the channel namespace. This name must be unique within the ``Api`` .
4391
+ :param code_handlers: The event handler functions that run custom business logic to process published events and subscribe requests.
4293
4392
  :param code_s3_location: The Amazon S3 endpoint where the code is located.
4294
- :param publish_auth_modes:
4295
- :param subscribe_auth_modes:
4296
- :param tags: An arbitrary set of tags (key-value pairs) for this AppSync API.
4393
+ :param publish_auth_modes: The authorization mode to use for publishing messages on the channel namespace. This configuration overrides the default ``Api`` authorization configuration.
4394
+ :param subscribe_auth_modes: The authorization mode to use for subscribing to messages on the channel namespace. This configuration overrides the default ``Api`` authorization configuration.
4395
+ :param tags: A set of tags (key-value pairs) for this channel namespace.
4297
4396
  '''
4298
4397
  if __debug__:
4299
4398
  type_hints = typing.get_type_hints(_typecheckingstub__a093c57f7353830d56f8cde41e8653e333d0f0b91da87dd9ca86d72460c39119)
@@ -4344,7 +4443,7 @@ class CfnChannelNamespace(
4344
4443
  @builtins.property
4345
4444
  @jsii.member(jsii_name="attrChannelNamespaceArn")
4346
4445
  def attr_channel_namespace_arn(self) -> builtins.str:
4347
- '''The Amazon Resource Name (ARN) for the Channel Namespace.
4446
+ '''The Amazon Resource Name (ARN) of the channel namespace.
4348
4447
 
4349
4448
  :cloudformationAttribute: ChannelNamespaceArn
4350
4449
  '''
@@ -4364,7 +4463,7 @@ class CfnChannelNamespace(
4364
4463
  @builtins.property
4365
4464
  @jsii.member(jsii_name="apiId")
4366
4465
  def api_id(self) -> builtins.str:
4367
- '''AppSync Api Id that this Channel Namespace belongs to.'''
4466
+ '''The ``Api`` ID.'''
4368
4467
  return typing.cast(builtins.str, jsii.get(self, "apiId"))
4369
4468
 
4370
4469
  @api_id.setter
@@ -4377,7 +4476,7 @@ class CfnChannelNamespace(
4377
4476
  @builtins.property
4378
4477
  @jsii.member(jsii_name="name")
4379
4478
  def name(self) -> builtins.str:
4380
- '''Namespace indentifier.'''
4479
+ '''The name of the channel namespace.'''
4381
4480
  return typing.cast(builtins.str, jsii.get(self, "name"))
4382
4481
 
4383
4482
  @name.setter
@@ -4390,7 +4489,7 @@ class CfnChannelNamespace(
4390
4489
  @builtins.property
4391
4490
  @jsii.member(jsii_name="codeHandlers")
4392
4491
  def code_handlers(self) -> typing.Optional[builtins.str]:
4393
- '''String of APPSYNC_JS code to be used by the handlers.'''
4492
+ '''The event handler functions that run custom business logic to process published events and subscribe requests.'''
4394
4493
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "codeHandlers"))
4395
4494
 
4396
4495
  @code_handlers.setter
@@ -4418,6 +4517,7 @@ class CfnChannelNamespace(
4418
4517
  def publish_auth_modes(
4419
4518
  self,
4420
4519
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnChannelNamespace.AuthModeProperty"]]]]:
4520
+ '''The authorization mode to use for publishing messages on the channel namespace.'''
4421
4521
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnChannelNamespace.AuthModeProperty"]]]], jsii.get(self, "publishAuthModes"))
4422
4522
 
4423
4523
  @publish_auth_modes.setter
@@ -4435,6 +4535,7 @@ class CfnChannelNamespace(
4435
4535
  def subscribe_auth_modes(
4436
4536
  self,
4437
4537
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnChannelNamespace.AuthModeProperty"]]]]:
4538
+ '''The authorization mode to use for subscribing to messages on the channel namespace.'''
4438
4539
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnChannelNamespace.AuthModeProperty"]]]], jsii.get(self, "subscribeAuthModes"))
4439
4540
 
4440
4541
  @subscribe_auth_modes.setter
@@ -4450,7 +4551,7 @@ class CfnChannelNamespace(
4450
4551
  @builtins.property
4451
4552
  @jsii.member(jsii_name="tags")
4452
4553
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4453
- '''An arbitrary set of tags (key-value pairs) for this AppSync API.'''
4554
+ '''A set of tags (key-value pairs) for this channel namespace.'''
4454
4555
  return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
4455
4556
 
4456
4557
  @tags.setter
@@ -4467,9 +4568,11 @@ class CfnChannelNamespace(
4467
4568
  )
4468
4569
  class AuthModeProperty:
4469
4570
  def __init__(self, *, auth_type: typing.Optional[builtins.str] = None) -> None:
4470
- '''An auth mode.
4571
+ '''Describes an authorization configuration.
4471
4572
 
4472
- :param auth_type: Security configuration for your AppSync API.
4573
+ Use ``AuthMode`` to specify the publishing and subscription authorization configuration for an Event API.
4574
+
4575
+ :param auth_type: The authorization type.
4473
4576
 
4474
4577
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-channelnamespace-authmode.html
4475
4578
  :exampleMetadata: fixture=_generated
@@ -4493,7 +4596,7 @@ class CfnChannelNamespace(
4493
4596
 
4494
4597
  @builtins.property
4495
4598
  def auth_type(self) -> typing.Optional[builtins.str]:
4496
- '''Security configuration for your AppSync API.
4599
+ '''The authorization type.
4497
4600
 
4498
4601
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-channelnamespace-authmode.html#cfn-appsync-channelnamespace-authmode-authtype
4499
4602
  '''
@@ -4539,13 +4642,13 @@ class CfnChannelNamespaceProps:
4539
4642
  ) -> None:
4540
4643
  '''Properties for defining a ``CfnChannelNamespace``.
4541
4644
 
4542
- :param api_id: AppSync Api Id that this Channel Namespace belongs to.
4543
- :param name: Namespace indentifier.
4544
- :param code_handlers: String of APPSYNC_JS code to be used by the handlers.
4645
+ :param api_id: The ``Api`` ID.
4646
+ :param name: The name of the channel namespace. This name must be unique within the ``Api`` .
4647
+ :param code_handlers: The event handler functions that run custom business logic to process published events and subscribe requests.
4545
4648
  :param code_s3_location: The Amazon S3 endpoint where the code is located.
4546
- :param publish_auth_modes:
4547
- :param subscribe_auth_modes:
4548
- :param tags: An arbitrary set of tags (key-value pairs) for this AppSync API.
4649
+ :param publish_auth_modes: The authorization mode to use for publishing messages on the channel namespace. This configuration overrides the default ``Api`` authorization configuration.
4650
+ :param subscribe_auth_modes: The authorization mode to use for subscribing to messages on the channel namespace. This configuration overrides the default ``Api`` authorization configuration.
4651
+ :param tags: A set of tags (key-value pairs) for this channel namespace.
4549
4652
 
4550
4653
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html
4551
4654
  :exampleMetadata: fixture=_generated
@@ -4601,7 +4704,7 @@ class CfnChannelNamespaceProps:
4601
4704
 
4602
4705
  @builtins.property
4603
4706
  def api_id(self) -> builtins.str:
4604
- '''AppSync Api Id that this Channel Namespace belongs to.
4707
+ '''The ``Api`` ID.
4605
4708
 
4606
4709
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html#cfn-appsync-channelnamespace-apiid
4607
4710
  '''
@@ -4611,7 +4714,9 @@ class CfnChannelNamespaceProps:
4611
4714
 
4612
4715
  @builtins.property
4613
4716
  def name(self) -> builtins.str:
4614
- '''Namespace indentifier.
4717
+ '''The name of the channel namespace.
4718
+
4719
+ This name must be unique within the ``Api`` .
4615
4720
 
4616
4721
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html#cfn-appsync-channelnamespace-name
4617
4722
  '''
@@ -4621,7 +4726,7 @@ class CfnChannelNamespaceProps:
4621
4726
 
4622
4727
  @builtins.property
4623
4728
  def code_handlers(self) -> typing.Optional[builtins.str]:
4624
- '''String of APPSYNC_JS code to be used by the handlers.
4729
+ '''The event handler functions that run custom business logic to process published events and subscribe requests.
4625
4730
 
4626
4731
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html#cfn-appsync-channelnamespace-codehandlers
4627
4732
  '''
@@ -4641,7 +4746,10 @@ class CfnChannelNamespaceProps:
4641
4746
  def publish_auth_modes(
4642
4747
  self,
4643
4748
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnChannelNamespace.AuthModeProperty]]]]:
4644
- '''
4749
+ '''The authorization mode to use for publishing messages on the channel namespace.
4750
+
4751
+ This configuration overrides the default ``Api`` authorization configuration.
4752
+
4645
4753
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html#cfn-appsync-channelnamespace-publishauthmodes
4646
4754
  '''
4647
4755
  result = self._values.get("publish_auth_modes")
@@ -4651,7 +4759,10 @@ class CfnChannelNamespaceProps:
4651
4759
  def subscribe_auth_modes(
4652
4760
  self,
4653
4761
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnChannelNamespace.AuthModeProperty]]]]:
4654
- '''
4762
+ '''The authorization mode to use for subscribing to messages on the channel namespace.
4763
+
4764
+ This configuration overrides the default ``Api`` authorization configuration.
4765
+
4655
4766
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html#cfn-appsync-channelnamespace-subscribeauthmodes
4656
4767
  '''
4657
4768
  result = self._values.get("subscribe_auth_modes")
@@ -4659,7 +4770,7 @@ class CfnChannelNamespaceProps:
4659
4770
 
4660
4771
  @builtins.property
4661
4772
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4662
- '''An arbitrary set of tags (key-value pairs) for this AppSync API.
4773
+ '''A set of tags (key-value pairs) for this channel namespace.
4663
4774
 
4664
4775
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-channelnamespace.html#cfn-appsync-channelnamespace-tags
4665
4776
  '''
@@ -11345,6 +11456,7 @@ class Code(metaclass=jsii.JSIIAbstractClass, jsii_type="aws-cdk-lib.aws_appsync.
11345
11456
  *,
11346
11457
  deploy_time: typing.Optional[builtins.bool] = None,
11347
11458
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
11459
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
11348
11460
  asset_hash: typing.Optional[builtins.str] = None,
11349
11461
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
11350
11462
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -11357,6 +11469,7 @@ class Code(metaclass=jsii.JSIIAbstractClass, jsii_type="aws-cdk-lib.aws_appsync.
11357
11469
  :param path: The path to the source code file.
11358
11470
  :param deploy_time: Whether or not the asset needs to exist beyond deployment time; i.e. are copied over to a different location and not needed afterwards. Setting this property to true has an impact on the lifecycle of the asset, because we will assume that it is safe to delete after the CloudFormation deployment succeeds. For example, Lambda Function assets are copied over to Lambda during deployment. Therefore, it is not necessary to store the asset in S3, so we consider those deployTime assets. Default: false
11359
11471
  :param readers: A list of principals that should be able to read this asset from S3. You can use ``asset.grantRead(principal)`` to grant read permissions later. Default: - No principals that can read file asset.
11472
+ :param source_kms_key: The ARN of the KMS key used to encrypt the handler code. Default: - the default server-side encryption with Amazon S3 managed keys(SSE-S3) key will be used.
11360
11473
  :param asset_hash: Specify a custom hash for this asset. If ``assetHashType`` is set it must be set to ``AssetHashType.CUSTOM``. For consistency, this custom hash will be SHA256 hashed and encoded as hex. The resulting hash will be the asset hash. NOTE: the hash is used in order to identify a specific revision of the asset, and used for optimizing and caching deployment activities related to this asset such as packaging, uploading to Amazon S3, etc. If you chose to customize the hash, you will need to make sure it is updated every time the asset changes, or otherwise it is possible that some deployments will not be invalidated. Default: - based on ``assetHashType``
11361
11474
  :param asset_hash_type: Specifies the type of hash to calculate for this asset. If ``assetHash`` is configured, this option must be ``undefined`` or ``AssetHashType.CUSTOM``. Default: - the default is ``AssetHashType.SOURCE``, but if ``assetHash`` is explicitly specified this value defaults to ``AssetHashType.CUSTOM``.
11362
11475
  :param bundling: Bundle the asset by executing a command in a Docker container or a custom bundling provider. The asset path will be mounted at ``/asset-input``. The Docker container is responsible for putting content at ``/asset-output``. The content at ``/asset-output`` will be zipped and used as the final asset. Default: - uploaded as-is to S3 if the asset is a regular file or a .zip file, archived into a .zip file and uploaded to S3 otherwise
@@ -11370,6 +11483,7 @@ class Code(metaclass=jsii.JSIIAbstractClass, jsii_type="aws-cdk-lib.aws_appsync.
11370
11483
  options = _AssetOptions_2aa69621(
11371
11484
  deploy_time=deploy_time,
11372
11485
  readers=readers,
11486
+ source_kms_key=source_kms_key,
11373
11487
  asset_hash=asset_hash,
11374
11488
  asset_hash_type=asset_hash_type,
11375
11489
  bundling=bundling,
@@ -16744,9 +16858,11 @@ class AssetCode(
16744
16858
  import aws_cdk as cdk
16745
16859
  from aws_cdk import aws_appsync as appsync
16746
16860
  from aws_cdk import aws_iam as iam
16861
+ from aws_cdk import aws_kms as kms
16747
16862
 
16748
16863
  # docker_image: cdk.DockerImage
16749
16864
  # grantable: iam.IGrantable
16865
+ # key: kms.Key
16750
16866
  # local_bundling: cdk.ILocalBundling
16751
16867
 
16752
16868
  asset_code = appsync.AssetCode("path",
@@ -16782,7 +16898,8 @@ class AssetCode(
16782
16898
  exclude=["exclude"],
16783
16899
  follow_symlinks=cdk.SymlinkFollowMode.NEVER,
16784
16900
  ignore_mode=cdk.IgnoreMode.GLOB,
16785
- readers=[grantable]
16901
+ readers=[grantable],
16902
+ source_kMSKey=key
16786
16903
  )
16787
16904
  '''
16788
16905
 
@@ -16792,6 +16909,7 @@ class AssetCode(
16792
16909
  *,
16793
16910
  deploy_time: typing.Optional[builtins.bool] = None,
16794
16911
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
16912
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
16795
16913
  asset_hash: typing.Optional[builtins.str] = None,
16796
16914
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
16797
16915
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -16803,6 +16921,7 @@ class AssetCode(
16803
16921
  :param path: The path to the asset file.
16804
16922
  :param deploy_time: Whether or not the asset needs to exist beyond deployment time; i.e. are copied over to a different location and not needed afterwards. Setting this property to true has an impact on the lifecycle of the asset, because we will assume that it is safe to delete after the CloudFormation deployment succeeds. For example, Lambda Function assets are copied over to Lambda during deployment. Therefore, it is not necessary to store the asset in S3, so we consider those deployTime assets. Default: false
16805
16923
  :param readers: A list of principals that should be able to read this asset from S3. You can use ``asset.grantRead(principal)`` to grant read permissions later. Default: - No principals that can read file asset.
16924
+ :param source_kms_key: The ARN of the KMS key used to encrypt the handler code. Default: - the default server-side encryption with Amazon S3 managed keys(SSE-S3) key will be used.
16806
16925
  :param asset_hash: Specify a custom hash for this asset. If ``assetHashType`` is set it must be set to ``AssetHashType.CUSTOM``. For consistency, this custom hash will be SHA256 hashed and encoded as hex. The resulting hash will be the asset hash. NOTE: the hash is used in order to identify a specific revision of the asset, and used for optimizing and caching deployment activities related to this asset such as packaging, uploading to Amazon S3, etc. If you chose to customize the hash, you will need to make sure it is updated every time the asset changes, or otherwise it is possible that some deployments will not be invalidated. Default: - based on ``assetHashType``
16807
16926
  :param asset_hash_type: Specifies the type of hash to calculate for this asset. If ``assetHash`` is configured, this option must be ``undefined`` or ``AssetHashType.CUSTOM``. Default: - the default is ``AssetHashType.SOURCE``, but if ``assetHash`` is explicitly specified this value defaults to ``AssetHashType.CUSTOM``.
16808
16927
  :param bundling: Bundle the asset by executing a command in a Docker container or a custom bundling provider. The asset path will be mounted at ``/asset-input``. The Docker container is responsible for putting content at ``/asset-output``. The content at ``/asset-output`` will be zipped and used as the final asset. Default: - uploaded as-is to S3 if the asset is a regular file or a .zip file, archived into a .zip file and uploaded to S3 otherwise
@@ -16816,6 +16935,7 @@ class AssetCode(
16816
16935
  options = _AssetOptions_2aa69621(
16817
16936
  deploy_time=deploy_time,
16818
16937
  readers=readers,
16938
+ source_kms_key=source_kms_key,
16819
16939
  asset_hash=asset_hash,
16820
16940
  asset_hash_type=asset_hash_type,
16821
16941
  bundling=bundling,
@@ -19688,6 +19808,14 @@ def _typecheckingstub__012c8ad0fa2d1afcda68ca532d5e287baa9e170049fe0c4e05e77dab9
19688
19808
  """Type checking stubs"""
19689
19809
  pass
19690
19810
 
19811
+ def _typecheckingstub__312a111f84f5f64be12d3d7c09cc00f4c64e4fe99cd1bf78561ebcfd82084e0c(
19812
+ *,
19813
+ http: typing.Optional[builtins.str] = None,
19814
+ realtime: typing.Optional[builtins.str] = None,
19815
+ ) -> None:
19816
+ """Type checking stubs"""
19817
+ pass
19818
+
19691
19819
  def _typecheckingstub__53f8b01a4596f6e890e45a2870f92278e02fc06e912e096c33920157038135cf(
19692
19820
  *,
19693
19821
  auth_providers: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnApi.AuthProviderProperty, typing.Dict[builtins.str, typing.Any]]]]],
@@ -20991,6 +21119,7 @@ def _typecheckingstub__8eafa9f4fd31cdfcc23e497d115c1733ce980674eb036dad379eb9102
20991
21119
  *,
20992
21120
  deploy_time: typing.Optional[builtins.bool] = None,
20993
21121
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
21122
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
20994
21123
  asset_hash: typing.Optional[builtins.str] = None,
20995
21124
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
20996
21125
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -21726,6 +21855,7 @@ def _typecheckingstub__f64c3b5b60096d2f072c0237f4540425eb18b7539e311bcd346760100
21726
21855
  *,
21727
21856
  deploy_time: typing.Optional[builtins.bool] = None,
21728
21857
  readers: typing.Optional[typing.Sequence[_IGrantable_71c4f5de]] = None,
21858
+ source_kms_key: typing.Optional[_IKey_5f11635f] = None,
21729
21859
  asset_hash: typing.Optional[builtins.str] = None,
21730
21860
  asset_hash_type: typing.Optional[_AssetHashType_05b67f2d] = None,
21731
21861
  bundling: typing.Optional[typing.Union[_BundlingOptions_588cc936, typing.Dict[builtins.str, typing.Any]]] = None,