aws-cdk-lib 2.137.0__py3-none-any.whl → 2.139.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.
- aws_cdk/__init__.py +8 -0
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.137.0.jsii.tgz → aws-cdk-lib@2.139.0.jsii.tgz} +0 -0
- aws_cdk/aws_amplify/__init__.py +29 -113
- aws_cdk/aws_apigateway/__init__.py +29 -16
- aws_cdk/aws_appconfig/__init__.py +315 -77
- aws_cdk/aws_appintegrations/__init__.py +55 -6
- aws_cdk/aws_apprunner/__init__.py +5 -2
- aws_cdk/aws_appsync/__init__.py +400 -13
- aws_cdk/aws_aps/__init__.py +64 -47
- aws_cdk/aws_autoscaling/__init__.py +62 -60
- aws_cdk/aws_b2bi/__init__.py +2 -6
- aws_cdk/aws_backup/__init__.py +53 -57
- aws_cdk/aws_batch/__init__.py +109 -0
- aws_cdk/aws_bcmdataexports/__init__.py +1114 -0
- aws_cdk/aws_bedrock/__init__.py +4144 -0
- aws_cdk/aws_chatbot/__init__.py +6 -4
- aws_cdk/aws_cleanrooms/__init__.py +526 -3
- aws_cdk/aws_cleanroomsml/__init__.py +960 -0
- aws_cdk/aws_cloudtrail/__init__.py +10 -10
- aws_cdk/aws_cloudwatch/__init__.py +244 -8
- aws_cdk/aws_codebuild/__init__.py +27 -22
- aws_cdk/aws_codeconnections/__init__.py +435 -0
- aws_cdk/aws_cognito/__init__.py +175 -79
- aws_cdk/aws_datazone/__init__.py +22 -0
- aws_cdk/aws_deadline/__init__.py +5394 -0
- aws_cdk/aws_dms/__init__.py +2 -4
- aws_cdk/aws_ec2/__init__.py +402 -247
- aws_cdk/aws_ecr/__init__.py +630 -0
- aws_cdk/aws_ecs/__init__.py +361 -20
- aws_cdk/aws_efs/__init__.py +594 -2
- aws_cdk/aws_elasticache/__init__.py +86 -32
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +75 -10
- aws_cdk/aws_emr/__init__.py +2 -2
- aws_cdk/aws_entityresolution/__init__.py +1982 -773
- aws_cdk/aws_events_targets/__init__.py +17 -4
- aws_cdk/aws_globalaccelerator/__init__.py +443 -0
- aws_cdk/aws_iam/__init__.py +1 -2
- aws_cdk/aws_internetmonitor/__init__.py +14 -6
- aws_cdk/aws_ivs/__init__.py +1273 -71
- aws_cdk/aws_kms/__init__.py +44 -0
- aws_cdk/aws_lambda/__init__.py +9 -0
- aws_cdk/aws_mediatailor/__init__.py +41 -0
- aws_cdk/aws_oam/__init__.py +204 -0
- aws_cdk/aws_personalize/__init__.py +8 -6
- aws_cdk/aws_pinpoint/__init__.py +5 -3
- aws_cdk/aws_pipes/__init__.py +5 -1
- aws_cdk/aws_quicksight/__init__.py +12 -6
- aws_cdk/aws_rds/__init__.py +370 -96
- aws_cdk/aws_redshiftserverless/__init__.py +157 -0
- aws_cdk/aws_route53/__init__.py +587 -14
- aws_cdk/aws_sagemaker/__init__.py +233 -2
- aws_cdk/aws_securityhub/__init__.py +4940 -102
- aws_cdk/aws_securitylake/__init__.py +1326 -89
- aws_cdk/aws_ses_actions/__init__.py +155 -0
- aws_cdk/aws_sns/__init__.py +61 -4
- aws_cdk/aws_ssm/__init__.py +5 -2
- aws_cdk/aws_ssmcontacts/__init__.py +11 -4
- aws_cdk/aws_stepfunctions/__init__.py +8 -16
- aws_cdk/aws_stepfunctions_tasks/__init__.py +676 -1
- aws_cdk/aws_timestream/__init__.py +1045 -0
- aws_cdk/aws_transfer/__init__.py +19 -10
- aws_cdk/aws_verifiedpermissions/__init__.py +114 -37
- aws_cdk/aws_wisdom/__init__.py +2 -2
- aws_cdk/aws_workspacesthinclient/__init__.py +8 -8
- aws_cdk/custom_resources/__init__.py +688 -26
- aws_cdk/cx_api/__init__.py +17 -0
- {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/METADATA +3 -3
- {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/RECORD +73 -69
- {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/top_level.txt +0 -0
|
@@ -64,13 +64,282 @@ from .. import (
|
|
|
64
64
|
)
|
|
65
65
|
|
|
66
66
|
|
|
67
|
+
@jsii.implements(_IInspectable_c2943556)
|
|
68
|
+
class CfnAwsLogSource(
|
|
69
|
+
_CfnResource_9df397a6,
|
|
70
|
+
metaclass=jsii.JSIIMeta,
|
|
71
|
+
jsii_type="aws-cdk-lib.aws_securitylake.CfnAwsLogSource",
|
|
72
|
+
):
|
|
73
|
+
'''Adds a natively supported AWS service as an AWS source.
|
|
74
|
+
|
|
75
|
+
Enables source types for member accounts in required AWS Regions, based on the parameters you specify. You can choose any source type in any Region for either accounts that are part of a trusted organization or standalone accounts. Once you add an AWS service as a source, Security Lake starts collecting logs and events from it.
|
|
76
|
+
.. epigraph::
|
|
77
|
+
|
|
78
|
+
If you want to create multiple sources using ``AWS::SecurityLake::AwsLogSource`` , you must use the ``DependsOn`` attribute to create the sources sequentially. With the ``DependsOn`` attribute you can specify that the creation of a specific ``AWSLogSource`` follows another. When you add a ``DependsOn`` attribute to a resource, that resource is created only after the creation of the resource specified in the ``DependsOn`` attribute. For an example, see `Add AWS log sources <https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html#aws-resource-securitylake-awslogsource--examples>`_ .
|
|
79
|
+
|
|
80
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html
|
|
81
|
+
:cloudformationResource: AWS::SecurityLake::AwsLogSource
|
|
82
|
+
:exampleMetadata: fixture=_generated
|
|
83
|
+
|
|
84
|
+
Example::
|
|
85
|
+
|
|
86
|
+
# The code below shows an example of how to instantiate this type.
|
|
87
|
+
# The values are placeholders you should change.
|
|
88
|
+
from aws_cdk import aws_securitylake as securitylake
|
|
89
|
+
|
|
90
|
+
cfn_aws_log_source = securitylake.CfnAwsLogSource(self, "MyCfnAwsLogSource",
|
|
91
|
+
data_lake_arn="dataLakeArn",
|
|
92
|
+
source_name="sourceName",
|
|
93
|
+
source_version="sourceVersion",
|
|
94
|
+
|
|
95
|
+
# the properties below are optional
|
|
96
|
+
accounts=["accounts"]
|
|
97
|
+
)
|
|
98
|
+
'''
|
|
99
|
+
|
|
100
|
+
def __init__(
|
|
101
|
+
self,
|
|
102
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
103
|
+
id: builtins.str,
|
|
104
|
+
*,
|
|
105
|
+
data_lake_arn: builtins.str,
|
|
106
|
+
source_name: builtins.str,
|
|
107
|
+
source_version: builtins.str,
|
|
108
|
+
accounts: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
109
|
+
) -> None:
|
|
110
|
+
'''
|
|
111
|
+
:param scope: Scope in which this resource is defined.
|
|
112
|
+
:param id: Construct identifier for this resource (unique in its scope).
|
|
113
|
+
:param data_lake_arn: The Amazon Resource Name (ARN) used to create the data lake.
|
|
114
|
+
:param source_name: The name for a AWS source. This must be a Regionally unique value. For the list of sources supported by Amazon Security Lake see `Collecting data from AWS services <https://docs.aws.amazon.com//security-lake/latest/userguide/internal-sources.html>`_ in the Amazon Security Lake User Guide.
|
|
115
|
+
:param source_version: The version for a AWS source. For more details about source versions supported by Amazon Security Lake see `OCSF source identification <https://docs.aws.amazon.com//security-lake/latest/userguide/open-cybersecurity-schema-framework.html#ocsf-source-identification>`_ in the Amazon Security Lake User Guide. This must be a Regionally unique value.
|
|
116
|
+
:param accounts: Specify the AWS account information where you want to enable Security Lake.
|
|
117
|
+
'''
|
|
118
|
+
if __debug__:
|
|
119
|
+
type_hints = typing.get_type_hints(_typecheckingstub__c67fc1d68d61ef9dead7d443499c1a142da192386efc06474b3758994937de6b)
|
|
120
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
121
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
122
|
+
props = CfnAwsLogSourceProps(
|
|
123
|
+
data_lake_arn=data_lake_arn,
|
|
124
|
+
source_name=source_name,
|
|
125
|
+
source_version=source_version,
|
|
126
|
+
accounts=accounts,
|
|
127
|
+
)
|
|
128
|
+
|
|
129
|
+
jsii.create(self.__class__, self, [scope, id, props])
|
|
130
|
+
|
|
131
|
+
@jsii.member(jsii_name="inspect")
|
|
132
|
+
def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
|
|
133
|
+
'''Examines the CloudFormation resource and discloses attributes.
|
|
134
|
+
|
|
135
|
+
:param inspector: tree inspector to collect and process attributes.
|
|
136
|
+
'''
|
|
137
|
+
if __debug__:
|
|
138
|
+
type_hints = typing.get_type_hints(_typecheckingstub__2f493097d98865e82cabeeb80dd31577169140709170903a313d3bc579da5bcb)
|
|
139
|
+
check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
|
|
140
|
+
return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
|
|
141
|
+
|
|
142
|
+
@jsii.member(jsii_name="renderProperties")
|
|
143
|
+
def _render_properties(
|
|
144
|
+
self,
|
|
145
|
+
props: typing.Mapping[builtins.str, typing.Any],
|
|
146
|
+
) -> typing.Mapping[builtins.str, typing.Any]:
|
|
147
|
+
'''
|
|
148
|
+
:param props: -
|
|
149
|
+
'''
|
|
150
|
+
if __debug__:
|
|
151
|
+
type_hints = typing.get_type_hints(_typecheckingstub__d4b08275c623e99b1c0cca9f7d97a78cf719804d590ae90e5af151255c42753a)
|
|
152
|
+
check_type(argname="argument props", value=props, expected_type=type_hints["props"])
|
|
153
|
+
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
|
|
154
|
+
|
|
155
|
+
@jsii.python.classproperty
|
|
156
|
+
@jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
|
|
157
|
+
def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
|
|
158
|
+
'''The CloudFormation resource type name for this resource class.'''
|
|
159
|
+
return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
|
|
160
|
+
|
|
161
|
+
@builtins.property
|
|
162
|
+
@jsii.member(jsii_name="cfnProperties")
|
|
163
|
+
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
164
|
+
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
165
|
+
|
|
166
|
+
@builtins.property
|
|
167
|
+
@jsii.member(jsii_name="dataLakeArn")
|
|
168
|
+
def data_lake_arn(self) -> builtins.str:
|
|
169
|
+
'''The Amazon Resource Name (ARN) used to create the data lake.'''
|
|
170
|
+
return typing.cast(builtins.str, jsii.get(self, "dataLakeArn"))
|
|
171
|
+
|
|
172
|
+
@data_lake_arn.setter
|
|
173
|
+
def data_lake_arn(self, value: builtins.str) -> None:
|
|
174
|
+
if __debug__:
|
|
175
|
+
type_hints = typing.get_type_hints(_typecheckingstub__ed09f296c9b906f7011ea796fce3b42122e1c0490eb544e941f5953a5b0f8403)
|
|
176
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
177
|
+
jsii.set(self, "dataLakeArn", value)
|
|
178
|
+
|
|
179
|
+
@builtins.property
|
|
180
|
+
@jsii.member(jsii_name="sourceName")
|
|
181
|
+
def source_name(self) -> builtins.str:
|
|
182
|
+
'''The name for a AWS source.'''
|
|
183
|
+
return typing.cast(builtins.str, jsii.get(self, "sourceName"))
|
|
184
|
+
|
|
185
|
+
@source_name.setter
|
|
186
|
+
def source_name(self, value: builtins.str) -> None:
|
|
187
|
+
if __debug__:
|
|
188
|
+
type_hints = typing.get_type_hints(_typecheckingstub__786699bc5ed670115ad16fc2d5cab658ddb4c20d9afccc0010adb67c796143ba)
|
|
189
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
190
|
+
jsii.set(self, "sourceName", value)
|
|
191
|
+
|
|
192
|
+
@builtins.property
|
|
193
|
+
@jsii.member(jsii_name="sourceVersion")
|
|
194
|
+
def source_version(self) -> builtins.str:
|
|
195
|
+
'''The version for a AWS source.'''
|
|
196
|
+
return typing.cast(builtins.str, jsii.get(self, "sourceVersion"))
|
|
197
|
+
|
|
198
|
+
@source_version.setter
|
|
199
|
+
def source_version(self, value: builtins.str) -> None:
|
|
200
|
+
if __debug__:
|
|
201
|
+
type_hints = typing.get_type_hints(_typecheckingstub__2369f0ca541c99625731d8a7db77fa2a9f1346eab63190644c2695d471ddda46)
|
|
202
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
203
|
+
jsii.set(self, "sourceVersion", value)
|
|
204
|
+
|
|
205
|
+
@builtins.property
|
|
206
|
+
@jsii.member(jsii_name="accounts")
|
|
207
|
+
def accounts(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
208
|
+
'''Specify the AWS account information where you want to enable Security Lake.'''
|
|
209
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "accounts"))
|
|
210
|
+
|
|
211
|
+
@accounts.setter
|
|
212
|
+
def accounts(self, value: typing.Optional[typing.List[builtins.str]]) -> None:
|
|
213
|
+
if __debug__:
|
|
214
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a1f564a49d096390f47538b02cc909d2927202e7d6b998b761aaf21810dcf11c)
|
|
215
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
216
|
+
jsii.set(self, "accounts", value)
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
@jsii.data_type(
|
|
220
|
+
jsii_type="aws-cdk-lib.aws_securitylake.CfnAwsLogSourceProps",
|
|
221
|
+
jsii_struct_bases=[],
|
|
222
|
+
name_mapping={
|
|
223
|
+
"data_lake_arn": "dataLakeArn",
|
|
224
|
+
"source_name": "sourceName",
|
|
225
|
+
"source_version": "sourceVersion",
|
|
226
|
+
"accounts": "accounts",
|
|
227
|
+
},
|
|
228
|
+
)
|
|
229
|
+
class CfnAwsLogSourceProps:
|
|
230
|
+
def __init__(
|
|
231
|
+
self,
|
|
232
|
+
*,
|
|
233
|
+
data_lake_arn: builtins.str,
|
|
234
|
+
source_name: builtins.str,
|
|
235
|
+
source_version: builtins.str,
|
|
236
|
+
accounts: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
237
|
+
) -> None:
|
|
238
|
+
'''Properties for defining a ``CfnAwsLogSource``.
|
|
239
|
+
|
|
240
|
+
:param data_lake_arn: The Amazon Resource Name (ARN) used to create the data lake.
|
|
241
|
+
:param source_name: The name for a AWS source. This must be a Regionally unique value. For the list of sources supported by Amazon Security Lake see `Collecting data from AWS services <https://docs.aws.amazon.com//security-lake/latest/userguide/internal-sources.html>`_ in the Amazon Security Lake User Guide.
|
|
242
|
+
:param source_version: The version for a AWS source. For more details about source versions supported by Amazon Security Lake see `OCSF source identification <https://docs.aws.amazon.com//security-lake/latest/userguide/open-cybersecurity-schema-framework.html#ocsf-source-identification>`_ in the Amazon Security Lake User Guide. This must be a Regionally unique value.
|
|
243
|
+
:param accounts: Specify the AWS account information where you want to enable Security Lake.
|
|
244
|
+
|
|
245
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html
|
|
246
|
+
:exampleMetadata: fixture=_generated
|
|
247
|
+
|
|
248
|
+
Example::
|
|
249
|
+
|
|
250
|
+
# The code below shows an example of how to instantiate this type.
|
|
251
|
+
# The values are placeholders you should change.
|
|
252
|
+
from aws_cdk import aws_securitylake as securitylake
|
|
253
|
+
|
|
254
|
+
cfn_aws_log_source_props = securitylake.CfnAwsLogSourceProps(
|
|
255
|
+
data_lake_arn="dataLakeArn",
|
|
256
|
+
source_name="sourceName",
|
|
257
|
+
source_version="sourceVersion",
|
|
258
|
+
|
|
259
|
+
# the properties below are optional
|
|
260
|
+
accounts=["accounts"]
|
|
261
|
+
)
|
|
262
|
+
'''
|
|
263
|
+
if __debug__:
|
|
264
|
+
type_hints = typing.get_type_hints(_typecheckingstub__56ae11383caeefb7587043503a4fd999d42e30184765bd5e736dcae60c5b3b94)
|
|
265
|
+
check_type(argname="argument data_lake_arn", value=data_lake_arn, expected_type=type_hints["data_lake_arn"])
|
|
266
|
+
check_type(argname="argument source_name", value=source_name, expected_type=type_hints["source_name"])
|
|
267
|
+
check_type(argname="argument source_version", value=source_version, expected_type=type_hints["source_version"])
|
|
268
|
+
check_type(argname="argument accounts", value=accounts, expected_type=type_hints["accounts"])
|
|
269
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
270
|
+
"data_lake_arn": data_lake_arn,
|
|
271
|
+
"source_name": source_name,
|
|
272
|
+
"source_version": source_version,
|
|
273
|
+
}
|
|
274
|
+
if accounts is not None:
|
|
275
|
+
self._values["accounts"] = accounts
|
|
276
|
+
|
|
277
|
+
@builtins.property
|
|
278
|
+
def data_lake_arn(self) -> builtins.str:
|
|
279
|
+
'''The Amazon Resource Name (ARN) used to create the data lake.
|
|
280
|
+
|
|
281
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html#cfn-securitylake-awslogsource-datalakearn
|
|
282
|
+
'''
|
|
283
|
+
result = self._values.get("data_lake_arn")
|
|
284
|
+
assert result is not None, "Required property 'data_lake_arn' is missing"
|
|
285
|
+
return typing.cast(builtins.str, result)
|
|
286
|
+
|
|
287
|
+
@builtins.property
|
|
288
|
+
def source_name(self) -> builtins.str:
|
|
289
|
+
'''The name for a AWS source.
|
|
290
|
+
|
|
291
|
+
This must be a Regionally unique value. For the list of sources supported by Amazon Security Lake see `Collecting data from AWS services <https://docs.aws.amazon.com//security-lake/latest/userguide/internal-sources.html>`_ in the Amazon Security Lake User Guide.
|
|
292
|
+
|
|
293
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html#cfn-securitylake-awslogsource-sourcename
|
|
294
|
+
'''
|
|
295
|
+
result = self._values.get("source_name")
|
|
296
|
+
assert result is not None, "Required property 'source_name' is missing"
|
|
297
|
+
return typing.cast(builtins.str, result)
|
|
298
|
+
|
|
299
|
+
@builtins.property
|
|
300
|
+
def source_version(self) -> builtins.str:
|
|
301
|
+
'''The version for a AWS source.
|
|
302
|
+
|
|
303
|
+
For more details about source versions supported by Amazon Security Lake see `OCSF source identification <https://docs.aws.amazon.com//security-lake/latest/userguide/open-cybersecurity-schema-framework.html#ocsf-source-identification>`_ in the Amazon Security Lake User Guide. This must be a Regionally unique value.
|
|
304
|
+
|
|
305
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html#cfn-securitylake-awslogsource-sourceversion
|
|
306
|
+
'''
|
|
307
|
+
result = self._values.get("source_version")
|
|
308
|
+
assert result is not None, "Required property 'source_version' is missing"
|
|
309
|
+
return typing.cast(builtins.str, result)
|
|
310
|
+
|
|
311
|
+
@builtins.property
|
|
312
|
+
def accounts(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
313
|
+
'''Specify the AWS account information where you want to enable Security Lake.
|
|
314
|
+
|
|
315
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-awslogsource.html#cfn-securitylake-awslogsource-accounts
|
|
316
|
+
'''
|
|
317
|
+
result = self._values.get("accounts")
|
|
318
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
319
|
+
|
|
320
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
321
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
322
|
+
|
|
323
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
324
|
+
return not (rhs == self)
|
|
325
|
+
|
|
326
|
+
def __repr__(self) -> str:
|
|
327
|
+
return "CfnAwsLogSourceProps(%s)" % ", ".join(
|
|
328
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
329
|
+
)
|
|
330
|
+
|
|
331
|
+
|
|
67
332
|
@jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
|
|
68
333
|
class CfnDataLake(
|
|
69
334
|
_CfnResource_9df397a6,
|
|
70
335
|
metaclass=jsii.JSIIMeta,
|
|
71
336
|
jsii_type="aws-cdk-lib.aws_securitylake.CfnDataLake",
|
|
72
337
|
):
|
|
73
|
-
'''
|
|
338
|
+
'''Initializes an Amazon Security Lake instance with the provided (or default) configuration.
|
|
339
|
+
|
|
340
|
+
You can enable Security Lake in AWS Regions with customized settings before enabling log collection in Regions. To specify particular Regions, configure these Regions using the ``configurations`` parameter. If you have already enabled Security Lake in a Region when you call this command, the command will update the Region if you provide new configuration parameters. If you have not already enabled Security Lake in the Region when you call this API, it will set up the data lake in the Region with the specified configurations.
|
|
341
|
+
|
|
342
|
+
When you enable Security Lake , it starts ingesting security data after the ``CreateAwsLogSource`` call. This includes ingesting security data from sources, storing data, and making data accessible to subscribers. Security Lake also enables all the existing settings and resources that it stores or maintains for your AWS account in the current Region, including security log and event data. For more information, see the `Amazon Security Lake User Guide <https://docs.aws.amazon.com//security-lake/latest/userguide/what-is-security-lake.html>`_ .
|
|
74
343
|
|
|
75
344
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html
|
|
76
345
|
:cloudformationResource: AWS::SecurityLake::DataLake
|
|
@@ -121,11 +390,11 @@ class CfnDataLake(
|
|
|
121
390
|
'''
|
|
122
391
|
:param scope: Scope in which this resource is defined.
|
|
123
392
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
124
|
-
:param encryption_configuration: Provides encryption details of Amazon Security Lake object.
|
|
125
|
-
:param lifecycle_configuration:
|
|
126
|
-
:param meta_store_manager_role_arn: The Amazon Resource Name (ARN) used to
|
|
393
|
+
:param encryption_configuration: Provides encryption details of the Amazon Security Lake object.
|
|
394
|
+
:param lifecycle_configuration: You can customize Security Lake to store data in your preferred AWS Regions for your preferred amount of time. Lifecycle management can help you comply with different compliance requirements. For more details, see `Lifecycle management <https://docs.aws.amazon.com//security-lake/latest/userguide/lifecycle-management.html>`_ in the Amazon Security Lake User Guide.
|
|
395
|
+
:param meta_store_manager_role_arn: The Amazon Resource Name (ARN) used to create and update the AWS Glue table. This table contains partitions generated by the ingestion and normalization of AWS log sources and custom sources.
|
|
127
396
|
:param replication_configuration: Provides replication details of Amazon Security Lake object.
|
|
128
|
-
:param tags:
|
|
397
|
+
:param tags: An array of objects, one for each tag to associate with the data lake configuration. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string.
|
|
129
398
|
'''
|
|
130
399
|
if __debug__:
|
|
131
400
|
type_hints = typing.get_type_hints(_typecheckingstub__ff487a50882ee11f396717fb970b445f3274af88108d1c1d390543dfb1fdf534)
|
|
@@ -174,7 +443,7 @@ class CfnDataLake(
|
|
|
174
443
|
@builtins.property
|
|
175
444
|
@jsii.member(jsii_name="attrArn")
|
|
176
445
|
def attr_arn(self) -> builtins.str:
|
|
177
|
-
'''The Amazon Resource Name (ARN)
|
|
446
|
+
'''The Amazon Resource Name (ARN) of the data lake.
|
|
178
447
|
|
|
179
448
|
:cloudformationAttribute: Arn
|
|
180
449
|
'''
|
|
@@ -183,7 +452,7 @@ class CfnDataLake(
|
|
|
183
452
|
@builtins.property
|
|
184
453
|
@jsii.member(jsii_name="attrS3BucketArn")
|
|
185
454
|
def attr_s3_bucket_arn(self) -> builtins.str:
|
|
186
|
-
'''The
|
|
455
|
+
'''The Amazon Resource Name (ARN) of the Amazon S3 bucket.
|
|
187
456
|
|
|
188
457
|
:cloudformationAttribute: S3BucketArn
|
|
189
458
|
'''
|
|
@@ -205,7 +474,7 @@ class CfnDataLake(
|
|
|
205
474
|
def encryption_configuration(
|
|
206
475
|
self,
|
|
207
476
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDataLake.EncryptionConfigurationProperty"]]:
|
|
208
|
-
'''Provides encryption details of Amazon Security Lake object.'''
|
|
477
|
+
'''Provides encryption details of the Amazon Security Lake object.'''
|
|
209
478
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDataLake.EncryptionConfigurationProperty"]], jsii.get(self, "encryptionConfiguration"))
|
|
210
479
|
|
|
211
480
|
@encryption_configuration.setter
|
|
@@ -223,7 +492,7 @@ class CfnDataLake(
|
|
|
223
492
|
def lifecycle_configuration(
|
|
224
493
|
self,
|
|
225
494
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDataLake.LifecycleConfigurationProperty"]]:
|
|
226
|
-
'''
|
|
495
|
+
'''You can customize Security Lake to store data in your preferred AWS Regions for your preferred amount of time.'''
|
|
227
496
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDataLake.LifecycleConfigurationProperty"]], jsii.get(self, "lifecycleConfiguration"))
|
|
228
497
|
|
|
229
498
|
@lifecycle_configuration.setter
|
|
@@ -239,7 +508,7 @@ class CfnDataLake(
|
|
|
239
508
|
@builtins.property
|
|
240
509
|
@jsii.member(jsii_name="metaStoreManagerRoleArn")
|
|
241
510
|
def meta_store_manager_role_arn(self) -> typing.Optional[builtins.str]:
|
|
242
|
-
'''The Amazon Resource Name (ARN) used to
|
|
511
|
+
'''The Amazon Resource Name (ARN) used to create and update the AWS Glue table.'''
|
|
243
512
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "metaStoreManagerRoleArn"))
|
|
244
513
|
|
|
245
514
|
@meta_store_manager_role_arn.setter
|
|
@@ -270,6 +539,7 @@ class CfnDataLake(
|
|
|
270
539
|
@builtins.property
|
|
271
540
|
@jsii.member(jsii_name="tags")
|
|
272
541
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
542
|
+
'''An array of objects, one for each tag to associate with the data lake configuration.'''
|
|
273
543
|
return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
|
|
274
544
|
|
|
275
545
|
@tags.setter
|
|
@@ -286,9 +556,11 @@ class CfnDataLake(
|
|
|
286
556
|
)
|
|
287
557
|
class EncryptionConfigurationProperty:
|
|
288
558
|
def __init__(self, *, kms_key_id: typing.Optional[builtins.str] = None) -> None:
|
|
289
|
-
'''Provides encryption details of Amazon Security Lake object.
|
|
559
|
+
'''Provides encryption details of the Amazon Security Lake object.
|
|
290
560
|
|
|
291
|
-
|
|
561
|
+
The AWS shared responsibility model applies to data protection in Amazon Security Lake . As described in this model, AWS is responsible for protecting the global infrastructure that runs all of the AWS Cloud. You are responsible for maintaining control over your content that is hosted on this infrastructure. For more details, see `Data protection <https://docs.aws.amazon.com//security-lake/latest/userguide/data-protection.html>`_ in the Amazon Security Lake User Guide.
|
|
562
|
+
|
|
563
|
+
:param kms_key_id: The ID of KMS encryption key used by Amazon Security Lake to encrypt the Security Lake object.
|
|
292
564
|
|
|
293
565
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-encryptionconfiguration.html
|
|
294
566
|
:exampleMetadata: fixture=_generated
|
|
@@ -312,7 +584,7 @@ class CfnDataLake(
|
|
|
312
584
|
|
|
313
585
|
@builtins.property
|
|
314
586
|
def kms_key_id(self) -> typing.Optional[builtins.str]:
|
|
315
|
-
'''The
|
|
587
|
+
'''The ID of KMS encryption key used by Amazon Security Lake to encrypt the Security Lake object.
|
|
316
588
|
|
|
317
589
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-encryptionconfiguration.html#cfn-securitylake-datalake-encryptionconfiguration-kmskeyid
|
|
318
590
|
'''
|
|
@@ -337,9 +609,11 @@ class CfnDataLake(
|
|
|
337
609
|
)
|
|
338
610
|
class ExpirationProperty:
|
|
339
611
|
def __init__(self, *, days: typing.Optional[jsii.Number] = None) -> None:
|
|
340
|
-
'''Provides data expiration details of Amazon Security Lake object.
|
|
612
|
+
'''Provides data expiration details of the Amazon Security Lake object.
|
|
613
|
+
|
|
614
|
+
You can specify your preferred Amazon S3 storage class and the time period for S3 objects to stay in that storage class before they expire. For more information about Amazon S3 Lifecycle configurations, see `Managing your storage lifecycle <https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html>`_ in the *Amazon Simple Storage Service User Guide* .
|
|
341
615
|
|
|
342
|
-
:param days:
|
|
616
|
+
:param days: The number of days before data expires in the Amazon Security Lake object.
|
|
343
617
|
|
|
344
618
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-expiration.html
|
|
345
619
|
:exampleMetadata: fixture=_generated
|
|
@@ -363,7 +637,7 @@ class CfnDataLake(
|
|
|
363
637
|
|
|
364
638
|
@builtins.property
|
|
365
639
|
def days(self) -> typing.Optional[jsii.Number]:
|
|
366
|
-
'''
|
|
640
|
+
'''The number of days before data expires in the Amazon Security Lake object.
|
|
367
641
|
|
|
368
642
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-expiration.html#cfn-securitylake-datalake-expiration-days
|
|
369
643
|
'''
|
|
@@ -395,8 +669,15 @@ class CfnDataLake(
|
|
|
395
669
|
) -> None:
|
|
396
670
|
'''Provides lifecycle details of Amazon Security Lake object.
|
|
397
671
|
|
|
398
|
-
|
|
399
|
-
|
|
672
|
+
To manage your data so that it is stored cost effectively, you can configure retention settings for the data. You can specify your preferred Amazon S3 storage class and the time period for Amazon S3 objects to stay in that storage class before they transition to a different storage class or expire. For more information about Amazon S3 Lifecycle configurations, see `Managing your storage lifecycle <https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html>`_ in the *Amazon Simple Storage Service User Guide* .
|
|
673
|
+
|
|
674
|
+
In Security Lake , you specify retention settings at the Region level. For example, you might choose to transition all S3 objects in a specific AWS Region to the ``S3 Standard-IA`` storage class 30 days after they're written to the data lake. The default Amazon S3 storage class is S3 Standard.
|
|
675
|
+
.. epigraph::
|
|
676
|
+
|
|
677
|
+
Security Lake doesn't support Amazon S3 Object Lock. When the data lake buckets are created, S3 Object Lock is disabled by default. Enabling S3 Object Lock with default retention mode interrupts the delivery of normalized log data to the data lake.
|
|
678
|
+
|
|
679
|
+
:param expiration: Provides data expiration details of the Amazon Security Lake object.
|
|
680
|
+
:param transitions: Provides data storage transition details of Amazon Security Lake object. By configuring these settings, you can specify your preferred Amazon S3 storage class and the time period for S3 objects to stay in that storage class before they transition to a different storage class.
|
|
400
681
|
|
|
401
682
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-lifecycleconfiguration.html
|
|
402
683
|
:exampleMetadata: fixture=_generated
|
|
@@ -431,7 +712,7 @@ class CfnDataLake(
|
|
|
431
712
|
def expiration(
|
|
432
713
|
self,
|
|
433
714
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnDataLake.ExpirationProperty"]]:
|
|
434
|
-
'''Provides data expiration details of Amazon Security Lake object.
|
|
715
|
+
'''Provides data expiration details of the Amazon Security Lake object.
|
|
435
716
|
|
|
436
717
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-lifecycleconfiguration.html#cfn-securitylake-datalake-lifecycleconfiguration-expiration
|
|
437
718
|
'''
|
|
@@ -444,6 +725,8 @@ class CfnDataLake(
|
|
|
444
725
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnDataLake.TransitionsProperty"]]]]:
|
|
445
726
|
'''Provides data storage transition details of Amazon Security Lake object.
|
|
446
727
|
|
|
728
|
+
By configuring these settings, you can specify your preferred Amazon S3 storage class and the time period for S3 objects to stay in that storage class before they transition to a different storage class.
|
|
729
|
+
|
|
447
730
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-lifecycleconfiguration.html#cfn-securitylake-datalake-lifecycleconfiguration-transitions
|
|
448
731
|
'''
|
|
449
732
|
result = self._values.get("transitions")
|
|
@@ -472,10 +755,10 @@ class CfnDataLake(
|
|
|
472
755
|
regions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
473
756
|
role_arn: typing.Optional[builtins.str] = None,
|
|
474
757
|
) -> None:
|
|
475
|
-
'''Provides replication details
|
|
758
|
+
'''Provides replication configuration details for objects stored in the Amazon Security Lake data lake.
|
|
476
759
|
|
|
477
|
-
:param regions: Replication enables automatic, asynchronous copying of objects across Amazon S3 buckets.
|
|
478
|
-
:param role_arn: Replication settings for the Amazon S3 buckets. This parameter uses the AWS Identity and Access Management (IAM) role you created that is managed by Security Lake, to ensure the replication setting is correct.
|
|
760
|
+
:param regions: Specifies one or more centralized rollup Regions. The AWS Region specified in the region parameter of the ``CreateDataLake`` or ``UpdateDataLake`` operations contributes data to the rollup Region or Regions specified in this parameter. Replication enables automatic, asynchronous copying of objects across Amazon S3 buckets. S3 buckets that are configured for object replication can be owned by the same AWS account or by different accounts. You can replicate objects to a single destination bucket or to multiple destination buckets. The destination buckets can be in different Regions or within the same Region as the source bucket.
|
|
761
|
+
:param role_arn: Replication settings for the Amazon S3 buckets. This parameter uses the AWS Identity and Access Management (IAM) role you created that is managed by Security Lake , to ensure the replication setting is correct.
|
|
479
762
|
|
|
480
763
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-replicationconfiguration.html
|
|
481
764
|
:exampleMetadata: fixture=_generated
|
|
@@ -503,9 +786,11 @@ class CfnDataLake(
|
|
|
503
786
|
|
|
504
787
|
@builtins.property
|
|
505
788
|
def regions(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
506
|
-
'''
|
|
789
|
+
'''Specifies one or more centralized rollup Regions.
|
|
507
790
|
|
|
508
|
-
|
|
791
|
+
The AWS Region specified in the region parameter of the ``CreateDataLake`` or ``UpdateDataLake`` operations contributes data to the rollup Region or Regions specified in this parameter.
|
|
792
|
+
|
|
793
|
+
Replication enables automatic, asynchronous copying of objects across Amazon S3 buckets. S3 buckets that are configured for object replication can be owned by the same AWS account or by different accounts. You can replicate objects to a single destination bucket or to multiple destination buckets. The destination buckets can be in different Regions or within the same Region as the source bucket.
|
|
509
794
|
|
|
510
795
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-replicationconfiguration.html#cfn-securitylake-datalake-replicationconfiguration-regions
|
|
511
796
|
'''
|
|
@@ -516,7 +801,7 @@ class CfnDataLake(
|
|
|
516
801
|
def role_arn(self) -> typing.Optional[builtins.str]:
|
|
517
802
|
'''Replication settings for the Amazon S3 buckets.
|
|
518
803
|
|
|
519
|
-
This parameter uses the AWS Identity and Access Management (IAM) role you created that is managed by Security Lake, to ensure the replication setting is correct.
|
|
804
|
+
This parameter uses the AWS Identity and Access Management (IAM) role you created that is managed by Security Lake , to ensure the replication setting is correct.
|
|
520
805
|
|
|
521
806
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-replicationconfiguration.html#cfn-securitylake-datalake-replicationconfiguration-rolearn
|
|
522
807
|
'''
|
|
@@ -546,9 +831,12 @@ class CfnDataLake(
|
|
|
546
831
|
days: typing.Optional[jsii.Number] = None,
|
|
547
832
|
storage_class: typing.Optional[builtins.str] = None,
|
|
548
833
|
) -> None:
|
|
549
|
-
'''
|
|
550
|
-
|
|
551
|
-
|
|
834
|
+
'''Provides transition lifecycle details of the Amazon Security Lake object.
|
|
835
|
+
|
|
836
|
+
For more information about Amazon S3 Lifecycle configurations, see `Managing your storage lifecycle <https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html>`_ in the *Amazon Simple Storage Service User Guide* .
|
|
837
|
+
|
|
838
|
+
:param days: The number of days before data transitions to a different S3 Storage Class in the Amazon Security Lake object.
|
|
839
|
+
:param storage_class: The list of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads. The default storage class is S3 Standard.
|
|
552
840
|
|
|
553
841
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-transitions.html
|
|
554
842
|
:exampleMetadata: fixture=_generated
|
|
@@ -576,7 +864,7 @@ class CfnDataLake(
|
|
|
576
864
|
|
|
577
865
|
@builtins.property
|
|
578
866
|
def days(self) -> typing.Optional[jsii.Number]:
|
|
579
|
-
'''
|
|
867
|
+
'''The number of days before data transitions to a different S3 Storage Class in the Amazon Security Lake object.
|
|
580
868
|
|
|
581
869
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-transitions.html#cfn-securitylake-datalake-transitions-days
|
|
582
870
|
'''
|
|
@@ -585,7 +873,9 @@ class CfnDataLake(
|
|
|
585
873
|
|
|
586
874
|
@builtins.property
|
|
587
875
|
def storage_class(self) -> typing.Optional[builtins.str]:
|
|
588
|
-
'''The
|
|
876
|
+
'''The list of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads.
|
|
877
|
+
|
|
878
|
+
The default storage class is S3 Standard.
|
|
589
879
|
|
|
590
880
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-datalake-transitions.html#cfn-securitylake-datalake-transitions-storageclass
|
|
591
881
|
'''
|
|
@@ -627,11 +917,11 @@ class CfnDataLakeProps:
|
|
|
627
917
|
) -> None:
|
|
628
918
|
'''Properties for defining a ``CfnDataLake``.
|
|
629
919
|
|
|
630
|
-
:param encryption_configuration: Provides encryption details of Amazon Security Lake object.
|
|
631
|
-
:param lifecycle_configuration:
|
|
632
|
-
:param meta_store_manager_role_arn: The Amazon Resource Name (ARN) used to
|
|
920
|
+
:param encryption_configuration: Provides encryption details of the Amazon Security Lake object.
|
|
921
|
+
:param lifecycle_configuration: You can customize Security Lake to store data in your preferred AWS Regions for your preferred amount of time. Lifecycle management can help you comply with different compliance requirements. For more details, see `Lifecycle management <https://docs.aws.amazon.com//security-lake/latest/userguide/lifecycle-management.html>`_ in the Amazon Security Lake User Guide.
|
|
922
|
+
:param meta_store_manager_role_arn: The Amazon Resource Name (ARN) used to create and update the AWS Glue table. This table contains partitions generated by the ingestion and normalization of AWS log sources and custom sources.
|
|
633
923
|
:param replication_configuration: Provides replication details of Amazon Security Lake object.
|
|
634
|
-
:param tags:
|
|
924
|
+
:param tags: An array of objects, one for each tag to associate with the data lake configuration. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string.
|
|
635
925
|
|
|
636
926
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html
|
|
637
927
|
:exampleMetadata: fixture=_generated
|
|
@@ -689,7 +979,7 @@ class CfnDataLakeProps:
|
|
|
689
979
|
def encryption_configuration(
|
|
690
980
|
self,
|
|
691
981
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDataLake.EncryptionConfigurationProperty]]:
|
|
692
|
-
'''Provides encryption details of Amazon Security Lake object.
|
|
982
|
+
'''Provides encryption details of the Amazon Security Lake object.
|
|
693
983
|
|
|
694
984
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html#cfn-securitylake-datalake-encryptionconfiguration
|
|
695
985
|
'''
|
|
@@ -700,7 +990,9 @@ class CfnDataLakeProps:
|
|
|
700
990
|
def lifecycle_configuration(
|
|
701
991
|
self,
|
|
702
992
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDataLake.LifecycleConfigurationProperty]]:
|
|
703
|
-
'''
|
|
993
|
+
'''You can customize Security Lake to store data in your preferred AWS Regions for your preferred amount of time.
|
|
994
|
+
|
|
995
|
+
Lifecycle management can help you comply with different compliance requirements. For more details, see `Lifecycle management <https://docs.aws.amazon.com//security-lake/latest/userguide/lifecycle-management.html>`_ in the Amazon Security Lake User Guide.
|
|
704
996
|
|
|
705
997
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html#cfn-securitylake-datalake-lifecycleconfiguration
|
|
706
998
|
'''
|
|
@@ -709,7 +1001,9 @@ class CfnDataLakeProps:
|
|
|
709
1001
|
|
|
710
1002
|
@builtins.property
|
|
711
1003
|
def meta_store_manager_role_arn(self) -> typing.Optional[builtins.str]:
|
|
712
|
-
'''The Amazon Resource Name (ARN) used to
|
|
1004
|
+
'''The Amazon Resource Name (ARN) used to create and update the AWS Glue table.
|
|
1005
|
+
|
|
1006
|
+
This table contains partitions generated by the ingestion and normalization of AWS log sources and custom sources.
|
|
713
1007
|
|
|
714
1008
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html#cfn-securitylake-datalake-metastoremanagerrolearn
|
|
715
1009
|
'''
|
|
@@ -729,7 +1023,10 @@ class CfnDataLakeProps:
|
|
|
729
1023
|
|
|
730
1024
|
@builtins.property
|
|
731
1025
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
732
|
-
'''
|
|
1026
|
+
'''An array of objects, one for each tag to associate with the data lake configuration.
|
|
1027
|
+
|
|
1028
|
+
For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string.
|
|
1029
|
+
|
|
733
1030
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-datalake.html#cfn-securitylake-datalake-tags
|
|
734
1031
|
'''
|
|
735
1032
|
result = self._values.get("tags")
|
|
@@ -747,66 +1044,892 @@ class CfnDataLakeProps:
|
|
|
747
1044
|
)
|
|
748
1045
|
|
|
749
1046
|
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
1047
|
+
@jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
|
|
1048
|
+
class CfnSubscriber(
|
|
1049
|
+
_CfnResource_9df397a6,
|
|
1050
|
+
metaclass=jsii.JSIIMeta,
|
|
1051
|
+
jsii_type="aws-cdk-lib.aws_securitylake.CfnSubscriber",
|
|
1052
|
+
):
|
|
1053
|
+
'''Creates a subscriber for accounts that are already enabled in Amazon Security Lake.
|
|
754
1054
|
|
|
755
|
-
|
|
1055
|
+
You can create a subscriber with access to data in the current AWS Region.
|
|
756
1056
|
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
*,
|
|
761
|
-
encryption_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataLake.EncryptionConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
762
|
-
lifecycle_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataLake.LifecycleConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
763
|
-
meta_store_manager_role_arn: typing.Optional[builtins.str] = None,
|
|
764
|
-
replication_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataLake.ReplicationConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
765
|
-
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
766
|
-
) -> None:
|
|
767
|
-
"""Type checking stubs"""
|
|
768
|
-
pass
|
|
1057
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html
|
|
1058
|
+
:cloudformationResource: AWS::SecurityLake::Subscriber
|
|
1059
|
+
:exampleMetadata: fixture=_generated
|
|
769
1060
|
|
|
770
|
-
|
|
771
|
-
inspector: _TreeInspector_488e0dd5,
|
|
772
|
-
) -> None:
|
|
773
|
-
"""Type checking stubs"""
|
|
774
|
-
pass
|
|
1061
|
+
Example::
|
|
775
1062
|
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
1063
|
+
# The code below shows an example of how to instantiate this type.
|
|
1064
|
+
# The values are placeholders you should change.
|
|
1065
|
+
from aws_cdk import aws_securitylake as securitylake
|
|
1066
|
+
|
|
1067
|
+
cfn_subscriber = securitylake.CfnSubscriber(self, "MyCfnSubscriber",
|
|
1068
|
+
access_types=["accessTypes"],
|
|
1069
|
+
data_lake_arn="dataLakeArn",
|
|
1070
|
+
sources=[securitylake.CfnSubscriber.SourceProperty(
|
|
1071
|
+
aws_log_source=securitylake.CfnSubscriber.AwsLogSourceProperty(
|
|
1072
|
+
source_name="sourceName",
|
|
1073
|
+
source_version="sourceVersion"
|
|
1074
|
+
),
|
|
1075
|
+
custom_log_source=securitylake.CfnSubscriber.CustomLogSourceProperty(
|
|
1076
|
+
source_name="sourceName",
|
|
1077
|
+
source_version="sourceVersion"
|
|
1078
|
+
)
|
|
1079
|
+
)],
|
|
1080
|
+
subscriber_identity=securitylake.CfnSubscriber.SubscriberIdentityProperty(
|
|
1081
|
+
external_id="externalId",
|
|
1082
|
+
principal="principal"
|
|
1083
|
+
),
|
|
1084
|
+
subscriber_name="subscriberName",
|
|
1085
|
+
|
|
1086
|
+
# the properties below are optional
|
|
1087
|
+
subscriber_description="subscriberDescription",
|
|
1088
|
+
tags=[CfnTag(
|
|
1089
|
+
key="key",
|
|
1090
|
+
value="value"
|
|
1091
|
+
)]
|
|
1092
|
+
)
|
|
1093
|
+
'''
|
|
781
1094
|
|
|
782
|
-
def
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
1095
|
+
def __init__(
|
|
1096
|
+
self,
|
|
1097
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
1098
|
+
id: builtins.str,
|
|
1099
|
+
*,
|
|
1100
|
+
access_types: typing.Sequence[builtins.str],
|
|
1101
|
+
data_lake_arn: builtins.str,
|
|
1102
|
+
sources: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnSubscriber.SourceProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
1103
|
+
subscriber_identity: typing.Union[_IResolvable_da3f097b, typing.Union["CfnSubscriber.SubscriberIdentityProperty", typing.Dict[builtins.str, typing.Any]]],
|
|
1104
|
+
subscriber_name: builtins.str,
|
|
1105
|
+
subscriber_description: typing.Optional[builtins.str] = None,
|
|
1106
|
+
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1107
|
+
) -> None:
|
|
1108
|
+
'''
|
|
1109
|
+
:param scope: Scope in which this resource is defined.
|
|
1110
|
+
:param id: Construct identifier for this resource (unique in its scope).
|
|
1111
|
+
:param access_types: You can choose to notify subscribers of new objects with an Amazon Simple Queue Service (Amazon SQS) queue or through messaging to an HTTPS endpoint provided by the subscriber. Subscribers can consume data by directly querying AWS Lake Formation tables in your Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as ``LAKEFORMATION`` .
|
|
1112
|
+
:param data_lake_arn: The Amazon Resource Name (ARN) used to create the data lake.
|
|
1113
|
+
:param sources: Amazon Security Lake supports log and event collection for natively supported AWS services . For more information, see the `Amazon Security Lake User Guide <https://docs.aws.amazon.com//security-lake/latest/userguide/source-management.html>`_ .
|
|
1114
|
+
:param subscriber_identity: The AWS identity used to access your data.
|
|
1115
|
+
:param subscriber_name: The name of your Amazon Security Lake subscriber account.
|
|
1116
|
+
:param subscriber_description: The subscriber descriptions for a subscriber account. The description for a subscriber includes ``subscriberName`` , ``accountID`` , ``externalID`` , and ``subscriberId`` .
|
|
1117
|
+
:param tags: An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string.
|
|
1118
|
+
'''
|
|
1119
|
+
if __debug__:
|
|
1120
|
+
type_hints = typing.get_type_hints(_typecheckingstub__7cfdc1f6a6f3c553e914b6e8b917c7abd1db0a1142db24f189c29526acaaea39)
|
|
1121
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
1122
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
1123
|
+
props = CfnSubscriberProps(
|
|
1124
|
+
access_types=access_types,
|
|
1125
|
+
data_lake_arn=data_lake_arn,
|
|
1126
|
+
sources=sources,
|
|
1127
|
+
subscriber_identity=subscriber_identity,
|
|
1128
|
+
subscriber_name=subscriber_name,
|
|
1129
|
+
subscriber_description=subscriber_description,
|
|
1130
|
+
tags=tags,
|
|
1131
|
+
)
|
|
787
1132
|
|
|
788
|
-
|
|
789
|
-
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDataLake.LifecycleConfigurationProperty]],
|
|
790
|
-
) -> None:
|
|
791
|
-
"""Type checking stubs"""
|
|
792
|
-
pass
|
|
1133
|
+
jsii.create(self.__class__, self, [scope, id, props])
|
|
793
1134
|
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
"""Type checking stubs"""
|
|
798
|
-
pass
|
|
1135
|
+
@jsii.member(jsii_name="inspect")
|
|
1136
|
+
def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
|
|
1137
|
+
'''Examines the CloudFormation resource and discloses attributes.
|
|
799
1138
|
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
1139
|
+
:param inspector: tree inspector to collect and process attributes.
|
|
1140
|
+
'''
|
|
1141
|
+
if __debug__:
|
|
1142
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a8615499628b1f4753ef250f307567474c9df890e5c028af197e02c5372c550c)
|
|
1143
|
+
check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
|
|
1144
|
+
return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
|
|
805
1145
|
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
1146
|
+
@jsii.member(jsii_name="renderProperties")
|
|
1147
|
+
def _render_properties(
|
|
1148
|
+
self,
|
|
1149
|
+
props: typing.Mapping[builtins.str, typing.Any],
|
|
1150
|
+
) -> typing.Mapping[builtins.str, typing.Any]:
|
|
1151
|
+
'''
|
|
1152
|
+
:param props: -
|
|
1153
|
+
'''
|
|
1154
|
+
if __debug__:
|
|
1155
|
+
type_hints = typing.get_type_hints(_typecheckingstub__3790e1b87c269e951008aa5f293e263e93c06977e1eeed2a69dfca58c409514a)
|
|
1156
|
+
check_type(argname="argument props", value=props, expected_type=type_hints["props"])
|
|
1157
|
+
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
|
|
1158
|
+
|
|
1159
|
+
@jsii.python.classproperty
|
|
1160
|
+
@jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
|
|
1161
|
+
def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
|
|
1162
|
+
'''The CloudFormation resource type name for this resource class.'''
|
|
1163
|
+
return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
|
|
1164
|
+
|
|
1165
|
+
@builtins.property
|
|
1166
|
+
@jsii.member(jsii_name="attrResourceShareArn")
|
|
1167
|
+
def attr_resource_share_arn(self) -> builtins.str:
|
|
1168
|
+
'''The Amazon Resource Name (ARN) of the Amazon Security Lake subscriber.
|
|
1169
|
+
|
|
1170
|
+
:cloudformationAttribute: ResourceShareArn
|
|
1171
|
+
'''
|
|
1172
|
+
return typing.cast(builtins.str, jsii.get(self, "attrResourceShareArn"))
|
|
1173
|
+
|
|
1174
|
+
@builtins.property
|
|
1175
|
+
@jsii.member(jsii_name="attrResourceShareName")
|
|
1176
|
+
def attr_resource_share_name(self) -> builtins.str:
|
|
1177
|
+
'''The ARN name of the Amazon Security Lake subscriber.
|
|
1178
|
+
|
|
1179
|
+
:cloudformationAttribute: ResourceShareName
|
|
1180
|
+
'''
|
|
1181
|
+
return typing.cast(builtins.str, jsii.get(self, "attrResourceShareName"))
|
|
1182
|
+
|
|
1183
|
+
@builtins.property
|
|
1184
|
+
@jsii.member(jsii_name="attrS3BucketArn")
|
|
1185
|
+
def attr_s3_bucket_arn(self) -> builtins.str:
|
|
1186
|
+
'''The Amazon Resource Name (ARN) of the S3 bucket.
|
|
1187
|
+
|
|
1188
|
+
:cloudformationAttribute: S3BucketArn
|
|
1189
|
+
'''
|
|
1190
|
+
return typing.cast(builtins.str, jsii.get(self, "attrS3BucketArn"))
|
|
1191
|
+
|
|
1192
|
+
@builtins.property
|
|
1193
|
+
@jsii.member(jsii_name="attrSubscriberArn")
|
|
1194
|
+
def attr_subscriber_arn(self) -> builtins.str:
|
|
1195
|
+
'''The Amazon Resource Name (ARN) of the Security Lake subscriber.
|
|
1196
|
+
|
|
1197
|
+
:cloudformationAttribute: SubscriberArn
|
|
1198
|
+
'''
|
|
1199
|
+
return typing.cast(builtins.str, jsii.get(self, "attrSubscriberArn"))
|
|
1200
|
+
|
|
1201
|
+
@builtins.property
|
|
1202
|
+
@jsii.member(jsii_name="attrSubscriberRoleArn")
|
|
1203
|
+
def attr_subscriber_role_arn(self) -> builtins.str:
|
|
1204
|
+
'''The Amazon Resource Name (ARN) of the role used to create the Security Lake subscriber.
|
|
1205
|
+
|
|
1206
|
+
:cloudformationAttribute: SubscriberRoleArn
|
|
1207
|
+
'''
|
|
1208
|
+
return typing.cast(builtins.str, jsii.get(self, "attrSubscriberRoleArn"))
|
|
1209
|
+
|
|
1210
|
+
@builtins.property
|
|
1211
|
+
@jsii.member(jsii_name="cdkTagManager")
|
|
1212
|
+
def cdk_tag_manager(self) -> _TagManager_0a598cb3:
|
|
1213
|
+
'''Tag Manager which manages the tags for this resource.'''
|
|
1214
|
+
return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
|
|
1215
|
+
|
|
1216
|
+
@builtins.property
|
|
1217
|
+
@jsii.member(jsii_name="cfnProperties")
|
|
1218
|
+
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
1219
|
+
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
1220
|
+
|
|
1221
|
+
@builtins.property
|
|
1222
|
+
@jsii.member(jsii_name="accessTypes")
|
|
1223
|
+
def access_types(self) -> typing.List[builtins.str]:
|
|
1224
|
+
'''You can choose to notify subscribers of new objects with an Amazon Simple Queue Service (Amazon SQS) queue or through messaging to an HTTPS endpoint provided by the subscriber.'''
|
|
1225
|
+
return typing.cast(typing.List[builtins.str], jsii.get(self, "accessTypes"))
|
|
1226
|
+
|
|
1227
|
+
@access_types.setter
|
|
1228
|
+
def access_types(self, value: typing.List[builtins.str]) -> None:
|
|
1229
|
+
if __debug__:
|
|
1230
|
+
type_hints = typing.get_type_hints(_typecheckingstub__3f5e7268ca27d6f9f4f7235ed5dc11031e3dcfecbb97acb334a181ffa62b0550)
|
|
1231
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
1232
|
+
jsii.set(self, "accessTypes", value)
|
|
1233
|
+
|
|
1234
|
+
@builtins.property
|
|
1235
|
+
@jsii.member(jsii_name="dataLakeArn")
|
|
1236
|
+
def data_lake_arn(self) -> builtins.str:
|
|
1237
|
+
'''The Amazon Resource Name (ARN) used to create the data lake.'''
|
|
1238
|
+
return typing.cast(builtins.str, jsii.get(self, "dataLakeArn"))
|
|
1239
|
+
|
|
1240
|
+
@data_lake_arn.setter
|
|
1241
|
+
def data_lake_arn(self, value: builtins.str) -> None:
|
|
1242
|
+
if __debug__:
|
|
1243
|
+
type_hints = typing.get_type_hints(_typecheckingstub__6b6df05258f367a78b9fe1e83d93bbb4170db63eebfcfcaf47743e3795fdea19)
|
|
1244
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
1245
|
+
jsii.set(self, "dataLakeArn", value)
|
|
1246
|
+
|
|
1247
|
+
@builtins.property
|
|
1248
|
+
@jsii.member(jsii_name="sources")
|
|
1249
|
+
def sources(
|
|
1250
|
+
self,
|
|
1251
|
+
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnSubscriber.SourceProperty"]]]:
|
|
1252
|
+
'''Amazon Security Lake supports log and event collection for natively supported AWS services .'''
|
|
1253
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnSubscriber.SourceProperty"]]], jsii.get(self, "sources"))
|
|
1254
|
+
|
|
1255
|
+
@sources.setter
|
|
1256
|
+
def sources(
|
|
1257
|
+
self,
|
|
1258
|
+
value: typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnSubscriber.SourceProperty"]]],
|
|
1259
|
+
) -> None:
|
|
1260
|
+
if __debug__:
|
|
1261
|
+
type_hints = typing.get_type_hints(_typecheckingstub__bc932de85d8e0823efeb32cd9962639ee0df5d9caf72a0cc1bd8a74abd3853f1)
|
|
1262
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
1263
|
+
jsii.set(self, "sources", value)
|
|
1264
|
+
|
|
1265
|
+
@builtins.property
|
|
1266
|
+
@jsii.member(jsii_name="subscriberIdentity")
|
|
1267
|
+
def subscriber_identity(
|
|
1268
|
+
self,
|
|
1269
|
+
) -> typing.Union[_IResolvable_da3f097b, "CfnSubscriber.SubscriberIdentityProperty"]:
|
|
1270
|
+
'''The AWS identity used to access your data.'''
|
|
1271
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnSubscriber.SubscriberIdentityProperty"], jsii.get(self, "subscriberIdentity"))
|
|
1272
|
+
|
|
1273
|
+
@subscriber_identity.setter
|
|
1274
|
+
def subscriber_identity(
|
|
1275
|
+
self,
|
|
1276
|
+
value: typing.Union[_IResolvable_da3f097b, "CfnSubscriber.SubscriberIdentityProperty"],
|
|
1277
|
+
) -> None:
|
|
1278
|
+
if __debug__:
|
|
1279
|
+
type_hints = typing.get_type_hints(_typecheckingstub__844ac1bd9005c05fc49f39ac053da7c40f778e558a2e4cf96983161b114d88a7)
|
|
1280
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
1281
|
+
jsii.set(self, "subscriberIdentity", value)
|
|
1282
|
+
|
|
1283
|
+
@builtins.property
|
|
1284
|
+
@jsii.member(jsii_name="subscriberName")
|
|
1285
|
+
def subscriber_name(self) -> builtins.str:
|
|
1286
|
+
'''The name of your Amazon Security Lake subscriber account.'''
|
|
1287
|
+
return typing.cast(builtins.str, jsii.get(self, "subscriberName"))
|
|
1288
|
+
|
|
1289
|
+
@subscriber_name.setter
|
|
1290
|
+
def subscriber_name(self, value: builtins.str) -> None:
|
|
1291
|
+
if __debug__:
|
|
1292
|
+
type_hints = typing.get_type_hints(_typecheckingstub__cd9beb9187d8345c4ae00d2ee6483cd5f3841d1801dffe9de561ed1934ddd965)
|
|
1293
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
1294
|
+
jsii.set(self, "subscriberName", value)
|
|
1295
|
+
|
|
1296
|
+
@builtins.property
|
|
1297
|
+
@jsii.member(jsii_name="subscriberDescription")
|
|
1298
|
+
def subscriber_description(self) -> typing.Optional[builtins.str]:
|
|
1299
|
+
'''The subscriber descriptions for a subscriber account.'''
|
|
1300
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "subscriberDescription"))
|
|
1301
|
+
|
|
1302
|
+
@subscriber_description.setter
|
|
1303
|
+
def subscriber_description(self, value: typing.Optional[builtins.str]) -> None:
|
|
1304
|
+
if __debug__:
|
|
1305
|
+
type_hints = typing.get_type_hints(_typecheckingstub__3147cb4779ff5832faddc8bdeac62a5ff6db17ddc1eddee78b4f5ca463a0ed76)
|
|
1306
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
1307
|
+
jsii.set(self, "subscriberDescription", value)
|
|
1308
|
+
|
|
1309
|
+
@builtins.property
|
|
1310
|
+
@jsii.member(jsii_name="tags")
|
|
1311
|
+
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
1312
|
+
'''An array of objects, one for each tag to associate with the subscriber.'''
|
|
1313
|
+
return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
|
|
1314
|
+
|
|
1315
|
+
@tags.setter
|
|
1316
|
+
def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
|
|
1317
|
+
if __debug__:
|
|
1318
|
+
type_hints = typing.get_type_hints(_typecheckingstub__b8f06145c3b30c94dc03a8f547df3132c6f47f465dc815eb5282aab9542906c1)
|
|
1319
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
1320
|
+
jsii.set(self, "tags", value)
|
|
1321
|
+
|
|
1322
|
+
@jsii.data_type(
|
|
1323
|
+
jsii_type="aws-cdk-lib.aws_securitylake.CfnSubscriber.AwsLogSourceProperty",
|
|
1324
|
+
jsii_struct_bases=[],
|
|
1325
|
+
name_mapping={"source_name": "sourceName", "source_version": "sourceVersion"},
|
|
1326
|
+
)
|
|
1327
|
+
class AwsLogSourceProperty:
|
|
1328
|
+
def __init__(
|
|
1329
|
+
self,
|
|
1330
|
+
*,
|
|
1331
|
+
source_name: typing.Optional[builtins.str] = None,
|
|
1332
|
+
source_version: typing.Optional[builtins.str] = None,
|
|
1333
|
+
) -> None:
|
|
1334
|
+
'''Adds a natively supported AWS service as an Amazon Security Lake source.
|
|
1335
|
+
|
|
1336
|
+
Enables source types for member accounts in required AWS Regions, based on the parameters you specify. You can choose any source type in any Region for either accounts that are part of a trusted organization or standalone accounts. Once you add an AWS service as a source, Security Lake starts collecting logs and events from it.
|
|
1337
|
+
|
|
1338
|
+
:param source_name: Source name of the natively supported AWS service that is supported as an Amazon Security Lake source. For the list of sources supported by Amazon Security Lake see `Collecting data from AWS services <https://docs.aws.amazon.com//security-lake/latest/userguide/internal-sources.html>`_ in the Amazon Security Lake User Guide.
|
|
1339
|
+
:param source_version: Source version of the natively supported AWS service that is supported as an Amazon Security Lake source. For more details about source versions supported by Amazon Security Lake see `OCSF source identification <https://docs.aws.amazon.com//security-lake/latest/userguide/open-cybersecurity-schema-framework.html#ocsf-source-identification>`_ in the Amazon Security Lake User Guide.
|
|
1340
|
+
|
|
1341
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-awslogsource.html
|
|
1342
|
+
:exampleMetadata: fixture=_generated
|
|
1343
|
+
|
|
1344
|
+
Example::
|
|
1345
|
+
|
|
1346
|
+
# The code below shows an example of how to instantiate this type.
|
|
1347
|
+
# The values are placeholders you should change.
|
|
1348
|
+
from aws_cdk import aws_securitylake as securitylake
|
|
1349
|
+
|
|
1350
|
+
aws_log_source_property = securitylake.CfnSubscriber.AwsLogSourceProperty(
|
|
1351
|
+
source_name="sourceName",
|
|
1352
|
+
source_version="sourceVersion"
|
|
1353
|
+
)
|
|
1354
|
+
'''
|
|
1355
|
+
if __debug__:
|
|
1356
|
+
type_hints = typing.get_type_hints(_typecheckingstub__f7b68bdff72d0a83be28cc208139e37398a7b328722b97984e752440b8b9b167)
|
|
1357
|
+
check_type(argname="argument source_name", value=source_name, expected_type=type_hints["source_name"])
|
|
1358
|
+
check_type(argname="argument source_version", value=source_version, expected_type=type_hints["source_version"])
|
|
1359
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1360
|
+
if source_name is not None:
|
|
1361
|
+
self._values["source_name"] = source_name
|
|
1362
|
+
if source_version is not None:
|
|
1363
|
+
self._values["source_version"] = source_version
|
|
1364
|
+
|
|
1365
|
+
@builtins.property
|
|
1366
|
+
def source_name(self) -> typing.Optional[builtins.str]:
|
|
1367
|
+
'''Source name of the natively supported AWS service that is supported as an Amazon Security Lake source.
|
|
1368
|
+
|
|
1369
|
+
For the list of sources supported by Amazon Security Lake see `Collecting data from AWS services <https://docs.aws.amazon.com//security-lake/latest/userguide/internal-sources.html>`_ in the Amazon Security Lake User Guide.
|
|
1370
|
+
|
|
1371
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-awslogsource.html#cfn-securitylake-subscriber-awslogsource-sourcename
|
|
1372
|
+
'''
|
|
1373
|
+
result = self._values.get("source_name")
|
|
1374
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1375
|
+
|
|
1376
|
+
@builtins.property
|
|
1377
|
+
def source_version(self) -> typing.Optional[builtins.str]:
|
|
1378
|
+
'''Source version of the natively supported AWS service that is supported as an Amazon Security Lake source.
|
|
1379
|
+
|
|
1380
|
+
For more details about source versions supported by Amazon Security Lake see `OCSF source identification <https://docs.aws.amazon.com//security-lake/latest/userguide/open-cybersecurity-schema-framework.html#ocsf-source-identification>`_ in the Amazon Security Lake User Guide.
|
|
1381
|
+
|
|
1382
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-awslogsource.html#cfn-securitylake-subscriber-awslogsource-sourceversion
|
|
1383
|
+
'''
|
|
1384
|
+
result = self._values.get("source_version")
|
|
1385
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1386
|
+
|
|
1387
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1388
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1389
|
+
|
|
1390
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1391
|
+
return not (rhs == self)
|
|
1392
|
+
|
|
1393
|
+
def __repr__(self) -> str:
|
|
1394
|
+
return "AwsLogSourceProperty(%s)" % ", ".join(
|
|
1395
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1396
|
+
)
|
|
1397
|
+
|
|
1398
|
+
@jsii.data_type(
|
|
1399
|
+
jsii_type="aws-cdk-lib.aws_securitylake.CfnSubscriber.CustomLogSourceProperty",
|
|
1400
|
+
jsii_struct_bases=[],
|
|
1401
|
+
name_mapping={"source_name": "sourceName", "source_version": "sourceVersion"},
|
|
1402
|
+
)
|
|
1403
|
+
class CustomLogSourceProperty:
|
|
1404
|
+
def __init__(
|
|
1405
|
+
self,
|
|
1406
|
+
*,
|
|
1407
|
+
source_name: typing.Optional[builtins.str] = None,
|
|
1408
|
+
source_version: typing.Optional[builtins.str] = None,
|
|
1409
|
+
) -> None:
|
|
1410
|
+
'''Third-party custom log source that meets the requirements to be added to Amazon Security Lake .
|
|
1411
|
+
|
|
1412
|
+
For more details, see `Custom log source <https://docs.aws.amazon.com//security-lake/latest/userguide/custom-sources.html#iam-roles-custom-sources>`_ in the *Amazon Security Lake User Guide* .
|
|
1413
|
+
|
|
1414
|
+
:param source_name: The name of the custom log source.
|
|
1415
|
+
:param source_version: The source version of the custom log source.
|
|
1416
|
+
|
|
1417
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-customlogsource.html
|
|
1418
|
+
:exampleMetadata: fixture=_generated
|
|
1419
|
+
|
|
1420
|
+
Example::
|
|
1421
|
+
|
|
1422
|
+
# The code below shows an example of how to instantiate this type.
|
|
1423
|
+
# The values are placeholders you should change.
|
|
1424
|
+
from aws_cdk import aws_securitylake as securitylake
|
|
1425
|
+
|
|
1426
|
+
custom_log_source_property = securitylake.CfnSubscriber.CustomLogSourceProperty(
|
|
1427
|
+
source_name="sourceName",
|
|
1428
|
+
source_version="sourceVersion"
|
|
1429
|
+
)
|
|
1430
|
+
'''
|
|
1431
|
+
if __debug__:
|
|
1432
|
+
type_hints = typing.get_type_hints(_typecheckingstub__be7ff1808e2250d74fc3f0286676c85a2ac63ab562fb09265ceb5138256bdb3a)
|
|
1433
|
+
check_type(argname="argument source_name", value=source_name, expected_type=type_hints["source_name"])
|
|
1434
|
+
check_type(argname="argument source_version", value=source_version, expected_type=type_hints["source_version"])
|
|
1435
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1436
|
+
if source_name is not None:
|
|
1437
|
+
self._values["source_name"] = source_name
|
|
1438
|
+
if source_version is not None:
|
|
1439
|
+
self._values["source_version"] = source_version
|
|
1440
|
+
|
|
1441
|
+
@builtins.property
|
|
1442
|
+
def source_name(self) -> typing.Optional[builtins.str]:
|
|
1443
|
+
'''The name of the custom log source.
|
|
1444
|
+
|
|
1445
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-customlogsource.html#cfn-securitylake-subscriber-customlogsource-sourcename
|
|
1446
|
+
'''
|
|
1447
|
+
result = self._values.get("source_name")
|
|
1448
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1449
|
+
|
|
1450
|
+
@builtins.property
|
|
1451
|
+
def source_version(self) -> typing.Optional[builtins.str]:
|
|
1452
|
+
'''The source version of the custom log source.
|
|
1453
|
+
|
|
1454
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-customlogsource.html#cfn-securitylake-subscriber-customlogsource-sourceversion
|
|
1455
|
+
'''
|
|
1456
|
+
result = self._values.get("source_version")
|
|
1457
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1458
|
+
|
|
1459
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1460
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1461
|
+
|
|
1462
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1463
|
+
return not (rhs == self)
|
|
1464
|
+
|
|
1465
|
+
def __repr__(self) -> str:
|
|
1466
|
+
return "CustomLogSourceProperty(%s)" % ", ".join(
|
|
1467
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1468
|
+
)
|
|
1469
|
+
|
|
1470
|
+
@jsii.data_type(
|
|
1471
|
+
jsii_type="aws-cdk-lib.aws_securitylake.CfnSubscriber.SourceProperty",
|
|
1472
|
+
jsii_struct_bases=[],
|
|
1473
|
+
name_mapping={
|
|
1474
|
+
"aws_log_source": "awsLogSource",
|
|
1475
|
+
"custom_log_source": "customLogSource",
|
|
1476
|
+
},
|
|
1477
|
+
)
|
|
1478
|
+
class SourceProperty:
|
|
1479
|
+
def __init__(
|
|
1480
|
+
self,
|
|
1481
|
+
*,
|
|
1482
|
+
aws_log_source: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnSubscriber.AwsLogSourceProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1483
|
+
custom_log_source: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnSubscriber.CustomLogSourceProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1484
|
+
) -> None:
|
|
1485
|
+
'''Sources are logs and events generated from a single system that match a specific event class in the Open Cybersecurity Schema Framework (OCSF) schema.
|
|
1486
|
+
|
|
1487
|
+
Amazon Security Lake can collect logs and events from a variety of sources, including natively supported AWS services and third-party custom sources.
|
|
1488
|
+
|
|
1489
|
+
:param aws_log_source: The natively supported AWS service which is used a Amazon Security Lake source to collect logs and events from.
|
|
1490
|
+
:param custom_log_source: The custom log source AWS which is used a Amazon Security Lake source to collect logs and events from.
|
|
1491
|
+
|
|
1492
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-source.html
|
|
1493
|
+
:exampleMetadata: fixture=_generated
|
|
1494
|
+
|
|
1495
|
+
Example::
|
|
1496
|
+
|
|
1497
|
+
# The code below shows an example of how to instantiate this type.
|
|
1498
|
+
# The values are placeholders you should change.
|
|
1499
|
+
from aws_cdk import aws_securitylake as securitylake
|
|
1500
|
+
|
|
1501
|
+
source_property = securitylake.CfnSubscriber.SourceProperty(
|
|
1502
|
+
aws_log_source=securitylake.CfnSubscriber.AwsLogSourceProperty(
|
|
1503
|
+
source_name="sourceName",
|
|
1504
|
+
source_version="sourceVersion"
|
|
1505
|
+
),
|
|
1506
|
+
custom_log_source=securitylake.CfnSubscriber.CustomLogSourceProperty(
|
|
1507
|
+
source_name="sourceName",
|
|
1508
|
+
source_version="sourceVersion"
|
|
1509
|
+
)
|
|
1510
|
+
)
|
|
1511
|
+
'''
|
|
1512
|
+
if __debug__:
|
|
1513
|
+
type_hints = typing.get_type_hints(_typecheckingstub__09624bc0a82e7efd60186ff6e6eeff97f2daca3d7d705b8e7e3451a7add8d126)
|
|
1514
|
+
check_type(argname="argument aws_log_source", value=aws_log_source, expected_type=type_hints["aws_log_source"])
|
|
1515
|
+
check_type(argname="argument custom_log_source", value=custom_log_source, expected_type=type_hints["custom_log_source"])
|
|
1516
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1517
|
+
if aws_log_source is not None:
|
|
1518
|
+
self._values["aws_log_source"] = aws_log_source
|
|
1519
|
+
if custom_log_source is not None:
|
|
1520
|
+
self._values["custom_log_source"] = custom_log_source
|
|
1521
|
+
|
|
1522
|
+
@builtins.property
|
|
1523
|
+
def aws_log_source(
|
|
1524
|
+
self,
|
|
1525
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnSubscriber.AwsLogSourceProperty"]]:
|
|
1526
|
+
'''The natively supported AWS service which is used a Amazon Security Lake source to collect logs and events from.
|
|
1527
|
+
|
|
1528
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-source.html#cfn-securitylake-subscriber-source-awslogsource
|
|
1529
|
+
'''
|
|
1530
|
+
result = self._values.get("aws_log_source")
|
|
1531
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnSubscriber.AwsLogSourceProperty"]], result)
|
|
1532
|
+
|
|
1533
|
+
@builtins.property
|
|
1534
|
+
def custom_log_source(
|
|
1535
|
+
self,
|
|
1536
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnSubscriber.CustomLogSourceProperty"]]:
|
|
1537
|
+
'''The custom log source AWS which is used a Amazon Security Lake source to collect logs and events from.
|
|
1538
|
+
|
|
1539
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-source.html#cfn-securitylake-subscriber-source-customlogsource
|
|
1540
|
+
'''
|
|
1541
|
+
result = self._values.get("custom_log_source")
|
|
1542
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnSubscriber.CustomLogSourceProperty"]], result)
|
|
1543
|
+
|
|
1544
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1545
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1546
|
+
|
|
1547
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1548
|
+
return not (rhs == self)
|
|
1549
|
+
|
|
1550
|
+
def __repr__(self) -> str:
|
|
1551
|
+
return "SourceProperty(%s)" % ", ".join(
|
|
1552
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1553
|
+
)
|
|
1554
|
+
|
|
1555
|
+
@jsii.data_type(
|
|
1556
|
+
jsii_type="aws-cdk-lib.aws_securitylake.CfnSubscriber.SubscriberIdentityProperty",
|
|
1557
|
+
jsii_struct_bases=[],
|
|
1558
|
+
name_mapping={"external_id": "externalId", "principal": "principal"},
|
|
1559
|
+
)
|
|
1560
|
+
class SubscriberIdentityProperty:
|
|
1561
|
+
def __init__(
|
|
1562
|
+
self,
|
|
1563
|
+
*,
|
|
1564
|
+
external_id: builtins.str,
|
|
1565
|
+
principal: builtins.str,
|
|
1566
|
+
) -> None:
|
|
1567
|
+
'''Specify the AWS account ID and external ID that the subscriber will use to access source data.
|
|
1568
|
+
|
|
1569
|
+
:param external_id: The external ID is a unique identifier that the subscriber provides to you.
|
|
1570
|
+
:param principal: Principals can include accounts, users, roles, federated users, or AWS services.
|
|
1571
|
+
|
|
1572
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-subscriberidentity.html
|
|
1573
|
+
:exampleMetadata: fixture=_generated
|
|
1574
|
+
|
|
1575
|
+
Example::
|
|
1576
|
+
|
|
1577
|
+
# The code below shows an example of how to instantiate this type.
|
|
1578
|
+
# The values are placeholders you should change.
|
|
1579
|
+
from aws_cdk import aws_securitylake as securitylake
|
|
1580
|
+
|
|
1581
|
+
subscriber_identity_property = securitylake.CfnSubscriber.SubscriberIdentityProperty(
|
|
1582
|
+
external_id="externalId",
|
|
1583
|
+
principal="principal"
|
|
1584
|
+
)
|
|
1585
|
+
'''
|
|
1586
|
+
if __debug__:
|
|
1587
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a2dd3305d7b56ebd933e9b9e7b243865a7a5c734ed08bef308334f82a70d692e)
|
|
1588
|
+
check_type(argname="argument external_id", value=external_id, expected_type=type_hints["external_id"])
|
|
1589
|
+
check_type(argname="argument principal", value=principal, expected_type=type_hints["principal"])
|
|
1590
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1591
|
+
"external_id": external_id,
|
|
1592
|
+
"principal": principal,
|
|
1593
|
+
}
|
|
1594
|
+
|
|
1595
|
+
@builtins.property
|
|
1596
|
+
def external_id(self) -> builtins.str:
|
|
1597
|
+
'''The external ID is a unique identifier that the subscriber provides to you.
|
|
1598
|
+
|
|
1599
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-subscriberidentity.html#cfn-securitylake-subscriber-subscriberidentity-externalid
|
|
1600
|
+
'''
|
|
1601
|
+
result = self._values.get("external_id")
|
|
1602
|
+
assert result is not None, "Required property 'external_id' is missing"
|
|
1603
|
+
return typing.cast(builtins.str, result)
|
|
1604
|
+
|
|
1605
|
+
@builtins.property
|
|
1606
|
+
def principal(self) -> builtins.str:
|
|
1607
|
+
'''Principals can include accounts, users, roles, federated users, or AWS services.
|
|
1608
|
+
|
|
1609
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-securitylake-subscriber-subscriberidentity.html#cfn-securitylake-subscriber-subscriberidentity-principal
|
|
1610
|
+
'''
|
|
1611
|
+
result = self._values.get("principal")
|
|
1612
|
+
assert result is not None, "Required property 'principal' is missing"
|
|
1613
|
+
return typing.cast(builtins.str, result)
|
|
1614
|
+
|
|
1615
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1616
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1617
|
+
|
|
1618
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1619
|
+
return not (rhs == self)
|
|
1620
|
+
|
|
1621
|
+
def __repr__(self) -> str:
|
|
1622
|
+
return "SubscriberIdentityProperty(%s)" % ", ".join(
|
|
1623
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1624
|
+
)
|
|
1625
|
+
|
|
1626
|
+
|
|
1627
|
+
@jsii.data_type(
|
|
1628
|
+
jsii_type="aws-cdk-lib.aws_securitylake.CfnSubscriberProps",
|
|
1629
|
+
jsii_struct_bases=[],
|
|
1630
|
+
name_mapping={
|
|
1631
|
+
"access_types": "accessTypes",
|
|
1632
|
+
"data_lake_arn": "dataLakeArn",
|
|
1633
|
+
"sources": "sources",
|
|
1634
|
+
"subscriber_identity": "subscriberIdentity",
|
|
1635
|
+
"subscriber_name": "subscriberName",
|
|
1636
|
+
"subscriber_description": "subscriberDescription",
|
|
1637
|
+
"tags": "tags",
|
|
1638
|
+
},
|
|
1639
|
+
)
|
|
1640
|
+
class CfnSubscriberProps:
|
|
1641
|
+
def __init__(
|
|
1642
|
+
self,
|
|
1643
|
+
*,
|
|
1644
|
+
access_types: typing.Sequence[builtins.str],
|
|
1645
|
+
data_lake_arn: builtins.str,
|
|
1646
|
+
sources: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnSubscriber.SourceProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
1647
|
+
subscriber_identity: typing.Union[_IResolvable_da3f097b, typing.Union[CfnSubscriber.SubscriberIdentityProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
1648
|
+
subscriber_name: builtins.str,
|
|
1649
|
+
subscriber_description: typing.Optional[builtins.str] = None,
|
|
1650
|
+
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1651
|
+
) -> None:
|
|
1652
|
+
'''Properties for defining a ``CfnSubscriber``.
|
|
1653
|
+
|
|
1654
|
+
:param access_types: You can choose to notify subscribers of new objects with an Amazon Simple Queue Service (Amazon SQS) queue or through messaging to an HTTPS endpoint provided by the subscriber. Subscribers can consume data by directly querying AWS Lake Formation tables in your Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as ``LAKEFORMATION`` .
|
|
1655
|
+
:param data_lake_arn: The Amazon Resource Name (ARN) used to create the data lake.
|
|
1656
|
+
:param sources: Amazon Security Lake supports log and event collection for natively supported AWS services . For more information, see the `Amazon Security Lake User Guide <https://docs.aws.amazon.com//security-lake/latest/userguide/source-management.html>`_ .
|
|
1657
|
+
:param subscriber_identity: The AWS identity used to access your data.
|
|
1658
|
+
:param subscriber_name: The name of your Amazon Security Lake subscriber account.
|
|
1659
|
+
:param subscriber_description: The subscriber descriptions for a subscriber account. The description for a subscriber includes ``subscriberName`` , ``accountID`` , ``externalID`` , and ``subscriberId`` .
|
|
1660
|
+
:param tags: An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string.
|
|
1661
|
+
|
|
1662
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html
|
|
1663
|
+
:exampleMetadata: fixture=_generated
|
|
1664
|
+
|
|
1665
|
+
Example::
|
|
1666
|
+
|
|
1667
|
+
# The code below shows an example of how to instantiate this type.
|
|
1668
|
+
# The values are placeholders you should change.
|
|
1669
|
+
from aws_cdk import aws_securitylake as securitylake
|
|
1670
|
+
|
|
1671
|
+
cfn_subscriber_props = securitylake.CfnSubscriberProps(
|
|
1672
|
+
access_types=["accessTypes"],
|
|
1673
|
+
data_lake_arn="dataLakeArn",
|
|
1674
|
+
sources=[securitylake.CfnSubscriber.SourceProperty(
|
|
1675
|
+
aws_log_source=securitylake.CfnSubscriber.AwsLogSourceProperty(
|
|
1676
|
+
source_name="sourceName",
|
|
1677
|
+
source_version="sourceVersion"
|
|
1678
|
+
),
|
|
1679
|
+
custom_log_source=securitylake.CfnSubscriber.CustomLogSourceProperty(
|
|
1680
|
+
source_name="sourceName",
|
|
1681
|
+
source_version="sourceVersion"
|
|
1682
|
+
)
|
|
1683
|
+
)],
|
|
1684
|
+
subscriber_identity=securitylake.CfnSubscriber.SubscriberIdentityProperty(
|
|
1685
|
+
external_id="externalId",
|
|
1686
|
+
principal="principal"
|
|
1687
|
+
),
|
|
1688
|
+
subscriber_name="subscriberName",
|
|
1689
|
+
|
|
1690
|
+
# the properties below are optional
|
|
1691
|
+
subscriber_description="subscriberDescription",
|
|
1692
|
+
tags=[CfnTag(
|
|
1693
|
+
key="key",
|
|
1694
|
+
value="value"
|
|
1695
|
+
)]
|
|
1696
|
+
)
|
|
1697
|
+
'''
|
|
1698
|
+
if __debug__:
|
|
1699
|
+
type_hints = typing.get_type_hints(_typecheckingstub__48b4dffc39d9aeba296ada6ed3b12f7273758033f731faa94da735c639fb2f10)
|
|
1700
|
+
check_type(argname="argument access_types", value=access_types, expected_type=type_hints["access_types"])
|
|
1701
|
+
check_type(argname="argument data_lake_arn", value=data_lake_arn, expected_type=type_hints["data_lake_arn"])
|
|
1702
|
+
check_type(argname="argument sources", value=sources, expected_type=type_hints["sources"])
|
|
1703
|
+
check_type(argname="argument subscriber_identity", value=subscriber_identity, expected_type=type_hints["subscriber_identity"])
|
|
1704
|
+
check_type(argname="argument subscriber_name", value=subscriber_name, expected_type=type_hints["subscriber_name"])
|
|
1705
|
+
check_type(argname="argument subscriber_description", value=subscriber_description, expected_type=type_hints["subscriber_description"])
|
|
1706
|
+
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
1707
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
1708
|
+
"access_types": access_types,
|
|
1709
|
+
"data_lake_arn": data_lake_arn,
|
|
1710
|
+
"sources": sources,
|
|
1711
|
+
"subscriber_identity": subscriber_identity,
|
|
1712
|
+
"subscriber_name": subscriber_name,
|
|
1713
|
+
}
|
|
1714
|
+
if subscriber_description is not None:
|
|
1715
|
+
self._values["subscriber_description"] = subscriber_description
|
|
1716
|
+
if tags is not None:
|
|
1717
|
+
self._values["tags"] = tags
|
|
1718
|
+
|
|
1719
|
+
@builtins.property
|
|
1720
|
+
def access_types(self) -> typing.List[builtins.str]:
|
|
1721
|
+
'''You can choose to notify subscribers of new objects with an Amazon Simple Queue Service (Amazon SQS) queue or through messaging to an HTTPS endpoint provided by the subscriber.
|
|
1722
|
+
|
|
1723
|
+
Subscribers can consume data by directly querying AWS Lake Formation tables in your Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as ``LAKEFORMATION`` .
|
|
1724
|
+
|
|
1725
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html#cfn-securitylake-subscriber-accesstypes
|
|
1726
|
+
'''
|
|
1727
|
+
result = self._values.get("access_types")
|
|
1728
|
+
assert result is not None, "Required property 'access_types' is missing"
|
|
1729
|
+
return typing.cast(typing.List[builtins.str], result)
|
|
1730
|
+
|
|
1731
|
+
@builtins.property
|
|
1732
|
+
def data_lake_arn(self) -> builtins.str:
|
|
1733
|
+
'''The Amazon Resource Name (ARN) used to create the data lake.
|
|
1734
|
+
|
|
1735
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html#cfn-securitylake-subscriber-datalakearn
|
|
1736
|
+
'''
|
|
1737
|
+
result = self._values.get("data_lake_arn")
|
|
1738
|
+
assert result is not None, "Required property 'data_lake_arn' is missing"
|
|
1739
|
+
return typing.cast(builtins.str, result)
|
|
1740
|
+
|
|
1741
|
+
@builtins.property
|
|
1742
|
+
def sources(
|
|
1743
|
+
self,
|
|
1744
|
+
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnSubscriber.SourceProperty]]]:
|
|
1745
|
+
'''Amazon Security Lake supports log and event collection for natively supported AWS services .
|
|
1746
|
+
|
|
1747
|
+
For more information, see the `Amazon Security Lake User Guide <https://docs.aws.amazon.com//security-lake/latest/userguide/source-management.html>`_ .
|
|
1748
|
+
|
|
1749
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html#cfn-securitylake-subscriber-sources
|
|
1750
|
+
'''
|
|
1751
|
+
result = self._values.get("sources")
|
|
1752
|
+
assert result is not None, "Required property 'sources' is missing"
|
|
1753
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnSubscriber.SourceProperty]]], result)
|
|
1754
|
+
|
|
1755
|
+
@builtins.property
|
|
1756
|
+
def subscriber_identity(
|
|
1757
|
+
self,
|
|
1758
|
+
) -> typing.Union[_IResolvable_da3f097b, CfnSubscriber.SubscriberIdentityProperty]:
|
|
1759
|
+
'''The AWS identity used to access your data.
|
|
1760
|
+
|
|
1761
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html#cfn-securitylake-subscriber-subscriberidentity
|
|
1762
|
+
'''
|
|
1763
|
+
result = self._values.get("subscriber_identity")
|
|
1764
|
+
assert result is not None, "Required property 'subscriber_identity' is missing"
|
|
1765
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, CfnSubscriber.SubscriberIdentityProperty], result)
|
|
1766
|
+
|
|
1767
|
+
@builtins.property
|
|
1768
|
+
def subscriber_name(self) -> builtins.str:
|
|
1769
|
+
'''The name of your Amazon Security Lake subscriber account.
|
|
1770
|
+
|
|
1771
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html#cfn-securitylake-subscriber-subscribername
|
|
1772
|
+
'''
|
|
1773
|
+
result = self._values.get("subscriber_name")
|
|
1774
|
+
assert result is not None, "Required property 'subscriber_name' is missing"
|
|
1775
|
+
return typing.cast(builtins.str, result)
|
|
1776
|
+
|
|
1777
|
+
@builtins.property
|
|
1778
|
+
def subscriber_description(self) -> typing.Optional[builtins.str]:
|
|
1779
|
+
'''The subscriber descriptions for a subscriber account.
|
|
1780
|
+
|
|
1781
|
+
The description for a subscriber includes ``subscriberName`` , ``accountID`` , ``externalID`` , and ``subscriberId`` .
|
|
1782
|
+
|
|
1783
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html#cfn-securitylake-subscriber-subscriberdescription
|
|
1784
|
+
'''
|
|
1785
|
+
result = self._values.get("subscriber_description")
|
|
1786
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
1787
|
+
|
|
1788
|
+
@builtins.property
|
|
1789
|
+
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
1790
|
+
'''An array of objects, one for each tag to associate with the subscriber.
|
|
1791
|
+
|
|
1792
|
+
For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string.
|
|
1793
|
+
|
|
1794
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-securitylake-subscriber.html#cfn-securitylake-subscriber-tags
|
|
1795
|
+
'''
|
|
1796
|
+
result = self._values.get("tags")
|
|
1797
|
+
return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
|
|
1798
|
+
|
|
1799
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1800
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1801
|
+
|
|
1802
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
1803
|
+
return not (rhs == self)
|
|
1804
|
+
|
|
1805
|
+
def __repr__(self) -> str:
|
|
1806
|
+
return "CfnSubscriberProps(%s)" % ", ".join(
|
|
1807
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
1808
|
+
)
|
|
1809
|
+
|
|
1810
|
+
|
|
1811
|
+
__all__ = [
|
|
1812
|
+
"CfnAwsLogSource",
|
|
1813
|
+
"CfnAwsLogSourceProps",
|
|
1814
|
+
"CfnDataLake",
|
|
1815
|
+
"CfnDataLakeProps",
|
|
1816
|
+
"CfnSubscriber",
|
|
1817
|
+
"CfnSubscriberProps",
|
|
1818
|
+
]
|
|
1819
|
+
|
|
1820
|
+
publication.publish()
|
|
1821
|
+
|
|
1822
|
+
def _typecheckingstub__c67fc1d68d61ef9dead7d443499c1a142da192386efc06474b3758994937de6b(
|
|
1823
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
1824
|
+
id: builtins.str,
|
|
1825
|
+
*,
|
|
1826
|
+
data_lake_arn: builtins.str,
|
|
1827
|
+
source_name: builtins.str,
|
|
1828
|
+
source_version: builtins.str,
|
|
1829
|
+
accounts: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1830
|
+
) -> None:
|
|
1831
|
+
"""Type checking stubs"""
|
|
1832
|
+
pass
|
|
1833
|
+
|
|
1834
|
+
def _typecheckingstub__2f493097d98865e82cabeeb80dd31577169140709170903a313d3bc579da5bcb(
|
|
1835
|
+
inspector: _TreeInspector_488e0dd5,
|
|
1836
|
+
) -> None:
|
|
1837
|
+
"""Type checking stubs"""
|
|
1838
|
+
pass
|
|
1839
|
+
|
|
1840
|
+
def _typecheckingstub__d4b08275c623e99b1c0cca9f7d97a78cf719804d590ae90e5af151255c42753a(
|
|
1841
|
+
props: typing.Mapping[builtins.str, typing.Any],
|
|
1842
|
+
) -> None:
|
|
1843
|
+
"""Type checking stubs"""
|
|
1844
|
+
pass
|
|
1845
|
+
|
|
1846
|
+
def _typecheckingstub__ed09f296c9b906f7011ea796fce3b42122e1c0490eb544e941f5953a5b0f8403(
|
|
1847
|
+
value: builtins.str,
|
|
1848
|
+
) -> None:
|
|
1849
|
+
"""Type checking stubs"""
|
|
1850
|
+
pass
|
|
1851
|
+
|
|
1852
|
+
def _typecheckingstub__786699bc5ed670115ad16fc2d5cab658ddb4c20d9afccc0010adb67c796143ba(
|
|
1853
|
+
value: builtins.str,
|
|
1854
|
+
) -> None:
|
|
1855
|
+
"""Type checking stubs"""
|
|
1856
|
+
pass
|
|
1857
|
+
|
|
1858
|
+
def _typecheckingstub__2369f0ca541c99625731d8a7db77fa2a9f1346eab63190644c2695d471ddda46(
|
|
1859
|
+
value: builtins.str,
|
|
1860
|
+
) -> None:
|
|
1861
|
+
"""Type checking stubs"""
|
|
1862
|
+
pass
|
|
1863
|
+
|
|
1864
|
+
def _typecheckingstub__a1f564a49d096390f47538b02cc909d2927202e7d6b998b761aaf21810dcf11c(
|
|
1865
|
+
value: typing.Optional[typing.List[builtins.str]],
|
|
1866
|
+
) -> None:
|
|
1867
|
+
"""Type checking stubs"""
|
|
1868
|
+
pass
|
|
1869
|
+
|
|
1870
|
+
def _typecheckingstub__56ae11383caeefb7587043503a4fd999d42e30184765bd5e736dcae60c5b3b94(
|
|
1871
|
+
*,
|
|
1872
|
+
data_lake_arn: builtins.str,
|
|
1873
|
+
source_name: builtins.str,
|
|
1874
|
+
source_version: builtins.str,
|
|
1875
|
+
accounts: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1876
|
+
) -> None:
|
|
1877
|
+
"""Type checking stubs"""
|
|
1878
|
+
pass
|
|
1879
|
+
|
|
1880
|
+
def _typecheckingstub__ff487a50882ee11f396717fb970b445f3274af88108d1c1d390543dfb1fdf534(
|
|
1881
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
1882
|
+
id: builtins.str,
|
|
1883
|
+
*,
|
|
1884
|
+
encryption_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataLake.EncryptionConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1885
|
+
lifecycle_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataLake.LifecycleConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1886
|
+
meta_store_manager_role_arn: typing.Optional[builtins.str] = None,
|
|
1887
|
+
replication_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataLake.ReplicationConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1888
|
+
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1889
|
+
) -> None:
|
|
1890
|
+
"""Type checking stubs"""
|
|
1891
|
+
pass
|
|
1892
|
+
|
|
1893
|
+
def _typecheckingstub__0d7a1c25528114b19a22f7fe9e5b4213f46c37e16f22245bc3dc38ad34fc7ef6(
|
|
1894
|
+
inspector: _TreeInspector_488e0dd5,
|
|
1895
|
+
) -> None:
|
|
1896
|
+
"""Type checking stubs"""
|
|
1897
|
+
pass
|
|
1898
|
+
|
|
1899
|
+
def _typecheckingstub__eb852df583c773c6f5d30c27afae6f598c8606ae40f25dd1885d8fbf5013661b(
|
|
1900
|
+
props: typing.Mapping[builtins.str, typing.Any],
|
|
1901
|
+
) -> None:
|
|
1902
|
+
"""Type checking stubs"""
|
|
1903
|
+
pass
|
|
1904
|
+
|
|
1905
|
+
def _typecheckingstub__12edf08ab82b633325fe7034b3424955ea7bff566dfa00928107723a5d0f6a72(
|
|
1906
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDataLake.EncryptionConfigurationProperty]],
|
|
1907
|
+
) -> None:
|
|
1908
|
+
"""Type checking stubs"""
|
|
1909
|
+
pass
|
|
1910
|
+
|
|
1911
|
+
def _typecheckingstub__916659d1bcdf1d6d40de689f3b334b766e1a8fb681a493926742e61ce5ba40b7(
|
|
1912
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDataLake.LifecycleConfigurationProperty]],
|
|
1913
|
+
) -> None:
|
|
1914
|
+
"""Type checking stubs"""
|
|
1915
|
+
pass
|
|
1916
|
+
|
|
1917
|
+
def _typecheckingstub__23cd82335763114e4ff9c52f4ff2b4db4b4be68cc8f5b468e1325fa0e0e79558(
|
|
1918
|
+
value: typing.Optional[builtins.str],
|
|
1919
|
+
) -> None:
|
|
1920
|
+
"""Type checking stubs"""
|
|
1921
|
+
pass
|
|
1922
|
+
|
|
1923
|
+
def _typecheckingstub__647257bd68002b29a89b3128d4883d0c748e98d2c70a5b154446993271225230(
|
|
1924
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDataLake.ReplicationConfigurationProperty]],
|
|
1925
|
+
) -> None:
|
|
1926
|
+
"""Type checking stubs"""
|
|
1927
|
+
pass
|
|
1928
|
+
|
|
1929
|
+
def _typecheckingstub__6654ce3b2fa02feedc8f03797f96ae7270d4bd79ef3c3791b522e8277fa3798c(
|
|
1930
|
+
value: typing.Optional[typing.List[_CfnTag_f6864754]],
|
|
1931
|
+
) -> None:
|
|
1932
|
+
"""Type checking stubs"""
|
|
810
1933
|
pass
|
|
811
1934
|
|
|
812
1935
|
def _typecheckingstub__c697088167e83d968076432c9f71877137655465afc625784270e3ba40d3f57b(
|
|
@@ -857,3 +1980,117 @@ def _typecheckingstub__f98044af937b493e98dc654fc28cbeccbd1ee2f339cd00c1cc5905684
|
|
|
857
1980
|
) -> None:
|
|
858
1981
|
"""Type checking stubs"""
|
|
859
1982
|
pass
|
|
1983
|
+
|
|
1984
|
+
def _typecheckingstub__7cfdc1f6a6f3c553e914b6e8b917c7abd1db0a1142db24f189c29526acaaea39(
|
|
1985
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
1986
|
+
id: builtins.str,
|
|
1987
|
+
*,
|
|
1988
|
+
access_types: typing.Sequence[builtins.str],
|
|
1989
|
+
data_lake_arn: builtins.str,
|
|
1990
|
+
sources: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnSubscriber.SourceProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
1991
|
+
subscriber_identity: typing.Union[_IResolvable_da3f097b, typing.Union[CfnSubscriber.SubscriberIdentityProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
1992
|
+
subscriber_name: builtins.str,
|
|
1993
|
+
subscriber_description: typing.Optional[builtins.str] = None,
|
|
1994
|
+
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1995
|
+
) -> None:
|
|
1996
|
+
"""Type checking stubs"""
|
|
1997
|
+
pass
|
|
1998
|
+
|
|
1999
|
+
def _typecheckingstub__a8615499628b1f4753ef250f307567474c9df890e5c028af197e02c5372c550c(
|
|
2000
|
+
inspector: _TreeInspector_488e0dd5,
|
|
2001
|
+
) -> None:
|
|
2002
|
+
"""Type checking stubs"""
|
|
2003
|
+
pass
|
|
2004
|
+
|
|
2005
|
+
def _typecheckingstub__3790e1b87c269e951008aa5f293e263e93c06977e1eeed2a69dfca58c409514a(
|
|
2006
|
+
props: typing.Mapping[builtins.str, typing.Any],
|
|
2007
|
+
) -> None:
|
|
2008
|
+
"""Type checking stubs"""
|
|
2009
|
+
pass
|
|
2010
|
+
|
|
2011
|
+
def _typecheckingstub__3f5e7268ca27d6f9f4f7235ed5dc11031e3dcfecbb97acb334a181ffa62b0550(
|
|
2012
|
+
value: typing.List[builtins.str],
|
|
2013
|
+
) -> None:
|
|
2014
|
+
"""Type checking stubs"""
|
|
2015
|
+
pass
|
|
2016
|
+
|
|
2017
|
+
def _typecheckingstub__6b6df05258f367a78b9fe1e83d93bbb4170db63eebfcfcaf47743e3795fdea19(
|
|
2018
|
+
value: builtins.str,
|
|
2019
|
+
) -> None:
|
|
2020
|
+
"""Type checking stubs"""
|
|
2021
|
+
pass
|
|
2022
|
+
|
|
2023
|
+
def _typecheckingstub__bc932de85d8e0823efeb32cd9962639ee0df5d9caf72a0cc1bd8a74abd3853f1(
|
|
2024
|
+
value: typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnSubscriber.SourceProperty]]],
|
|
2025
|
+
) -> None:
|
|
2026
|
+
"""Type checking stubs"""
|
|
2027
|
+
pass
|
|
2028
|
+
|
|
2029
|
+
def _typecheckingstub__844ac1bd9005c05fc49f39ac053da7c40f778e558a2e4cf96983161b114d88a7(
|
|
2030
|
+
value: typing.Union[_IResolvable_da3f097b, CfnSubscriber.SubscriberIdentityProperty],
|
|
2031
|
+
) -> None:
|
|
2032
|
+
"""Type checking stubs"""
|
|
2033
|
+
pass
|
|
2034
|
+
|
|
2035
|
+
def _typecheckingstub__cd9beb9187d8345c4ae00d2ee6483cd5f3841d1801dffe9de561ed1934ddd965(
|
|
2036
|
+
value: builtins.str,
|
|
2037
|
+
) -> None:
|
|
2038
|
+
"""Type checking stubs"""
|
|
2039
|
+
pass
|
|
2040
|
+
|
|
2041
|
+
def _typecheckingstub__3147cb4779ff5832faddc8bdeac62a5ff6db17ddc1eddee78b4f5ca463a0ed76(
|
|
2042
|
+
value: typing.Optional[builtins.str],
|
|
2043
|
+
) -> None:
|
|
2044
|
+
"""Type checking stubs"""
|
|
2045
|
+
pass
|
|
2046
|
+
|
|
2047
|
+
def _typecheckingstub__b8f06145c3b30c94dc03a8f547df3132c6f47f465dc815eb5282aab9542906c1(
|
|
2048
|
+
value: typing.Optional[typing.List[_CfnTag_f6864754]],
|
|
2049
|
+
) -> None:
|
|
2050
|
+
"""Type checking stubs"""
|
|
2051
|
+
pass
|
|
2052
|
+
|
|
2053
|
+
def _typecheckingstub__f7b68bdff72d0a83be28cc208139e37398a7b328722b97984e752440b8b9b167(
|
|
2054
|
+
*,
|
|
2055
|
+
source_name: typing.Optional[builtins.str] = None,
|
|
2056
|
+
source_version: typing.Optional[builtins.str] = None,
|
|
2057
|
+
) -> None:
|
|
2058
|
+
"""Type checking stubs"""
|
|
2059
|
+
pass
|
|
2060
|
+
|
|
2061
|
+
def _typecheckingstub__be7ff1808e2250d74fc3f0286676c85a2ac63ab562fb09265ceb5138256bdb3a(
|
|
2062
|
+
*,
|
|
2063
|
+
source_name: typing.Optional[builtins.str] = None,
|
|
2064
|
+
source_version: typing.Optional[builtins.str] = None,
|
|
2065
|
+
) -> None:
|
|
2066
|
+
"""Type checking stubs"""
|
|
2067
|
+
pass
|
|
2068
|
+
|
|
2069
|
+
def _typecheckingstub__09624bc0a82e7efd60186ff6e6eeff97f2daca3d7d705b8e7e3451a7add8d126(
|
|
2070
|
+
*,
|
|
2071
|
+
aws_log_source: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnSubscriber.AwsLogSourceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2072
|
+
custom_log_source: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnSubscriber.CustomLogSourceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2073
|
+
) -> None:
|
|
2074
|
+
"""Type checking stubs"""
|
|
2075
|
+
pass
|
|
2076
|
+
|
|
2077
|
+
def _typecheckingstub__a2dd3305d7b56ebd933e9b9e7b243865a7a5c734ed08bef308334f82a70d692e(
|
|
2078
|
+
*,
|
|
2079
|
+
external_id: builtins.str,
|
|
2080
|
+
principal: builtins.str,
|
|
2081
|
+
) -> None:
|
|
2082
|
+
"""Type checking stubs"""
|
|
2083
|
+
pass
|
|
2084
|
+
|
|
2085
|
+
def _typecheckingstub__48b4dffc39d9aeba296ada6ed3b12f7273758033f731faa94da735c639fb2f10(
|
|
2086
|
+
*,
|
|
2087
|
+
access_types: typing.Sequence[builtins.str],
|
|
2088
|
+
data_lake_arn: builtins.str,
|
|
2089
|
+
sources: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnSubscriber.SourceProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
2090
|
+
subscriber_identity: typing.Union[_IResolvable_da3f097b, typing.Union[CfnSubscriber.SubscriberIdentityProperty, typing.Dict[builtins.str, typing.Any]]],
|
|
2091
|
+
subscriber_name: builtins.str,
|
|
2092
|
+
subscriber_description: typing.Optional[builtins.str] = None,
|
|
2093
|
+
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2094
|
+
) -> None:
|
|
2095
|
+
"""Type checking stubs"""
|
|
2096
|
+
pass
|