SecurityLake

Table of Contents

Client

class 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(operation_name)

Check if an operation can be paginated.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is 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").
Returns
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',
    ]
)
Parameters
  • enableAllDimensions (dict) --

    Enables specific sources in all Regions and source types.

    • (string) --
      • (dict) --
        • (string) --
          • (list) --
            • (string) --
  • enableSingleDimension (list) --

    Enables all sources in specific accounts or Regions.

    • (string) --
  • enableTwoDimensions (dict) --

    Enables specific service sources in specific accounts or Regions.

    • (string) --
      • (list) --
        • (string) --
  • inputOrder (list) --

    [REQUIRED]

    Specifies the input order to enable dimensions in Security Lake, namely region, source type, and member account.

    • (string) --
Return type

dict

Returns

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.

      • (string) --
    • processing (list) --

      List of all accounts which are in the process of enabling a natively-supported Amazon Web Services service as a Security Lake.

      • (string) --

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'
)
Parameters
  • customSourceName (string) --

    [REQUIRED]

    The custom source name for a third-party custom source.

  • eventClass (string) --

    [REQUIRED]

    The Open Cybersecurity Schema Framework (OCSF) event class.

  • glueInvocationRoleArn (string) --

    [REQUIRED]

    The IAM Role ARN to be used by the Glue Crawler. The recommended IAM policies are:

    • The managed policy AWSGlueServiceRole
    • A custom policy granting access to your S3 Data Lake
  • logProviderAccountId (string) --

    [REQUIRED]

    The Account ID that will assume the above Role to put logs into the Data Lake.

Return type

dict

Returns

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',
    ]
)
Parameters
  • configurations (dict) --

    Enable Security Lake with the specified configurations settings to begin ingesting security data.

    • (string) --
      • (dict) --

        Provides details of lake configuration object in Amazon Security Lake.

        • encryptionKey (string) --

          The type of encryption key used by Security Lake to encrypt the lake configuration object.

        • replicationDestinationRegions (list) --

          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.

          • (string) --
        • replicationRoleArn (string) --

          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.

        • retentionSettings (list) --

          Retention settings for the destination Amazon S3 buckets.

          • (dict) --

            Retention settings for the destination Amazon S3 buckets in Security Lake.

            • retentionPeriod (integer) --

              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.

            • storageClass (string) --

              The range of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads.

        • tagsMap (dict) --

          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.

          • (string) --
            • (string) --
  • enableAll (boolean) -- Enable Security Lake in all Regions to begin ingesting security data.
  • metaStoreManagerRoleArn (string) -- The Role ARN used to create and update the Glue table with partitions generated by ingestion and normalization of Amazon Web Services log sources and custom sources.
  • regions (list) --

    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.

    • (string) --
Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

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',
            ]
        },
    ]
)
Parameters
configurationForNewAccounts (list) --

[REQUIRED]

Enable Amazon Security Lake with the specified configurations settings to begin ingesting security data for new accounts in Security Lake.

  • (dict) --

    Automatically enable new organization accounts as member accounts from a Security Lake administrator account.

    • region (string) -- [REQUIRED]

      The Regions where Security Lake is auto enabled

    • sources (list) -- [REQUIRED]

      The Amazon Web Services sources which are auto enabled in Security Lake.

      • (string) --
Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

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'
)
Parameters
account (string) --

[REQUIRED]

