Table of Contents
SecurityLake.
Client
¶A low-level client representing Amazon Security Lake
Note
Amazon Security Lake is in preview release. Your use of the Amazon Security Lake preview is subject to Section 2 of the Amazon Web Services Service Terms ("Betas and Previews").
Amazon Security Lake is a fully-managed security data lake service. You can use Security Lake to automatically centralize security data from cloud, on-premises, and custom sources into a data lake that's stored in your account. Security Lake helps you analyze security data, so you can get a more complete understanding of your security posture across the entire organization and improve the protection of your workloads, applications, and data.
The data lake is backed by Amazon Simple Storage Service (Amazon S3) buckets, and you retain ownership over your data.
Security Lake automates the collection of security-related log and event data from integrated Amazon Web Services. and third-party services and manages the lifecycle of data with customizable retention and replication settings. Security Lake also converts ingested data into Apache Parquet format and a standard open-source schema called the Open Cybersecurity Schema Framework (OCSF).
Other Amazon Web Services and third-party services can subscribe to the data that's stored in Security Lake for incident response and security data analytics.
import boto3
client = boto3.client('securitylake')
These are the available methods:
can_paginate()
close()
create_aws_log_source()
create_custom_log_source()
create_datalake()
create_datalake_auto_enable()
create_datalake_delegated_admin()
create_datalake_exceptions_subscription()
create_subscriber()
create_subscription_notification_configuration()
delete_aws_log_source()
delete_custom_log_source()
delete_datalake()
delete_datalake_auto_enable()
delete_datalake_delegated_admin()
delete_datalake_exceptions_subscription()
delete_subscriber()
delete_subscription_notification_configuration()
get_datalake()
get_datalake_auto_enable()
get_datalake_exceptions_expiry()
get_datalake_exceptions_subscription()
get_datalake_status()
get_paginator()
get_subscriber()
get_waiter()
list_datalake_exceptions()
list_log_sources()
list_subscribers()
update_datalake()
update_datalake_exceptions_expiry()
update_datalake_exceptions_subscription()
update_subscriber()
update_subscription_notification_configuration()
can_paginate
(operation_name)¶Check if an operation can be paginated.
create_foo
, and you'd normally invoke the
operation as client.create_foo(**kwargs)
, if the
create_foo
operation can be paginated, you can use the
call client.get_paginator("create_foo")
.True
if the operation can be paginated,
False
otherwise.close
()¶Closes underlying endpoint connections.
create_aws_log_source
(**kwargs)¶Adds a natively-supported Amazon Web Services service as a Security Lake source. Enables source types for member accounts in required Regions, based on specified parameters. You can choose any source type in any Region for accounts that are either part of a trusted organization or standalone accounts. At least one of the three dimensions is a mandatory input to this API. However, any combination of the three dimensions can be supplied to this API.
By default, dimension refers to the entire set. When you don't provide a dimension, Security Lake assumes that the missing dimension refers to the entire set. This is overridden when you supply any one of the inputs. For instance, when members is not specified, the API disables all Security Lake member accounts for sources. Similarly, when Regions are not specified, Security Lake is disabled for all the Regions where Security Lake is available as a service.
You can use this API only to enable a natively-supported Amazon Web Services services as a source. Use CreateCustomLogSource
to enable data collection from a custom source.
See also: AWS API Documentation
Request Syntax
response = client.create_aws_log_source(
enableAllDimensions={
'string': {
'string': [
'string',
]
}
},
enableSingleDimension=[
'string',
],
enableTwoDimensions={
'string': [
'string',
]
},
inputOrder=[
'REGION'|'SOURCE_TYPE'|'MEMBER',
]
)
Enables specific sources in all Regions and source types.
Enables all sources in specific accounts or Regions.
Enables specific service sources in specific accounts or Regions.
[REQUIRED]
Specifies the input order to enable dimensions in Security Lake, namely region, source type, and member account.
dict
Response Syntax
{
'failed': [
'string',
],
'processing': [
'string',
]
}
Response Structure
(dict) --
failed (list) --
List of all accounts in which enabling a natively-supported Amazon Web Services service as a Security Lake failed. The failure occurred as these accounts are not part of an organization.
processing (list) --
List of all accounts which are in the process of enabling a natively-supported Amazon Web Services service as a Security Lake.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.S3Exception
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
create_custom_log_source
(**kwargs)¶Adds a third-party custom source in Amazon Security Lake, from the Region where you want to create a custom source. Security Lake can collect logs and events from third-party custom sources. After creating the appropriate API roles, use this API to add a custom source name in Security Lake. This operation creates a partition in the Security Lake S3 bucket as the target location for log files from the custom source, an associated Glue table, and an Glue crawler.
See also: AWS API Documentation
Request Syntax
response = client.create_custom_log_source(
customSourceName='string',
eventClass='ACCESS_ACTIVITY'|'FILE_ACTIVITY'|'KERNEL_ACTIVITY'|'KERNEL_EXTENSION'|'MEMORY_ACTIVITY'|'MODULE_ACTIVITY'|'PROCESS_ACTIVITY'|'REGISTRY_KEY_ACTIVITY'|'REGISTRY_VALUE_ACTIVITY'|'RESOURCE_ACTIVITY'|'SCHEDULED_JOB_ACTIVITY'|'SECURITY_FINDING'|'ACCOUNT_CHANGE'|'AUTHENTICATION'|'AUTHORIZATION'|'ENTITY_MANAGEMENT_AUDIT'|'DHCP_ACTIVITY'|'NETWORK_ACTIVITY'|'DNS_ACTIVITY'|'FTP_ACTIVITY'|'HTTP_ACTIVITY'|'RDP_ACTIVITY'|'SMB_ACTIVITY'|'SSH_ACTIVITY'|'CLOUD_API'|'CONTAINER_LIFECYCLE'|'DATABASE_LIFECYCLE'|'CONFIG_STATE'|'CLOUD_STORAGE'|'INVENTORY_INFO'|'RFB_ACTIVITY'|'SMTP_ACTIVITY'|'VIRTUAL_MACHINE_ACTIVITY',
glueInvocationRoleArn='string',
logProviderAccountId='string'
)
[REQUIRED]
The custom source name for a third-party custom source.
[REQUIRED]
The Open Cybersecurity Schema Framework (OCSF) event class.
[REQUIRED]
The IAM Role ARN to be used by the Glue Crawler. The recommended IAM policies are:
AWSGlueServiceRole
[REQUIRED]
The Account ID that will assume the above Role to put logs into the Data Lake.
dict
Response Syntax
{
'customDataLocation': 'string',
'glueCrawlerName': 'string',
'glueDatabaseName': 'string',
'glueTableName': 'string',
'logProviderAccessRoleArn': 'string'
}
Response Structure
(dict) --
customDataLocation (string) --
The location of the partition in the Security Lake S3 bucket.
glueCrawlerName (string) --
The name of the Glue crawler.
glueDatabaseName (string) --
The Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/*
.
glueTableName (string) --
The table name of the Glue crawler.
logProviderAccessRoleArn (string) --
IAM Role ARN to be used by the entity putting logs into your Custom Source partition. Security Lake will apply the correct access policies to this Role, but this Role must have the trust policy created manually. This Role's name must start with the text 'Security Lake'. It must trust the logProviderAccountId
to assume it.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.ConflictSourceNamesException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.BucketNotFoundException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
create_datalake
(**kwargs)¶Initializes an Amazon Security Lake instance with the provided (or default) configuration. You can enable Security Lake in Regions with customized settings in advance before enabling log collection in Regions. You can either use the enableAll
parameter to specify all Regions or you can specify the Regions you want to enable Security Lake using the Regions
parameter and configure these Regions using the configurations
parameter. When the CreateDataLake
API is called multiple times, if that Region is already enabled, it will update the Region if configuration for that Region is provided. If that Region is a new Region, it will be set up with the customized configurations if it is specified.
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 account in the current Region, including security log and event data. For more information, see the Amazon Security Lake User Guide.
See also: AWS API Documentation
Request Syntax
response = client.create_datalake(
configurations={
'string': {
'encryptionKey': 'string',
'replicationDestinationRegions': [
'us-east-1'|'us-west-2'|'eu-central-1'|'us-east-2'|'eu-west-1'|'ap-northeast-1'|'ap-southeast-2',
],
'replicationRoleArn': 'string',
'retentionSettings': [
{
'retentionPeriod': 123,
'storageClass': 'STANDARD_IA'|'ONEZONE_IA'|'INTELLIGENT_TIERING'|'GLACIER_IR'|'GLACIER'|'DEEP_ARCHIVE'|'EXPIRE'
},
],
'tagsMap': {
'string': 'string'
}
}
},
enableAll=True|False,
metaStoreManagerRoleArn='string',
regions=[
'us-east-1'|'us-west-2'|'eu-central-1'|'us-east-2'|'eu-west-1'|'ap-northeast-1'|'ap-southeast-2',
]
)
Enable Security Lake with the specified configurations settings to begin ingesting security data.
Provides details of lake configuration object in Amazon Security Lake.
The type of encryption key used by Security Lake to encrypt the lake configuration object.
Replication enables automatic, asynchronous copying of objects across Amazon S3 buckets. Amazon S3 buckets that are configured for object replication can be owned by the same Amazon Web Services 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 Amazon Web Services Regions or within the same Region as the source bucket.
Set up one or more rollup Regions by providing the Region or Regions that should contribute to the central rollup Region.
Replication settings for the Amazon S3 buckets. This parameter uses the IAM role created by you that is managed by Security Lake, to ensure the replication setting is correct.
Retention settings for the destination Amazon S3 buckets.
Retention settings for the destination Amazon S3 buckets in Security Lake.
The retention period specifies a fixed period of time during which the Security Lake object remains locked. You can specify the retention period for one or more source in days.
The range of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads.
A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value, both of which you define.
Enable Security Lake in the specified Regions to begin ingesting security data. To enable Security Lake in specific Amazon Web Services Regions, such as us-east-1 or ap-northeast-3, provide the Region codes. For a list of Region codes, see Region codes in the Amazon Web Services General Reference.
dict
Response Syntax
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.ServiceQuotaExceededException
SecurityLake.Client.exceptions.ConflictException
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.ThrottlingException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
create_datalake_auto_enable
(**kwargs)¶Automatically enable Security Lake in the specified Regions to begin ingesting security data. When you choose to enable organization accounts automatically, then Security Lake begins to enable new accounts as member accounts as they are added to the organization. Security Lake does not enable existing organization accounts that are not yet enabled.
See also: AWS API Documentation
Request Syntax
response = client.create_datalake_auto_enable(
configurationForNewAccounts=[
{
'region': 'us-east-1'|'us-west-2'|'eu-central-1'|'us-east-2'|'eu-west-1'|'ap-northeast-1'|'ap-southeast-2',
'sources': [
'ROUTE53'|'VPC_FLOW'|'CLOUD_TRAIL'|'SH_FINDINGS',
]
},
]
)
[REQUIRED]
Enable Amazon Security Lake with the specified configurations settings to begin ingesting security data for new accounts in Security Lake.
Automatically enable new organization accounts as member accounts from a Security Lake administrator account.
The Regions where Security Lake is auto enabled
The Amazon Web Services sources which are auto enabled in Security Lake.
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
create_datalake_delegated_admin
(**kwargs)¶Designates the Security Lake administrator account for the organization. This API can only be called by the organization management account. The organization management account cannot be the delegated administrator account.
See also: AWS API Documentation
Request Syntax
response = client.create_datalake_delegated_admin(
account='string'
)
[REQUIRED]
Account ID of the Security Lake delegated administrator.
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.ThrottlingException
SecurityLake.Client.exceptions.AccessDeniedException
create_datalake_exceptions_subscription
(**kwargs)¶Creates the specified notification subscription in Security Lake. Creates the specified subscription notifications in the specified organization.
See also: AWS API Documentation
Request Syntax
response = client.create_datalake_exceptions_subscription(
notificationEndpoint='string',
subscriptionProtocol='HTTP'|'HTTPS'|'EMAIL'|'EMAIL_JSON'|'SMS'|'SQS'|'LAMBDA'|'APP'|'FIREHOSE'
)
[REQUIRED]
The account in which the exception notifications subscription is created.
[REQUIRED]
The subscription protocol to which exception messages are posted.
dict
Response Syntax
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
create_subscriber
(**kwargs)¶Creates a subscription permission for accounts that are already enabled in Security Lake.
See also: AWS API Documentation
Request Syntax
response = client.create_subscriber(
accessTypes=[
'LAKEFORMATION'|'S3',
],
accountId='string',
externalId='string',
sourceTypes=[
{
'awsSourceType': 'ROUTE53'|'VPC_FLOW'|'CLOUD_TRAIL'|'SH_FINDINGS',
'customSourceType': 'string'
},
],
subscriberDescription='string',
subscriberName='string'
)
The Amazon S3 or Lake Formation access type.
[REQUIRED]
The third party Amazon Web Services account ID used to access your data.
[REQUIRED]
The external ID of the subscriber. External ID allows the user that is assuming the role to assert the circumstances in which they are operating. It also provides a way for the account owner to permit the role to be assumed only under specific circumstances.
[REQUIRED]
The supported Amazon Web Services services from which logs and events are collected. Amazon Security Lake supports logs and events collection for natively-supported Amazon Web Services services.
The supported source types from which logs and events are collected in Amazon Security Lake.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set: awsSourceType
, customSourceType
.
Amazon Security Lake supports logs and events collection for natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
Amazon Security Lake supports custom source types. For the detailed list, see the Amazon Security Lake User Guide.
[REQUIRED]
The name of your Amazon Security Lake subscriber account.
dict
Response Syntax
{
'roleArn': 'string',
's3BucketArn': 'string',
'snsArn': 'string',
'subscriptionId': 'string'
}
Response Structure
(dict) --
roleArn (string) --
The Amazon Resource Name (ARN) created by the user to provide to the subscriber. For more information about ARNs and how to use them in policies, see IAM identifiers in the IAM User Guide.
s3BucketArn (string) --
The Amazon Resource Name (ARN) for the Amazon S3 bucket.
snsArn (string) --
The Amazon Resource Name (ARN) for the Amazon Simple Notification Service.
subscriptionId (string) --
The subscriptionId
that was created by the CreateSubscriber
API call.
Exceptions
SecurityLake.Client.exceptions.ConflictSubscriptionException
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.BucketNotFoundException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
SecurityLake.Client.exceptions.InvalidInputException
create_subscription_notification_configuration
(**kwargs)¶Creates the specified notification subscription in Security Lake. Creates the specified subscription notifications from the specified organization.
See also: AWS API Documentation
Request Syntax
response = client.create_subscription_notification_configuration(
createSqs=True|False,
httpsApiKeyName='string',
httpsApiKeyValue='string',
httpsMethod='POST'|'PUT',
roleArn='string',
subscriptionEndpoint='string',
subscriptionId='string'
)
[REQUIRED]
The subscription ID for which the subscription notification is specified.
dict
Response Syntax
{
'queueArn': 'string'
}
Response Structure
(dict) --
queueArn (string) --
Returns the Amazon resource name (ARN) of the queue.
Exceptions
SecurityLake.Client.exceptions.ConcurrentModificationException
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
SecurityLake.Client.exceptions.InvalidInputException
delete_aws_log_source
(**kwargs)¶Removes a natively-supported Amazon Web Services service as a Amazon Security Lake source. When you remove the source, Security Lake stops collecting data from that source, and subscribers can no longer consume new data from the source. Subscribers can still consume data that Amazon Security Lake collected from the source before disablement.
You can choose any source type in any Region for accounts that are either part of a trusted organization or standalone accounts. At least one of the three dimensions is a mandatory input to this API. However, any combination of the three dimensions can be supplied to this API.
By default, dimension refers to the entire set. This is overridden when you supply any one of the inputs. For instance, when members is not specified, the API disables all Security Lake member accounts for sources. Similarly, when Regions are not specified, Security Lake is disabled for all the Regions where Security Lake is available as a service.
You can use this API to remove a natively-supported Amazon Web Services service as a source. Use DeregisterCustomData
to remove a custom source.
When you don't provide a dimension, Security Lake assumes that the missing dimension refers to the entire set. For example, if you don't provide specific accounts, the API applies to the entire set of accounts in your organization.
See also: AWS API Documentation
Request Syntax
response = client.delete_aws_log_source(
disableAllDimensions={
'string': {
'string': [
'string',
]
}
},
disableSingleDimension=[
'string',
],
disableTwoDimensions={
'string': [
'string',
]
},
inputOrder=[
'REGION'|'SOURCE_TYPE'|'MEMBER',
]
)
Removes the specific Amazon Web Services sources from all Regions and source types.
Removes all Amazon Web Services sources from specific accounts or Regions.
Remove a specific Amazon Web Services source from specific accounts or Regions.
[REQUIRED]
This is a mandatory input. Specifies the input order to disable dimensions in Security Lake, namely Region, source type, and member.
dict
Response Syntax
{
'failed': [
'string',
],
'processing': [
'string',
]
}
Response Structure
(dict) --
failed (list) --
Deletion of the Amazon Web Services sources failed as the account is not a part of the organization.
processing (list) --
Deletion of the Amazon Web Services sources is in-progress.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
delete_custom_log_source
(**kwargs)¶Removes a custom log source from Security Lake.
See also: AWS API Documentation
Request Syntax
response = client.delete_custom_log_source(
customSourceName='string'
)
[REQUIRED]
The custom source name for the custome log source.
{
'customDataLocation': 'string'
}
Response Structure
The location of the partition in the Security Lake S3 bucket.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.ConflictSourceNamesException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.BucketNotFoundException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
delete_datalake
()¶When you delete Amazon Security Lake from your account, Security Lake is disabled in all Regions. Also, this API automatically performs the off-boarding steps to off-board the account from Security Lake . This includes ingesting security data from sources, storing data, and making data accessible to subscribers. Security Lake also deletes all the existing settings and resources that it stores or maintains for your account in the current Region, including security log and event data. DeleteDatalake
does not delete the S3 bucket which is owned by the Amazon Web Services account. For more information, see the Amazon Security Lake User Guide.
See also: AWS API Documentation
Request Syntax
response = client.delete_datalake()
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.ServiceQuotaExceededException
SecurityLake.Client.exceptions.ConflictException
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.ThrottlingException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
delete_datalake_auto_enable
(**kwargs)¶Automatically delete Security Lake in the specified Regions to stop ingesting security data. When you delete Amazon Security Lake from your account, Security Lake is disabled in all Regions. Also, this API automatically performs the off-boarding steps to off-board the account from Security Lake . This includes ingesting security data from sources, storing data, and making data accessible to subscribers. Security Lake also deletes all the existing settings and resources that it stores or maintains for your account in the current Region, including security log and event data. For more information, see the Amazon Security Lake User Guide.
See also: AWS API Documentation
Request Syntax
response = client.delete_datalake_auto_enable(
removeFromConfigurationForNewAccounts=[
{
'region': 'us-east-1'|'us-west-2'|'eu-central-1'|'us-east-2'|'eu-west-1'|'ap-northeast-1'|'ap-southeast-2',
'sources': [
'ROUTE53'|'VPC_FLOW'|'CLOUD_TRAIL'|'SH_FINDINGS',
]
},
]
)
[REQUIRED]
Delete Amazon Security Lake with the specified configurations settings to stop ingesting security data for new accounts in Security Lake.
Automatically enable new organization accounts as member accounts from a Security Lake administrator account.
The Regions where Security Lake is auto enabled
The Amazon Web Services sources which are auto enabled in Security Lake.
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
delete_datalake_delegated_admin
(**kwargs)¶Deletes the Security Lake administrator account for the organization. This API can only be called by the organization management account. The organization management account cannot be the delegated administrator account.
See also: AWS API Documentation
Request Syntax
response = client.delete_datalake_delegated_admin(
account='string'
)
[REQUIRED]
Account ID the Security Lake delegated administrator.
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.ThrottlingException
SecurityLake.Client.exceptions.AccessDeniedException
delete_datalake_exceptions_subscription
()¶Deletes the specified notification subscription in Security Lake. Deletes the specified subscription notifications in the specified organization.
See also: AWS API Documentation
Request Syntax
response = client.delete_datalake_exceptions_subscription()
{
'status': 'string'
}
Response Structure
Retrieves the status of the delete Security Lake operation for an account.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
delete_subscriber
(**kwargs)¶Deletes the specified subscription permissions to Security Lake. Deletes the specified subscription permissions from the specified organization.
See also: AWS API Documentation
Request Syntax
response = client.delete_subscriber(
id='string'
)
[REQUIRED]
A value created by Security Lake that uniquely identifies your DeleteSubscriber
API request.
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.ConcurrentModificationException
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.BucketNotFoundException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
SecurityLake.Client.exceptions.InvalidInputException
delete_subscription_notification_configuration
(**kwargs)¶Deletes the specified notification subscription in Security Lake. Deletes the specified subscription notifications from the specified organization.
See also: AWS API Documentation
Request Syntax
response = client.delete_subscription_notification_configuration(
subscriptionId='string'
)
[REQUIRED]
The subscription ID of the Amazon Security Lake subscriber account.
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.ConcurrentModificationException
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
SecurityLake.Client.exceptions.InvalidInputException
get_datalake
()¶Retrieve the Security Lake configuration object for the specified account ID. This API does not take input parameters.
See also: AWS API Documentation
Request Syntax
response = client.get_datalake()
{
'configurations': {
'string': {
'encryptionKey': 'string',
'replicationDestinationRegions': [
'us-east-1'|'us-west-2'|'eu-central-1'|'us-east-2'|'eu-west-1'|'ap-northeast-1'|'ap-southeast-2',
],
'replicationRoleArn': 'string',
'retentionSettings': [
{
'retentionPeriod': 123,
'storageClass': 'STANDARD_IA'|'ONEZONE_IA'|'INTELLIGENT_TIERING'|'GLACIER_IR'|'GLACIER'|'DEEP_ARCHIVE'|'EXPIRE'
},
],
's3BucketArn': 'string',
'status': 'INITIALIZED'|'PENDING'|'COMPLETED'|'FAILED',
'tagsMap': {
'string': 'string'
}
}
}
}
Response Structure
Retrieves the Security Lake configuration object.
Provides details of lake configuration object in Amazon Security Lake.
The type of encryption key used by Security Lake to encrypt the lake configuration
Replication enables automatic, asynchronous copying of objects across Amazon S3 buckets. Amazon 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 Amazon Web Services Regions or within the same Region as the source bucket.
Set up one or more rollup Regions by providing the Region or Regions that should contribute to the central rollup Region.
Replication settings for the Amazon S3 buckets. This parameter uses the IAM role created by you that is managed by Security Lake, to ensure the replication setting is correct.
Retention settings for the destination Amazon S3 buckets.
Retention settings for the destination Amazon S3 buckets in Security Lake.
The retention period specifies a fixed period of time during which the Security Lake object remains locked. You can specify the retention period for one or more source in days.
The range of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads.
Amazon Resource Names (ARNs) uniquely identify Amazon Web Services resources. Security Lake requires an ARN when you need to specify a resource unambiguously across all of Amazon Web Services, such as in IAM policies, Amazon Relational Database Service (Amazon RDS) tags, and API calls.
Retrieves the status of the configuration operation for an account in Amazon Security Lake.
A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value, both of which you define.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
get_datalake_auto_enable
()¶Retrieves the configuration that will be automatically set up for accounts added to the organization after the organization has on boarded to Amazon Security Lake. This API does not take input parameters.
See also: AWS API Documentation
Request Syntax
response = client.get_datalake_auto_enable()
{
'autoEnableNewAccounts': [
{
'region': 'us-east-1'|'us-west-2'|'eu-central-1'|'us-east-2'|'eu-west-1'|'ap-northeast-1'|'ap-southeast-2',
'sources': [
'ROUTE53'|'VPC_FLOW'|'CLOUD_TRAIL'|'SH_FINDINGS',
]
},
]
}
Response Structure
The configuration for new accounts.
Automatically enable new organization accounts as member accounts from a Security Lake administrator account.
The Regions where Security Lake is auto enabled
The Amazon Web Services sources which are auto enabled in Security Lake.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
get_datalake_exceptions_expiry
()¶Retrieves the expiration period and time-to-live (TTL) for which the exception message will remain. Exceptions are stored by default, for a 2 week period of time from when a record was created in Security Lake. This API does not take input parameters. This API does not take input parameters.
See also: AWS API Documentation
Request Syntax
response = client.get_datalake_exceptions_expiry()
{
'exceptionMessageExpiry': 123
}
Response Structure
The expiration period and time-to-live (TTL).
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
get_datalake_exceptions_subscription
()¶Retrieves the details of exception notifications for the account in Amazon Security Lake.
See also: AWS API Documentation
Request Syntax
response = client.get_datalake_exceptions_subscription()
{
'protocolAndNotificationEndpoint': {
'endpoint': 'string',
'protocol': 'string'
}
}
Response Structure
Retrieves the exception notification subscription information.
The account which is subscribed to receive exception notifications.
The protocol to which notification messages are posted.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
get_datalake_status
(**kwargs)¶Retrieve the Security Lake configuration object for the specified account ID. This API does not take input parameters.
See also: AWS API Documentation
Request Syntax
response = client.get_datalake_status(
accountSet=[
'string',
],
maxAccountResults=123,
nextToken='string'
)
The account IDs for which a static snapshot of the current Region, including enabled accounts and log sources is retrieved.
dict
Response Syntax
{
'accountSourcesList': [
{
'account': 'string',
'eventClass': 'ACCESS_ACTIVITY'|'FILE_ACTIVITY'|'KERNEL_ACTIVITY'|'KERNEL_EXTENSION'|'MEMORY_ACTIVITY'|'MODULE_ACTIVITY'|'PROCESS_ACTIVITY'|'REGISTRY_KEY_ACTIVITY'|'REGISTRY_VALUE_ACTIVITY'|'RESOURCE_ACTIVITY'|'SCHEDULED_JOB_ACTIVITY'|'SECURITY_FINDING'|'ACCOUNT_CHANGE'|'AUTHENTICATION'|'AUTHORIZATION'|'ENTITY_MANAGEMENT_AUDIT'|'DHCP_ACTIVITY'|'NETWORK_ACTIVITY'|'DNS_ACTIVITY'|'FTP_ACTIVITY'|'HTTP_ACTIVITY'|'RDP_ACTIVITY'|'SMB_ACTIVITY'|'SSH_ACTIVITY'|'CLOUD_API'|'CONTAINER_LIFECYCLE'|'DATABASE_LIFECYCLE'|'CONFIG_STATE'|'CLOUD_STORAGE'|'INVENTORY_INFO'|'RFB_ACTIVITY'|'SMTP_ACTIVITY'|'VIRTUAL_MACHINE_ACTIVITY',
'logsStatus': [
{
'healthStatus': 'ACTIVE'|'DEACTIVATED'|'PENDING',
'pathToLogs': 'string'
},
],
'sourceType': 'string'
},
],
'nextToken': 'string'
}
Response Structure
(dict) --
accountSourcesList (list) --
The list of enabled accounts and enabled sources.
(dict) --
Security Lake can collect logs and events from supported Amazon Web Services services and custom sources.
account (string) --
Account ID of the Security Lake account for which logs are collected.
eventClass (string) --
Initializes a new instance of the Event class.
logsStatus (list) --
Log status for the Security Lake account.
(dict) --
Log status for the Security Lake account.
healthStatus (string) --
Health status of services including error codes and patterns.
pathToLogs (string) --
Defines path the stored logs are available which has information on your systems, applications, and services.
sourceType (string) --
The supported Amazon Web Services services from which logs and events are collected. Amazon Security Lake supports logs and events collection for natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
nextToken (string) --
If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
get_paginator
(operation_name)¶Create a paginator for an operation.
create_foo
, and you'd normally invoke the
operation as client.create_foo(**kwargs)
, if the
create_foo
operation can be paginated, you can use the
call client.get_paginator("create_foo")
.client.can_paginate
method to
check if an operation is pageable.get_subscriber
(**kwargs)¶Retrieves subscription information for the specified subscription ID.
See also: AWS API Documentation
Request Syntax
response = client.get_subscriber(
id='string'
)
[REQUIRED]
A value created by Security Lake that uniquely identifies your GetSubscriber
API request.
{
'subscriber': {
'accessTypes': [
'LAKEFORMATION'|'S3',
],
'accountId': 'string',
'createdAt': datetime(2015, 1, 1),
'externalId': 'string',
'roleArn': 'string',
's3BucketArn': 'string',
'snsArn': 'string',
'sourceTypes': [
{
'awsSourceType': 'ROUTE53'|'VPC_FLOW'|'CLOUD_TRAIL'|'SH_FINDINGS',
'customSourceType': 'string'
},
],
'subscriberDescription': 'string',
'subscriberName': 'string',
'subscriptionEndpoint': 'string',
'subscriptionId': 'string',
'subscriptionProtocol': 'HTTPS'|'SQS',
'subscriptionStatus': 'ACTIVE'|'DEACTIVATED'|'PENDING'|'READY',
'updatedAt': datetime(2015, 1, 1)
}
}
Response Structure
Subscription information for the specified subscription ID
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 Lake Formation tables in your S3 bucket via services like Amazon Athena. This subscription type is defined as LAKEFORMATION
.
The Amazon Web Services account ID of the account that you are using to create your Amazon Security Lake account.
The date and time when the subscription was created.
The external ID of the subscriber. External ID allows the user that is assuming the role to assert the circumstances in which they are operating. It also provides a way for the account owner to permit the role to be assumed only under specific circumstances.
The Amazon Resource Name (ARN) specifying the role of the subscriber.
The Amazon Resource Name (ARN) for the Amazon S3 bucket.
The Amazon Resource Name (ARN) for the Amazon Simple Notification Service.
Amazon Security Lake supports logs and events collection for the natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
The supported source types from which logs and events are collected in Amazon Security Lake.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set: awsSourceType
, customSourceType
. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER
is as follows:
'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
Amazon Security Lake supports logs and events collection for natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
Amazon Security Lake supports custom source types. For the detailed list, see the Amazon Security Lake User Guide.
The subscriber descriptions for a subscriber account. The description for a subscriber includes subscriberName
, accountID
, externalID
, and subscriptionId
.
The name of your Amazon Security Lake subscriber account.
The subscription endpoint to which exception messages are posted.
The subscription ID of the Amazon Security Lake subscriber account.
The subscription protocol to which exception messages are posted.
Subscription status of the Amazon Security Lake subscriber account.
The date and time when the subscription was created.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
SecurityLake.Client.exceptions.InvalidInputException
get_waiter
(waiter_name)¶Returns an object that can wait for some condition.
list_datalake_exceptions
(**kwargs)¶List the Amazon Security Lake exceptions that you can use to find the source of problems and fix them.
See also: AWS API Documentation
Request Syntax
response = client.list_datalake_exceptions(
maxFailures=123,
nextToken='string',
regionSet=[
'us-east-1'|'us-west-2'|'eu-central-1'|'us-east-2'|'eu-west-1'|'ap-northeast-1'|'ap-southeast-2',
]
)
List the regions from which exceptions are retrieved.
dict
Response Syntax
{
'nextToken': 'string',
'nonRetryableFailures': [
{
'failures': [
{
'exceptionMessage': 'string',
'remediation': 'string',
'timestamp': datetime(2015, 1, 1)
},
],
'region': 'string'
},
]
}
Response Structure
(dict) --
nextToken (string) --
List if there are more results available. if nextToken is returned, You can make the call again using the returned token to retrieve the next page
nonRetryableFailures (list) --
Lists the non-retryable failures in the current region.
(dict) --
Response element for actions which make changes namely create, update, or delete actions.
failures (list) --
List of all failures.
(dict) --
List of all failures.
exceptionMessage (string) --
List of all exception messages.
remediation (string) --
List of all remediation steps for failures.
timestamp (datetime) --
This error can occur if you configure the wrong timestamp format, or if the subset of entries used for validation had errors or missing values.
region (string) --
List of Regions where the failure occurred.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
list_log_sources
(**kwargs)¶Lists the log sources in the current region.
See also: AWS API Documentation
Request Syntax
response = client.list_log_sources(
inputOrder=[
'REGION'|'SOURCE_TYPE'|'MEMBER',
],
listAllDimensions={
'string': {
'string': [
'string',
]
}
},
listSingleDimension=[
'string',
],
listTwoDimensions={
'string': [
'string',
]
},
maxResults=123,
nextToken='string'
)
Lists the log sources in input order, namely Region, source type, and member account.
List the view of log sources for enabled Security Lake accounts in all Regions and source types.
List the view of log sources for enabled Security Lake accounts for the entire region.
Lists the log sources for the specified source types in enabled Security Lake accounts for the entire Region, for selected member accounts.
dict
Response Syntax
{
'nextToken': 'string',
'regionSourceTypesAccountsList': [
{
'string': {
'string': [
'string',
]
}
},
]
}
Response Structure
(dict) --
nextToken (string) --
If nextToken is returned, there are more results available. You can make the call again using the returned token to retrieve the next page.
regionSourceTypesAccountsList (list) --
Lists the log sources in the Regions for enabled Security Lake accounts.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
list_subscribers
(**kwargs)¶List all subscribers for the specific Security Lake account ID.
See also: AWS API Documentation
Request Syntax
response = client.list_subscribers(
maxResults=123,
nextToken='string'
)
dict
Response Syntax
{
'nextToken': 'string',
'subscribers': [
{
'accessTypes': [
'LAKEFORMATION'|'S3',
],
'accountId': 'string',
'createdAt': datetime(2015, 1, 1),
'externalId': 'string',
'roleArn': 'string',
's3BucketArn': 'string',
'snsArn': 'string',
'sourceTypes': [
{
'awsSourceType': 'ROUTE53'|'VPC_FLOW'|'CLOUD_TRAIL'|'SH_FINDINGS',
'customSourceType': 'string'
},
],
'subscriberDescription': 'string',
'subscriberName': 'string',
'subscriptionEndpoint': 'string',
'subscriptionId': 'string',
'subscriptionProtocol': 'HTTPS'|'SQS',
'subscriptionStatus': 'ACTIVE'|'DEACTIVATED'|'PENDING'|'READY',
'updatedAt': datetime(2015, 1, 1)
},
]
}
Response Structure
(dict) --
nextToken (string) --
If nextToken is returned, there are more results available. You can make the call again using the returned token to retrieve the next page.
subscribers (list) --
The subscribers available in the specified Security Lake account ID.
(dict) --
Provides details of the Amazon Security Lake account subscription. Subscribers are notified of new objects for a source as the data is written to your Amazon Security Lake S3 bucket.
accessTypes (list) --
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 Lake Formation tables in your S3 bucket via services like Amazon Athena. This subscription type is defined as LAKEFORMATION
.
accountId (string) --
The Amazon Web Services account ID of the account that you are using to create your Amazon Security Lake account.
createdAt (datetime) --
The date and time when the subscription was created.
externalId (string) --
The external ID of the subscriber. External ID allows the user that is assuming the role to assert the circumstances in which they are operating. It also provides a way for the account owner to permit the role to be assumed only under specific circumstances.
roleArn (string) --
The Amazon Resource Name (ARN) specifying the role of the subscriber.
s3BucketArn (string) --
The Amazon Resource Name (ARN) for the Amazon S3 bucket.
snsArn (string) --
The Amazon Resource Name (ARN) for the Amazon Simple Notification Service.
sourceTypes (list) --
Amazon Security Lake supports logs and events collection for the natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
(dict) --
The supported source types from which logs and events are collected in Amazon Security Lake.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set: awsSourceType
, customSourceType
. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER
is as follows:
'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
awsSourceType (string) --
Amazon Security Lake supports logs and events collection for natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
customSourceType (string) --
Amazon Security Lake supports custom source types. For the detailed list, see the Amazon Security Lake User Guide.
subscriberDescription (string) --
The subscriber descriptions for a subscriber account. The description for a subscriber includes subscriberName
, accountID
, externalID
, and subscriptionId
.
subscriberName (string) --
The name of your Amazon Security Lake subscriber account.
subscriptionEndpoint (string) --
The subscription endpoint to which exception messages are posted.
subscriptionId (string) --
The subscription ID of the Amazon Security Lake subscriber account.
subscriptionProtocol (string) --
The subscription protocol to which exception messages are posted.
subscriptionStatus (string) --
Subscription status of the Amazon Security Lake subscriber account.
updatedAt (datetime) --
The date and time when the subscription was created.
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
SecurityLake.Client.exceptions.InvalidInputException
update_datalake
(**kwargs)¶Amazon Security Lake allows you to specify where to store your security data and for how long. You can specify a rollup Region to consolidate data from multiple regions.
You can update the properties of a Region or source. Input can either be directly specified to the API.
See also: AWS API Documentation
Request Syntax
response = client.update_datalake(
configurations={
'string': {
'encryptionKey': 'string',
'replicationDestinationRegions': [
'us-east-1'|'us-west-2'|'eu-central-1'|'us-east-2'|'eu-west-1'|'ap-northeast-1'|'ap-southeast-2',
],
'replicationRoleArn': 'string',
'retentionSettings': [
{
'retentionPeriod': 123,
'storageClass': 'STANDARD_IA'|'ONEZONE_IA'|'INTELLIGENT_TIERING'|'GLACIER_IR'|'GLACIER'|'DEEP_ARCHIVE'|'EXPIRE'
},
],
'tagsMap': {
'string': 'string'
}
}
}
)
[REQUIRED]
The configuration object
Provides details of lake configuration object in Amazon Security Lake.
The type of encryption key used by Security Lake to encrypt the lake configuration object.
Replication enables automatic, asynchronous copying of objects across Amazon S3 buckets. Amazon S3 buckets that are configured for object replication can be owned by the same Amazon Web Services 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 Amazon Web Services Regions or within the same Region as the source bucket.
Set up one or more rollup Regions by providing the Region or Regions that should contribute to the central rollup Region.
Replication settings for the Amazon S3 buckets. This parameter uses the IAM role created by you that is managed by Security Lake, to ensure the replication setting is correct.
Retention settings for the destination Amazon S3 buckets.
Retention settings for the destination Amazon S3 buckets in Security Lake.
The retention period specifies a fixed period of time during which the Security Lake object remains locked. You can specify the retention period for one or more source in days.
The range of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads.
A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value, both of which you define.
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.EventBridgeException
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
update_datalake_exceptions_expiry
(**kwargs)¶Update the expiration period for the exception message to your preferred time, and control the time-to-live (TTL) for the exception message to remain. Exceptions are stored by default, for a 2 week period of time from when a record was created in Security Lake.
See also: AWS API Documentation
Request Syntax
response = client.update_datalake_exceptions_expiry(
exceptionMessageExpiry=123
)
[REQUIRED]
The time-to-live (TTL) for the exception message to remain.
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
update_datalake_exceptions_subscription
(**kwargs)¶Update the subscription notification for exception notification.
See also: AWS API Documentation
Request Syntax
response = client.update_datalake_exceptions_subscription(
notificationEndpoint='string',
subscriptionProtocol='HTTP'|'HTTPS'|'EMAIL'|'EMAIL_JSON'|'SMS'|'SQS'|'LAMBDA'|'APP'|'FIREHOSE'
)
[REQUIRED]
The account which is subscribed to receive exception notifications.
[REQUIRED]
The subscription protocol to which exception messages are posted.
dict
Response Syntax
{}
Response Structure
Exceptions
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
update_subscriber
(**kwargs)¶Update the subscription permission for the given Security Lake account ID.
See also: AWS API Documentation
Request Syntax
response = client.update_subscriber(
externalId='string',
id='string',
sourceTypes=[
{
'awsSourceType': 'ROUTE53'|'VPC_FLOW'|'CLOUD_TRAIL'|'SH_FINDINGS',
'customSourceType': 'string'
},
],
subscriberDescription='string',
subscriberName='string'
)
[REQUIRED]
A value created by Security Lake that uniquely identifies your UpdateSubscriber
API request.
The supported Amazon Web Services services from which logs and events are collected. Amazon Security Lake supports logs and events collection for the following natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
The supported source types from which logs and events are collected in Amazon Security Lake.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set: awsSourceType
, customSourceType
.
Amazon Security Lake supports logs and events collection for natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
Amazon Security Lake supports custom source types. For the detailed list, see the Amazon Security Lake User Guide.
dict
Response Syntax
{
'subscriber': {
'accessTypes': [
'LAKEFORMATION'|'S3',
],
'accountId': 'string',
'createdAt': datetime(2015, 1, 1),
'externalId': 'string',
'roleArn': 'string',
's3BucketArn': 'string',
'snsArn': 'string',
'sourceTypes': [
{
'awsSourceType': 'ROUTE53'|'VPC_FLOW'|'CLOUD_TRAIL'|'SH_FINDINGS',
'customSourceType': 'string'
},
],
'subscriberDescription': 'string',
'subscriberName': 'string',
'subscriptionEndpoint': 'string',
'subscriptionId': 'string',
'subscriptionProtocol': 'HTTPS'|'SQS',
'subscriptionStatus': 'ACTIVE'|'DEACTIVATED'|'PENDING'|'READY',
'updatedAt': datetime(2015, 1, 1)
}
}
Response Structure
(dict) --
subscriber (dict) --
The account subscriber in Amazon Security Lake.
accessTypes (list) --
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 Lake Formation tables in your S3 bucket via services like Amazon Athena. This subscription type is defined as LAKEFORMATION
.
accountId (string) --
The Amazon Web Services account ID of the account that you are using to create your Amazon Security Lake account.
createdAt (datetime) --
The date and time when the subscription was created.
externalId (string) --
The external ID of the subscriber. External ID allows the user that is assuming the role to assert the circumstances in which they are operating. It also provides a way for the account owner to permit the role to be assumed only under specific circumstances.
roleArn (string) --
The Amazon Resource Name (ARN) specifying the role of the subscriber.
s3BucketArn (string) --
The Amazon Resource Name (ARN) for the Amazon S3 bucket.
snsArn (string) --
The Amazon Resource Name (ARN) for the Amazon Simple Notification Service.
sourceTypes (list) --
Amazon Security Lake supports logs and events collection for the natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
(dict) --
The supported source types from which logs and events are collected in Amazon Security Lake.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set: awsSourceType
, customSourceType
. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER
is as follows:
'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
awsSourceType (string) --
Amazon Security Lake supports logs and events collection for natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
customSourceType (string) --
Amazon Security Lake supports custom source types. For the detailed list, see the Amazon Security Lake User Guide.
subscriberDescription (string) --
The subscriber descriptions for a subscriber account. The description for a subscriber includes subscriberName
, accountID
, externalID
, and subscriptionId
.
subscriberName (string) --
The name of your Amazon Security Lake subscriber account.
subscriptionEndpoint (string) --
The subscription endpoint to which exception messages are posted.
subscriptionId (string) --
The subscription ID of the Amazon Security Lake subscriber account.
subscriptionProtocol (string) --
The subscription protocol to which exception messages are posted.
subscriptionStatus (string) --
Subscription status of the Amazon Security Lake subscriber account.
updatedAt (datetime) --
The date and time when the subscription was created.
Exceptions
SecurityLake.Client.exceptions.ConflictSubscriptionException
SecurityLake.Client.exceptions.ConcurrentModificationException
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.AccountNotFoundException
SecurityLake.Client.exceptions.InvalidInputException
update_subscription_notification_configuration
(**kwargs)¶Create a new subscription notification or add the existing subscription notification setting for the specified subscription ID.
See also: AWS API Documentation
Request Syntax
response = client.update_subscription_notification_configuration(
createSqs=True|False,
httpsApiKeyName='string',
httpsApiKeyValue='string',
httpsMethod='POST'|'PUT',
roleArn='string',
subscriptionEndpoint='string',
subscriptionId='string'
)
[REQUIRED]
The subscription ID for which the subscription notification is specified.
dict
Response Syntax
{
'queueArn': 'string'
}
Response Structure
(dict) --
queueArn (string) --
Returns the Amazon resource name (ARN) of the queue.
Exceptions
SecurityLake.Client.exceptions.ConcurrentModificationException
SecurityLake.Client.exceptions.InternalServerException
SecurityLake.Client.exceptions.ValidationException
SecurityLake.Client.exceptions.AccessDeniedException
SecurityLake.Client.exceptions.ResourceNotFoundException
SecurityLake.Client.exceptions.AccountNotFoundException
SecurityLake.Client.exceptions.InvalidInputException
The available paginators are:
SecurityLake.Paginator.GetDatalakeStatus
SecurityLake.Paginator.ListDatalakeExceptions
SecurityLake.Paginator.ListLogSources
SecurityLake.Paginator.ListSubscribers
SecurityLake.Paginator.
GetDatalakeStatus
¶paginator = client.get_paginator('get_datalake_status')
paginate
(**kwargs)¶Creates an iterator that will paginate through responses from SecurityLake.Client.get_datalake_status()
.
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
accountSet=[
'string',
],
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
The account IDs for which a static snapshot of the current Region, including enabled accounts and log sources is retrieved.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken
will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken
from a previous response.
dict
Response Syntax
{
'accountSourcesList': [
{
'account': 'string',
'eventClass': 'ACCESS_ACTIVITY'|'FILE_ACTIVITY'|'KERNEL_ACTIVITY'|'KERNEL_EXTENSION'|'MEMORY_ACTIVITY'|'MODULE_ACTIVITY'|'PROCESS_ACTIVITY'|'REGISTRY_KEY_ACTIVITY'|'REGISTRY_VALUE_ACTIVITY'|'RESOURCE_ACTIVITY'|'SCHEDULED_JOB_ACTIVITY'|'SECURITY_FINDING'|'ACCOUNT_CHANGE'|'AUTHENTICATION'|'AUTHORIZATION'|'ENTITY_MANAGEMENT_AUDIT'|'DHCP_ACTIVITY'|'NETWORK_ACTIVITY'|'DNS_ACTIVITY'|'FTP_ACTIVITY'|'HTTP_ACTIVITY'|'RDP_ACTIVITY'|'SMB_ACTIVITY'|'SSH_ACTIVITY'|'CLOUD_API'|'CONTAINER_LIFECYCLE'|'DATABASE_LIFECYCLE'|'CONFIG_STATE'|'CLOUD_STORAGE'|'INVENTORY_INFO'|'RFB_ACTIVITY'|'SMTP_ACTIVITY'|'VIRTUAL_MACHINE_ACTIVITY',
'logsStatus': [
{
'healthStatus': 'ACTIVE'|'DEACTIVATED'|'PENDING',
'pathToLogs': 'string'
},
],
'sourceType': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
accountSourcesList (list) --
The list of enabled accounts and enabled sources.
(dict) --
Security Lake can collect logs and events from supported Amazon Web Services services and custom sources.
account (string) --
Account ID of the Security Lake account for which logs are collected.
eventClass (string) --
Initializes a new instance of the Event class.
logsStatus (list) --
Log status for the Security Lake account.
(dict) --
Log status for the Security Lake account.
healthStatus (string) --
Health status of services including error codes and patterns.
pathToLogs (string) --
Defines path the stored logs are available which has information on your systems, applications, and services.
sourceType (string) --
The supported Amazon Web Services services from which logs and events are collected. Amazon Security Lake supports logs and events collection for natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
NextToken (string) --
A token to resume pagination.
SecurityLake.Paginator.
ListDatalakeExceptions
¶paginator = client.get_paginator('list_datalake_exceptions')
paginate
(**kwargs)¶Creates an iterator that will paginate through responses from SecurityLake.Client.list_datalake_exceptions()
.
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
regionSet=[
'us-east-1'|'us-west-2'|'eu-central-1'|'us-east-2'|'eu-west-1'|'ap-northeast-1'|'ap-southeast-2',
],
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
List the regions from which exceptions are retrieved.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken
will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken
from a previous response.
dict
Response Syntax
{
'nonRetryableFailures': [
{
'failures': [
{
'exceptionMessage': 'string',
'remediation': 'string',
'timestamp': datetime(2015, 1, 1)
},
],
'region': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
nonRetryableFailures (list) --
Lists the non-retryable failures in the current region.
(dict) --
Response element for actions which make changes namely create, update, or delete actions.
failures (list) --
List of all failures.
(dict) --
List of all failures.
exceptionMessage (string) --
List of all exception messages.
remediation (string) --
List of all remediation steps for failures.
timestamp (datetime) --
This error can occur if you configure the wrong timestamp format, or if the subset of entries used for validation had errors or missing values.
region (string) --
List of Regions where the failure occurred.
NextToken (string) --
A token to resume pagination.
SecurityLake.Paginator.
ListLogSources
¶paginator = client.get_paginator('list_log_sources')
paginate
(**kwargs)¶Creates an iterator that will paginate through responses from SecurityLake.Client.list_log_sources()
.
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
inputOrder=[
'REGION'|'SOURCE_TYPE'|'MEMBER',
],
listAllDimensions={
'string': {
'string': [
'string',
]
}
},
listSingleDimension=[
'string',
],
listTwoDimensions={
'string': [
'string',
]
},
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
Lists the log sources in input order, namely Region, source type, and member account.
List the view of log sources for enabled Security Lake accounts in all Regions and source types.
List the view of log sources for enabled Security Lake accounts for the entire region.
Lists the log sources for the specified source types in enabled Security Lake accounts for the entire Region, for selected member accounts.
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken
will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken
from a previous response.
dict
Response Syntax
{
'regionSourceTypesAccountsList': [
{
'string': {
'string': [
'string',
]
}
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
regionSourceTypesAccountsList (list) --
Lists the log sources in the Regions for enabled Security Lake accounts.
NextToken (string) --
A token to resume pagination.
SecurityLake.Paginator.
ListSubscribers
¶paginator = client.get_paginator('list_subscribers')
paginate
(**kwargs)¶Creates an iterator that will paginate through responses from SecurityLake.Client.list_subscribers()
.
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken
will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken
from a previous response.
{
'subscribers': [
{
'accessTypes': [
'LAKEFORMATION'|'S3',
],
'accountId': 'string',
'createdAt': datetime(2015, 1, 1),
'externalId': 'string',
'roleArn': 'string',
's3BucketArn': 'string',
'snsArn': 'string',
'sourceTypes': [
{
'awsSourceType': 'ROUTE53'|'VPC_FLOW'|'CLOUD_TRAIL'|'SH_FINDINGS',
'customSourceType': 'string'
},
],
'subscriberDescription': 'string',
'subscriberName': 'string',
'subscriptionEndpoint': 'string',
'subscriptionId': 'string',
'subscriptionProtocol': 'HTTPS'|'SQS',
'subscriptionStatus': 'ACTIVE'|'DEACTIVATED'|'PENDING'|'READY',
'updatedAt': datetime(2015, 1, 1)
},
],
'NextToken': 'string'
}
Response Structure
The subscribers available in the specified Security Lake account ID.
Provides details of the Amazon Security Lake account subscription. Subscribers are notified of new objects for a source as the data is written to your Amazon Security Lake S3 bucket.
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 Lake Formation tables in your S3 bucket via services like Amazon Athena. This subscription type is defined as LAKEFORMATION
.
The Amazon Web Services account ID of the account that you are using to create your Amazon Security Lake account.
The date and time when the subscription was created.
The external ID of the subscriber. External ID allows the user that is assuming the role to assert the circumstances in which they are operating. It also provides a way for the account owner to permit the role to be assumed only under specific circumstances.
The Amazon Resource Name (ARN) specifying the role of the subscriber.
The Amazon Resource Name (ARN) for the Amazon S3 bucket.
The Amazon Resource Name (ARN) for the Amazon Simple Notification Service.
Amazon Security Lake supports logs and events collection for the natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
The supported source types from which logs and events are collected in Amazon Security Lake.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set: awsSourceType
, customSourceType
. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER
as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER
is as follows:
'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
Amazon Security Lake supports logs and events collection for natively-supported Amazon Web Services services. For more information, see the Amazon Security Lake User Guide.
Amazon Security Lake supports custom source types. For the detailed list, see the Amazon Security Lake User Guide.
The subscriber descriptions for a subscriber account. The description for a subscriber includes subscriberName
, accountID
, externalID
, and subscriptionId
.
The name of your Amazon Security Lake subscriber account.
The subscription endpoint to which exception messages are posted.
The subscription ID of the Amazon Security Lake subscriber account.
The subscription protocol to which exception messages are posted.
Subscription status of the Amazon Security Lake subscriber account.
The date and time when the subscription was created.
A token to resume pagination.