Account ID of the Security Lake delegated administrator.

Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

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'
)
Parameters
  • notificationEndpoint (string) --

    [REQUIRED]

    The account in which the exception notifications subscription is created.

  • subscriptionProtocol (string) --

    [REQUIRED]

    The subscription protocol to which exception messages are posted.

Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

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'
)
Parameters
  • accessTypes (list) --

    The Amazon S3 or Lake Formation access type.

    • (string) --
  • accountId (string) --

    [REQUIRED]

    The third party Amazon Web Services account ID used to access your data.

  • externalId (string) --

    [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.

  • sourceTypes (list) --

    [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.

    • (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 can be set: awsSourceType, customSourceType.

      • 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 the subscriber account in Amazon Security Lake.
  • subscriberName (string) --

    [REQUIRED]

    The name of your Amazon Security Lake subscriber account.

Return type

dict

Returns

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'
)
Parameters
  • createSqs (boolean) -- Create a new subscription notification for the specified subscription ID in Security Lake.
  • httpsApiKeyName (string) -- The key name for the subscription notification.
  • httpsApiKeyValue (string) -- The key value for the subscription notification.
  • httpsMethod (string) -- The HTTPS method used for the subscription notification.
  • roleArn (string) -- The Amazon Resource Name (ARN) specifying the role of the subscriber.
  • subscriptionEndpoint (string) -- The subscription endpoint in Security Lake.
  • subscriptionId (string) --

    [REQUIRED]

    The subscription ID for which the subscription notification is specified.

Return type

dict

Returns

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',
    ]
)
Parameters
  • disableAllDimensions (dict) --

    Removes the specific Amazon Web Services sources from all Regions and source types.

    • (string) --
      • (dict) --
        • (string) --
          • (list) --
            • (string) --
  • disableSingleDimension (list) --

    Removes all Amazon Web Services sources from specific accounts or Regions.

    • (string) --
  • disableTwoDimensions (dict) --

    Remove a specific Amazon Web Services source from specific accounts or Regions.

    • (string) --
      • (list) --
        • (string) --
  • inputOrder (list) --

    [REQUIRED]

    This is a mandatory input. Specifies the input order to disable dimensions in Security Lake, namely Region, source type, and member.

    • (string) --
Return type

dict

Returns

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.

      • (string) --
    • processing (list) --

      Deletion of the Amazon Web Services sources is in-progress.

      • (string) --

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'
)
Parameters
customSourceName (string) --

[REQUIRED]

The custom source name for the custome log source.

Return type
dict
Returns
Response Syntax
{
    'customDataLocation': 'string'
}

Response Structure

  • (dict) --
    • customDataLocation (string) --

      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()
Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

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',
            ]
        },
    ]
)
Parameters
removeFromConfigurationForNewAccounts (list) --

[REQUIRED]

Delete Amazon Security Lake with the specified configurations settings to stop ingesting security data for new accounts in Security Lake.

  • (dict) --

    Automatically enable new organization accounts as member accounts from a Security Lake administrator account.

    • region (string) -- [REQUIRED]

      The Regions where Security Lake is auto enabled

    • sources (list) -- [REQUIRED]

      The Amazon Web Services sources which are auto enabled in Security Lake.

      • (string) --
Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

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'
)
Parameters
account (string) --

[REQUIRED]

Account ID the Security Lake delegated administrator.

Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

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()
Return type
dict
Returns
Response Syntax
{
    'status': 'string'
}

Response Structure

  • (dict) --
    • status (string) --

      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'
)
Parameters
id (string) --

[REQUIRED]

A value created by Security Lake that uniquely identifies your DeleteSubscriber API request.

Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

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'
)
Parameters
subscriptionId (string) --

[REQUIRED]

The subscription ID of the Amazon Security Lake subscriber account.

Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

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()
Return type
dict
Returns
Response Syntax
{
    '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

  • (dict) --
    • configurations (dict) --

      Retrieves the Security Lake configuration object.

      • (string) --
        • (dict) --

          Provides details of lake configuration object in Amazon Security Lake.

          • encryptionKey (string) --

            The type of encryption key used by Security Lake to encrypt the lake configuration

          • replicationDestinationRegions (list) --

            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.

            • (string) --
          • replicationRoleArn (string) --

            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.

          • retentionSettings (list) --

            Retention settings for the destination Amazon S3 buckets.

            • (dict) --

              Retention settings for the destination Amazon S3 buckets in Security Lake.

              • retentionPeriod (integer) --

                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.

              • storageClass (string) --

                The range of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads.

          • s3BucketArn (string) --

            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.

          • status (string) --

            Retrieves the status of the configuration operation for an account in Amazon Security Lake.

          • tagsMap (dict) --

            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.

            • (string) --
              • (string) --

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()
Return type
dict
Returns
Response Syntax
{
    '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

  • (dict) --
    • autoEnableNewAccounts (list) --

      The configuration for new accounts.

      • (dict) --

        Automatically enable new organization accounts as member accounts from a Security Lake administrator account.

        • region (string) --

          The Regions where Security Lake is auto enabled

        • sources (list) --

          The Amazon Web Services sources which are auto enabled in Security Lake.

          • (string) --

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()
Return type
dict
Returns
Response Syntax
{
    'exceptionMessageExpiry': 123
}

Response Structure

  • (dict) --
    • exceptionMessageExpiry (integer) --

      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()
Return type
dict
Returns
Response Syntax
{
    'protocolAndNotificationEndpoint': {
        'endpoint': 'string',
        'protocol': 'string'
    }
}

Response Structure

  • (dict) --
    • protocolAndNotificationEndpoint (dict) --

      Retrieves the exception notification subscription information.

      • endpoint (string) --

        The account which is subscribed to receive exception notifications.

      • protocol (string) --

        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'
)
Parameters
  • accountSet (list) --

    The account IDs for which a static snapshot of the current Region, including enabled accounts and log sources is retrieved.

    • (string) --
  • maxAccountResults (integer) -- The maximum limit of accounts for which the static snapshot of the current Region including enabled accounts and log sources is retrieved.
  • 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.
Return type

dict

Returns

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.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is 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").
Raises OperationNotPageableError
Raised if the operation is not pageable. You can use the client.can_paginate method to check if an operation is pageable.
Return type
L{botocore.paginate.Paginator}
Returns
A paginator object.
get_subscriber(**kwargs)

Retrieves subscription information for the specified subscription ID.

See also: AWS API Documentation

Request Syntax

response = client.get_subscriber(
    id='string'
)
Parameters
id (string) --

[REQUIRED]

A value created by Security Lake that uniquely identifies your GetSubscriber API request.

Return type
dict
Returns
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) --

      Subscription information for the specified subscription ID

      • 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 .

        • (string) --
      • 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.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.

Parameters
waiter_name (str) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters.
Returns
The specified waiter object.
Return type
botocore.waiter.Waiter
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',
    ]
)
Parameters
  • maxFailures (integer) -- List the maximum number of failures in Security Lake.
  • 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
  • regionSet (list) --

    List the regions from which exceptions are retrieved.

    • (string) --
Return type

dict

Returns

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'
)
Parameters
  • inputOrder (list) --

    Lists the log sources in input order, namely Region, source type, and member account.

    • (string) --
  • listAllDimensions (dict) --

    List the view of log sources for enabled Security Lake accounts in all Regions and source types.

    • (string) --
      • (dict) --
        • (string) --
          • (list) --
            • (string) --
  • listSingleDimension (list) --

    List the view of log sources for enabled Security Lake accounts for the entire region.

    • (string) --
  • listTwoDimensions (dict) --

    Lists the log sources for the specified source types in enabled Security Lake accounts for the entire Region, for selected member accounts.

    • (string) --
      • (list) --
        • (string) --
  • maxResults (integer) -- The maximum number of accounts for which the configuration is displayed.
  • 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.
Return type

dict

Returns

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.

      • (dict) --
        • (string) --
          • (dict) --
            • (string) --
              • (list) --
                • (string) --

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'
)
Parameters
  • maxResults (integer) -- The maximum number of accounts for which the configuration is displayed.
  • 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.
Return type

dict

Returns

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 .

          • (string) --
        • 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'
            }
        }
    }
)
Parameters
configurations (dict) --

[REQUIRED]

The configuration object

  • (string) --
    • (dict) --

      Provides details of lake configuration object in Amazon Security Lake.

      • encryptionKey (string) --

        The type of encryption key used by Security Lake to encrypt the lake configuration object.

      • replicationDestinationRegions (list) --

        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.

        • (string) --
      • replicationRoleArn (string) --

        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.

      • retentionSettings (list) --

        Retention settings for the destination Amazon S3 buckets.

        • (dict) --

          Retention settings for the destination Amazon S3 buckets in Security Lake.

          • retentionPeriod (integer) --

            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.

          • storageClass (string) --

            The range of storage classes that you can choose from based on the data access, resiliency, and cost requirements of your workloads.

      • tagsMap (dict) --

        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.

        • (string) --
          • (string) --
Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

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
)
Parameters
exceptionMessageExpiry (integer) --

[REQUIRED]

The time-to-live (TTL) for the exception message to remain.

Return type
dict
Returns
Response Syntax
{}

Response Structure

  • (dict) --

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'
)
Parameters
  • notificationEndpoint (string) --

    [REQUIRED]

    The account which is subscribed to receive exception notifications.

  • subscriptionProtocol (string) --

    [REQUIRED]

    The subscription protocol to which exception messages are posted.

Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

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'
)
Parameters
  • externalId (string) -- External ID of the Security Lake account.
  • id (string) --

    [REQUIRED]

    A value created by Security Lake that uniquely identifies your UpdateSubscriber API request.

  • sourceTypes (list) --

    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.

    • (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 can be set: awsSourceType, customSourceType.

      • 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) -- Description of the Security Lake account subscriber.
  • subscriberName (string) -- Name of the Security Lake account subscriber.
Return type

dict

Returns

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 .

        • (string) --
      • 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'
)
Parameters
  • createSqs (boolean) -- Create a new subscription notification for the specified subscription ID in Security Lake.
  • httpsApiKeyName (string) -- The key name for the subscription notification.
  • httpsApiKeyValue (string) -- The key value for the subscription notification.
  • httpsMethod (string) -- The HTTPS method used for the subscription notification.
  • roleArn (string) -- The Amazon Resource Name (ARN) specifying the role of the subscriber.
  • subscriptionEndpoint (string) -- The subscription endpoint in Security Lake.
  • subscriptionId (string) --

    [REQUIRED]

    The subscription ID for which the subscription notification is specified.

Return type

dict

Returns

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

Paginators

The available paginators are:

class 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'
    }
)
Parameters
  • accountSet (list) --

    The account IDs for which a static snapshot of the current Region, including enabled accounts and log sources is retrieved.

    • (string) --
  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      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.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

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.

class 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'
    }
)
Parameters
  • regionSet (list) --

    List the regions from which exceptions are retrieved.

    • (string) --
  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      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.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

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.

class 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'
    }
)
Parameters
  • inputOrder (list) --

    Lists the log sources in input order, namely Region, source type, and member account.

    • (string) --
  • listAllDimensions (dict) --

    List the view of log sources for enabled Security Lake accounts in all Regions and source types.

    • (string) --
      • (dict) --
        • (string) --
          • (list) --
            • (string) --
  • listSingleDimension (list) --

    List the view of log sources for enabled Security Lake accounts for the entire region.

    • (string) --
  • listTwoDimensions (dict) --

    Lists the log sources for the specified source types in enabled Security Lake accounts for the entire Region, for selected member accounts.

    • (string) --
      • (list) --
        • (string) --
  • PaginationConfig (dict) --

    A dictionary that provides parameters to control pagination.

    • MaxItems (integer) --

      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.

    • PageSize (integer) --

      The size of each page.

    • StartingToken (string) --

      A token to specify where to start paginating. This is the NextToken from a previous response.

Return type

dict

Returns

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.

      • (dict) --
        • (string) --
          • (dict) --
            • (string) --
              • (list) --
                • (string) --
    • NextToken (string) --

      A token to resume pagination.

class 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'
    }
)
Parameters
PaginationConfig (dict) --

A dictionary that provides parameters to control pagination.

  • MaxItems (integer) --

    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.

  • PageSize (integer) --

    The size of each page.

  • StartingToken (string) --

    A token to specify where to start paginating. This is the NextToken from a previous response.

Return type
dict
Returns
Response Syntax
{
    '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

  • (dict) --
    • 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 .

          • (string) --
        • 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.

    • NextToken (string) --

      A token to resume pagination.