Amazon Security Lake

2024/02/29 - Amazon Security Lake - 11 updated api methods

Changes  Add capability to update the Data Lake's MetaStoreManager Role in order to perform required data lake updates to use Iceberg table format in their data lake or update the role for any other reason.

CreateAwsLogSource (updated) Link ¶
Changes (request)
{'sources': {'sourceName': {'WAF', 'EKS_AUDIT'}}}

Adds a natively supported Amazon Web Service as an Amazon Security Lake source. Enables source types for member accounts in required Amazon Web Services Regions, based on the parameters you specify. You can choose any source type in any Region for either accounts that are part of a trusted organization or standalone accounts. Once you add an Amazon Web Service as a source, Security Lake starts collecting logs and events from it.

You can use this API only to enable natively supported Amazon Web Services as a source. Use CreateCustomLogSource to enable data collection from a custom source.

See also: AWS API Documentation

Request Syntax

client.create_aws_log_source(
    sources=[
        {
            'accounts': [
                'string',
            ],
            'regions': [
                'string',
            ],
            'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
            'sourceVersion': 'string'
        },
    ]
)
type sources

list

param sources

[REQUIRED]

Specify the natively-supported Amazon Web Services service to add as a source in Security Lake.

  • (dict) --

    The Security Lake logs source configuration file describes the information needed to generate Security Lake logs.

    • accounts (list) --

      Specify the Amazon Web Services account information where you want to enable Security Lake.

      • (string) --

    • regions (list) -- [REQUIRED]

      Specify the Regions where you want to enable Security Lake.

      • (string) --

    • sourceName (string) -- [REQUIRED]

      The name for a Amazon Web Services source. This must be a Regionally unique value.

    • sourceVersion (string) --

      The version for a Amazon Web Services source. This must be a Regionally unique value.

rtype

dict

returns

Response Syntax

{
    'failed': [
        'string',
    ]
}

Response Structure

  • (dict) --

    • failed (list) --

      Lists all accounts in which enabling a natively supported Amazon Web Service as a Security Lake source failed. The failure occurred as these accounts are not part of an organization.

      • (string) --

CreateDataLakeOrganizationConfiguration (updated) Link ¶
Changes (request)
{'autoEnableNewAccount': {'sources': {'sourceName': {'WAF', 'EKS_AUDIT'}}}}

Automatically enables Amazon Security Lake for new member accounts in your organization. Security Lake is not automatically enabled for any existing member accounts in your organization.

See also: AWS API Documentation

Request Syntax

client.create_data_lake_organization_configuration(
    autoEnableNewAccount=[
        {
            'region': 'string',
            'sources': [
                {
                    'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                    'sourceVersion': 'string'
                },
            ]
        },
    ]
)
type autoEnableNewAccount

list

param autoEnableNewAccount

Enable Security Lake with the specified configuration settings, to begin collecting security data for new accounts in your organization.

  • (dict) --

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

    • region (string) -- [REQUIRED]

      The Amazon Web Services Regions where Security Lake is automatically enabled.

    • sources (list) -- [REQUIRED]

      The Amazon Web Services sources that are automatically enabled in Security Lake.

      • (dict) --

        Amazon Security Lake can collect logs and events from natively-supported Amazon Web Services services.

        • sourceName (string) --

          The name for a Amazon Web Services source. This must be a Regionally unique value.

        • sourceVersion (string) --

          The version for a Amazon Web Services source. This must be a Regionally unique value.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

CreateSubscriber (updated) Link ¶
Changes (request, response)
Request
{'sources': {'awsLogSource': {'sourceName': {'WAF', 'EKS_AUDIT'}}}}
Response
{'subscriber': {'sources': {'awsLogSource': {'sourceName': {'EKS_AUDIT',
                                                            'WAF'}}}}}

Creates a subscription permission for accounts that are already enabled in Amazon Security Lake. You can create a subscriber with access to data in the current Amazon Web Services Region.

See also: AWS API Documentation

Request Syntax

client.create_subscriber(
    accessTypes=[
        'LAKEFORMATION'|'S3',
    ],
    sources=[
        {
            'awsLogSource': {
                'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                'sourceVersion': 'string'
            },
            'customLogSource': {
                'attributes': {
                    'crawlerArn': 'string',
                    'databaseArn': 'string',
                    'tableArn': 'string'
                },
                'provider': {
                    'location': 'string',
                    'roleArn': 'string'
                },
                'sourceName': 'string',
                'sourceVersion': 'string'
            }
        },
    ],
    subscriberDescription='string',
    subscriberIdentity={
        'externalId': 'string',
        'principal': 'string'
    },
    subscriberName='string',
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ]
)
type accessTypes

list

param accessTypes

The Amazon S3 or Lake Formation access type.

  • (string) --

type sources

list

param sources

[REQUIRED]

The supported Amazon Web Services from which logs and events are collected. Security Lake supports log and event collection for natively supported Amazon Web Services.

  • (dict) --

    The supported source types from which logs and events are collected in Amazon Security Lake. For a list of supported Amazon Web Services, see the Amazon Security Lake User Guide.

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: awsLogSource, customLogSource.

    • awsLogSource (dict) --

      Amazon Security Lake supports log and event collection for natively supported Amazon Web Services. For more information, see the Amazon Security Lake User Guide.

      • sourceName (string) --

        The name for a Amazon Web Services source. This must be a Regionally unique value.

      • sourceVersion (string) --

        The version for a Amazon Web Services source. This must be a Regionally unique value.

    • customLogSource (dict) --

      Amazon Security Lake supports custom source types. For more information, see the Amazon Security Lake User Guide.

      • attributes (dict) --

        The attributes of a third-party custom source.

        • crawlerArn (string) --

          The ARN of the Glue crawler.

        • databaseArn (string) --

          The ARN of the Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/* .

        • tableArn (string) --

          The ARN of the Glue table.

      • provider (dict) --

        The details of the log provider for a third-party custom source.

        • location (string) --

          The location of the partition in the Amazon S3 bucket for Security Lake.

        • roleArn (string) --

          The ARN of the IAM role 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 you must first manually create the trust policy for this role. The IAM role name must start with the text 'Security Lake'. The IAM role must trust the logProviderAccountId to assume the role.

      • sourceName (string) --

        The name for a third-party custom source. This must be a Regionally unique value.

      • sourceVersion (string) --

        The version for a third-party custom source. This must be a Regionally unique value.

type subscriberDescription

string

param subscriberDescription

The description for your subscriber account in Security Lake.

type subscriberIdentity

dict

param subscriberIdentity

[REQUIRED]

The AWS identity used to access your data.

  • externalId (string) -- [REQUIRED]

    The external ID used to estalish trust relationship with the AWS identity.

  • principal (string) -- [REQUIRED]

    The AWS identity principal.

type subscriberName

string

param subscriberName

[REQUIRED]

The name of your Security Lake subscriber account.

type tags

list

param tags

An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string.

  • (dict) --

    A tag is a label that you can define and associate with Amazon Web Services resources, including certain types of Amazon Security Lake resources. Tags can help you identify, categorize, and manage resources in different ways, such as by owner, environment, or other criteria. You can associate tags with the following types of Security Lake resources: subscribers, and the data lake configuration for your Amazon Web Services account in individual Amazon Web Services Regions.

    A resource can have up to 50 tags. Each tag consists of a required tag key and an associated tag value . A tag key is a general label that acts as a category for a more specific tag value. Each tag key must be unique and it can have only one tag value. A tag value acts as a descriptor for a tag key. Tag keys and values are case sensitive. They can contain letters, numbers, spaces, or the following symbols: _ . : / = + @ -

    For more information, see Tagging Amazon Security Lake resources in the Amazon Security Lake User Guide .

    • key (string) -- [REQUIRED]

      The name of the tag. This is a general label that acts as a category for a more specific tag value ( value ).

    • value (string) -- [REQUIRED]

      The value that’s associated with the specified tag key ( key ). This value acts as a descriptor for the tag key. A tag value cannot be null, but it can be an empty string.

rtype

dict

returns

Response Syntax

{
    'subscriber': {
        'accessTypes': [
            'LAKEFORMATION'|'S3',
        ],
        'createdAt': datetime(2015, 1, 1),
        'resourceShareArn': 'string',
        'resourceShareName': 'string',
        'roleArn': 'string',
        's3BucketArn': 'string',
        'sources': [
            {
                'awsLogSource': {
                    'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                    'sourceVersion': 'string'
                },
                'customLogSource': {
                    'attributes': {
                        'crawlerArn': 'string',
                        'databaseArn': 'string',
                        'tableArn': 'string'
                    },
                    'provider': {
                        'location': 'string',
                        'roleArn': 'string'
                    },
                    'sourceName': 'string',
                    'sourceVersion': 'string'
                }
            },
        ],
        'subscriberArn': 'string',
        'subscriberDescription': 'string',
        'subscriberEndpoint': 'string',
        'subscriberId': 'string',
        'subscriberIdentity': {
            'externalId': 'string',
            'principal': 'string'
        },
        'subscriberName': 'string',
        'subscriberStatus': 'ACTIVE'|'DEACTIVATED'|'PENDING'|'READY',
        'updatedAt': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • subscriber (dict) --

      Retrieve information about the subscriber created using the CreateSubscriber API.

      • 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 Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as LAKEFORMATION .

        • (string) --

      • createdAt (datetime) --

        The date and time when the subscriber was created.

      • resourceShareArn (string) --

        The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share.

        This field is available only for Lake Formation subscribers created after March 8, 2023.

      • resourceShareName (string) --

        The name of the resource share.

      • roleArn (string) --

        The Amazon Resource Name (ARN) specifying the role of the subscriber.

      • s3BucketArn (string) --

        The ARN for the Amazon S3 bucket.

      • sources (list) --

        Amazon Security Lake supports log and event collection for natively supported Amazon Web 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. For a list of supported Amazon Web Services, see the Amazon Security Lake User Guide.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: awsLogSource, customLogSource. 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'}
          • awsLogSource (dict) --

            Amazon Security Lake supports log and event collection for natively supported Amazon Web Services. For more information, see the Amazon Security Lake User Guide.

            • sourceName (string) --

              The name for a Amazon Web Services source. This must be a Regionally unique value.

            • sourceVersion (string) --

              The version for a Amazon Web Services source. This must be a Regionally unique value.

          • customLogSource (dict) --

            Amazon Security Lake supports custom source types. For more information, see the Amazon Security Lake User Guide.

            • attributes (dict) --

              The attributes of a third-party custom source.

              • crawlerArn (string) --

                The ARN of the Glue crawler.

              • databaseArn (string) --

                The ARN of the Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/* .

              • tableArn (string) --

                The ARN of the Glue table.

            • provider (dict) --

              The details of the log provider for a third-party custom source.

              • location (string) --

                The location of the partition in the Amazon S3 bucket for Security Lake.

              • roleArn (string) --

                The ARN of the IAM role 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 you must first manually create the trust policy for this role. The IAM role name must start with the text 'Security Lake'. The IAM role must trust the logProviderAccountId to assume the role.

            • sourceName (string) --

              The name for a third-party custom source. This must be a Regionally unique value.

            • sourceVersion (string) --

              The version for a third-party custom source. This must be a Regionally unique value.

      • subscriberArn (string) --

        The subscriber ARN of the Amazon Security Lake subscriber account.

      • subscriberDescription (string) --

        The subscriber descriptions for a subscriber account. The description for a subscriber includes subscriberName , accountID , externalID , and subscriberId .

      • subscriberEndpoint (string) --

        The subscriber endpoint to which exception messages are posted.

      • subscriberId (string) --

        The subscriber ID of the Amazon Security Lake subscriber account.

      • subscriberIdentity (dict) --

        The AWS identity used to access your data.

        • externalId (string) --

          The external ID used to estalish trust relationship with the AWS identity.

        • principal (string) --

          The AWS identity principal.

      • subscriberName (string) --

        The name of your Amazon Security Lake subscriber account.

      • subscriberStatus (string) --

        The subscriber status of the Amazon Security Lake subscriber account.

      • updatedAt (datetime) --

        The date and time when the subscriber was last updated.

DeleteAwsLogSource (updated) Link ¶
Changes (request)
{'sources': {'sourceName': {'WAF', 'EKS_AUDIT'}}}

Removes a natively supported Amazon Web Service as an Amazon Security Lake source. You can remove a source for one or more Regions. When you remove the source, Security Lake stops collecting data from that source in the specified Regions and accounts, and subscribers can no longer consume new data from the source. However, subscribers can still consume data that Security Lake collected from the source before removal.

You can choose any source type in any Amazon Web Services Region for either accounts that are part of a trusted organization or standalone accounts.

See also: AWS API Documentation

Request Syntax

client.delete_aws_log_source(
    sources=[
        {
            'accounts': [
                'string',
            ],
            'regions': [
                'string',
            ],
            'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
            'sourceVersion': 'string'
        },
    ]
)
type sources

list

param sources

[REQUIRED]

Specify the natively-supported Amazon Web Services service to remove as a source in Security Lake.

  • (dict) --

    The Security Lake logs source configuration file describes the information needed to generate Security Lake logs.

    • accounts (list) --

      Specify the Amazon Web Services account information where you want to enable Security Lake.

      • (string) --

    • regions (list) -- [REQUIRED]

      Specify the Regions where you want to enable Security Lake.

      • (string) --

    • sourceName (string) -- [REQUIRED]

      The name for a Amazon Web Services source. This must be a Regionally unique value.

    • sourceVersion (string) --

      The version for a Amazon Web Services source. This must be a Regionally unique value.

rtype

dict

returns

Response Syntax

{
    'failed': [
        '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) --

DeleteDataLakeOrganizationConfiguration (updated) Link ¶
Changes (request)
{'autoEnableNewAccount': {'sources': {'sourceName': {'WAF', 'EKS_AUDIT'}}}}

Turns off automatic enablement of Amazon Security Lake for member accounts that are added to an organization in Organizations. Only the delegated Security Lake administrator for an organization can perform this operation. If the delegated Security Lake administrator performs this operation, new member accounts won't automatically contribute data to the data lake.

See also: AWS API Documentation

Request Syntax

client.delete_data_lake_organization_configuration(
    autoEnableNewAccount=[
        {
            'region': 'string',
            'sources': [
                {
                    'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                    'sourceVersion': 'string'
                },
            ]
        },
    ]
)
type autoEnableNewAccount

list

param autoEnableNewAccount

Turns off automatic enablement of Security Lake for member accounts that are added to an organization.

  • (dict) --

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

    • region (string) -- [REQUIRED]

      The Amazon Web Services Regions where Security Lake is automatically enabled.

    • sources (list) -- [REQUIRED]

      The Amazon Web Services sources that are automatically enabled in Security Lake.

      • (dict) --

        Amazon Security Lake can collect logs and events from natively-supported Amazon Web Services services.

        • sourceName (string) --

          The name for a Amazon Web Services source. This must be a Regionally unique value.

        • sourceVersion (string) --

          The version for a Amazon Web Services source. This must be a Regionally unique value.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

GetDataLakeOrganizationConfiguration (updated) Link ¶
Changes (response)
{'autoEnableNewAccount': {'sources': {'sourceName': {'WAF', 'EKS_AUDIT'}}}}

Retrieves the configuration that will be automatically set up for accounts added to the organization after the organization has onboarded to Amazon Security Lake. This API does not take input parameters.

See also: AWS API Documentation

Request Syntax

client.get_data_lake_organization_configuration()
rtype

dict

returns

Response Syntax

{
    'autoEnableNewAccount': [
        {
            'region': 'string',
            'sources': [
                {
                    'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                    'sourceVersion': 'string'
                },
            ]
        },
    ]
}

Response Structure

  • (dict) --

    • autoEnableNewAccount (list) --

      The configuration for new accounts.

      • (dict) --

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

        • region (string) --

          The Amazon Web Services Regions where Security Lake is automatically enabled.

        • sources (list) --

          The Amazon Web Services sources that are automatically enabled in Security Lake.

          • (dict) --

            Amazon Security Lake can collect logs and events from natively-supported Amazon Web Services services.

            • sourceName (string) --

              The name for a Amazon Web Services source. This must be a Regionally unique value.

            • sourceVersion (string) --

              The version for a Amazon Web Services source. This must be a Regionally unique value.

GetSubscriber (updated) Link ¶
Changes (response)
{'subscriber': {'sources': {'awsLogSource': {'sourceName': {'EKS_AUDIT',
                                                            'WAF'}}}}}

Retrieves the subscription information for the specified subscription ID. You can get information about a specific subscriber.

See also: AWS API Documentation

Request Syntax

client.get_subscriber(
    subscriberId='string'
)
type subscriberId

string

param subscriberId

[REQUIRED]

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

rtype

dict

returns

Response Syntax

{
    'subscriber': {
        'accessTypes': [
            'LAKEFORMATION'|'S3',
        ],
        'createdAt': datetime(2015, 1, 1),
        'resourceShareArn': 'string',
        'resourceShareName': 'string',
        'roleArn': 'string',
        's3BucketArn': 'string',
        'sources': [
            {
                'awsLogSource': {
                    'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                    'sourceVersion': 'string'
                },
                'customLogSource': {
                    'attributes': {
                        'crawlerArn': 'string',
                        'databaseArn': 'string',
                        'tableArn': 'string'
                    },
                    'provider': {
                        'location': 'string',
                        'roleArn': 'string'
                    },
                    'sourceName': 'string',
                    'sourceVersion': 'string'
                }
            },
        ],
        'subscriberArn': 'string',
        'subscriberDescription': 'string',
        'subscriberEndpoint': 'string',
        'subscriberId': 'string',
        'subscriberIdentity': {
            'externalId': 'string',
            'principal': 'string'
        },
        'subscriberName': 'string',
        'subscriberStatus': 'ACTIVE'|'DEACTIVATED'|'PENDING'|'READY',
        'updatedAt': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • subscriber (dict) --

      The subscriber information for the specified subscriber 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 Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as LAKEFORMATION .

        • (string) --

      • createdAt (datetime) --

        The date and time when the subscriber was created.

      • resourceShareArn (string) --

        The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share.

        This field is available only for Lake Formation subscribers created after March 8, 2023.

      • resourceShareName (string) --

        The name of the resource share.

      • roleArn (string) --

        The Amazon Resource Name (ARN) specifying the role of the subscriber.

      • s3BucketArn (string) --

        The ARN for the Amazon S3 bucket.

      • sources (list) --

        Amazon Security Lake supports log and event collection for natively supported Amazon Web 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. For a list of supported Amazon Web Services, see the Amazon Security Lake User Guide.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: awsLogSource, customLogSource. 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'}
          • awsLogSource (dict) --

            Amazon Security Lake supports log and event collection for natively supported Amazon Web Services. For more information, see the Amazon Security Lake User Guide.

            • sourceName (string) --

              The name for a Amazon Web Services source. This must be a Regionally unique value.

            • sourceVersion (string) --

              The version for a Amazon Web Services source. This must be a Regionally unique value.

          • customLogSource (dict) --

            Amazon Security Lake supports custom source types. For more information, see the Amazon Security Lake User Guide.

            • attributes (dict) --

              The attributes of a third-party custom source.

              • crawlerArn (string) --

                The ARN of the Glue crawler.

              • databaseArn (string) --

                The ARN of the Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/* .

              • tableArn (string) --

                The ARN of the Glue table.

            • provider (dict) --

              The details of the log provider for a third-party custom source.

              • location (string) --

                The location of the partition in the Amazon S3 bucket for Security Lake.

              • roleArn (string) --

                The ARN of the IAM role 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 you must first manually create the trust policy for this role. The IAM role name must start with the text 'Security Lake'. The IAM role must trust the logProviderAccountId to assume the role.

            • sourceName (string) --

              The name for a third-party custom source. This must be a Regionally unique value.

            • sourceVersion (string) --

              The version for a third-party custom source. This must be a Regionally unique value.

      • subscriberArn (string) --

        The subscriber ARN of the Amazon Security Lake subscriber account.

      • subscriberDescription (string) --

        The subscriber descriptions for a subscriber account. The description for a subscriber includes subscriberName , accountID , externalID , and subscriberId .

      • subscriberEndpoint (string) --

        The subscriber endpoint to which exception messages are posted.

      • subscriberId (string) --

        The subscriber ID of the Amazon Security Lake subscriber account.

      • subscriberIdentity (dict) --

        The AWS identity used to access your data.

        • externalId (string) --

          The external ID used to estalish trust relationship with the AWS identity.

        • principal (string) --

          The AWS identity principal.

      • subscriberName (string) --

        The name of your Amazon Security Lake subscriber account.

      • subscriberStatus (string) --

        The subscriber status of the Amazon Security Lake subscriber account.

      • updatedAt (datetime) --

        The date and time when the subscriber was last updated.

ListLogSources (updated) Link ¶
Changes (request, response)
Request
{'sources': {'awsLogSource': {'sourceName': {'WAF', 'EKS_AUDIT'}}}}
Response
{'sources': {'sources': {'awsLogSource': {'sourceName': {'WAF', 'EKS_AUDIT'}}}}}

Retrieves the log sources in the current Amazon Web Services Region.

See also: AWS API Documentation

Request Syntax

client.list_log_sources(
    accounts=[
        'string',
    ],
    maxResults=123,
    nextToken='string',
    regions=[
        'string',
    ],
    sources=[
        {
            'awsLogSource': {
                'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                'sourceVersion': 'string'
            },
            'customLogSource': {
                'attributes': {
                    'crawlerArn': 'string',
                    'databaseArn': 'string',
                    'tableArn': 'string'
                },
                'provider': {
                    'location': 'string',
                    'roleArn': 'string'
                },
                'sourceName': 'string',
                'sourceVersion': 'string'
            }
        },
    ]
)
type accounts

list

param accounts

The list of Amazon Web Services accounts for which log sources are displayed.

  • (string) --

type maxResults

integer

param maxResults

The maximum number of accounts for which the log sources are displayed.

type nextToken

string

param nextToken

If nextToken is returned, there are more results available. You can repeat the call using the returned token to retrieve the next page.

type regions

list

param regions

The list of Regions for which log sources are displayed.

  • (string) --

type sources

list

param sources

The list of sources for which log sources are displayed.

  • (dict) --

    The supported source types from which logs and events are collected in Amazon Security Lake. For a list of supported Amazon Web Services, see the Amazon Security Lake User Guide.

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: awsLogSource, customLogSource.

    • awsLogSource (dict) --

      Amazon Security Lake supports log and event collection for natively supported Amazon Web Services. For more information, see the Amazon Security Lake User Guide.

      • sourceName (string) --

        The name for a Amazon Web Services source. This must be a Regionally unique value.

      • sourceVersion (string) --

        The version for a Amazon Web Services source. This must be a Regionally unique value.

    • customLogSource (dict) --

      Amazon Security Lake supports custom source types. For more information, see the Amazon Security Lake User Guide.

      • attributes (dict) --

        The attributes of a third-party custom source.

        • crawlerArn (string) --

          The ARN of the Glue crawler.

        • databaseArn (string) --

          The ARN of the Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/* .

        • tableArn (string) --

          The ARN of the Glue table.

      • provider (dict) --

        The details of the log provider for a third-party custom source.

        • location (string) --

          The location of the partition in the Amazon S3 bucket for Security Lake.

        • roleArn (string) --

          The ARN of the IAM role 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 you must first manually create the trust policy for this role. The IAM role name must start with the text 'Security Lake'. The IAM role must trust the logProviderAccountId to assume the role.

      • sourceName (string) --

        The name for a third-party custom source. This must be a Regionally unique value.

      • sourceVersion (string) --

        The version for a third-party custom source. This must be a Regionally unique value.

rtype

dict

returns

Response Syntax

{
    'nextToken': 'string',
    'sources': [
        {
            'account': 'string',
            'region': 'string',
            'sources': [
                {
                    'awsLogSource': {
                        'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                        'sourceVersion': 'string'
                    },
                    'customLogSource': {
                        'attributes': {
                            'crawlerArn': 'string',
                            'databaseArn': 'string',
                            'tableArn': 'string'
                        },
                        'provider': {
                            'location': 'string',
                            'roleArn': 'string'
                        },
                        'sourceName': 'string',
                        'sourceVersion': 'string'
                    }
                },
            ]
        },
    ]
}

Response Structure

  • (dict) --

    • nextToken (string) --

      If nextToken is returned, there are more results available. You can repeat the call using the returned token to retrieve the next page.

    • sources (list) --

      The list of log sources in your organization that send data to the data lake.

      • (dict) --

        Amazon Security Lake can collect logs and events from natively-supported Amazon Web Services services and custom sources.

        • account (string) --

          Specify the account from which you want to collect logs.

        • region (string) --

          Specify the Regions from which you want to collect logs.

        • sources (list) --

          Specify the sources from which you want to collect logs.

          • (dict) --

            The supported source types from which logs and events are collected in Amazon Security Lake. For a list of supported Amazon Web Services, see the Amazon Security Lake User Guide.

            Note

            This is a Tagged Union structure. Only one of the following top level keys will be set: awsLogSource, customLogSource. 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'}
            • awsLogSource (dict) --

              Amazon Security Lake supports log and event collection for natively supported Amazon Web Services. For more information, see the Amazon Security Lake User Guide.

              • sourceName (string) --

                The name for a Amazon Web Services source. This must be a Regionally unique value.

              • sourceVersion (string) --

                The version for a Amazon Web Services source. This must be a Regionally unique value.

            • customLogSource (dict) --

              Amazon Security Lake supports custom source types. For more information, see the Amazon Security Lake User Guide.

              • attributes (dict) --

                The attributes of a third-party custom source.

                • crawlerArn (string) --

                  The ARN of the Glue crawler.

                • databaseArn (string) --

                  The ARN of the Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/* .

                • tableArn (string) --

                  The ARN of the Glue table.

              • provider (dict) --

                The details of the log provider for a third-party custom source.

                • location (string) --

                  The location of the partition in the Amazon S3 bucket for Security Lake.

                • roleArn (string) --

                  The ARN of the IAM role 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 you must first manually create the trust policy for this role. The IAM role name must start with the text 'Security Lake'. The IAM role must trust the logProviderAccountId to assume the role.

              • sourceName (string) --

                The name for a third-party custom source. This must be a Regionally unique value.

              • sourceVersion (string) --

                The version for a third-party custom source. This must be a Regionally unique value.

ListSubscribers (updated) Link ¶
Changes (response)
{'subscribers': {'sources': {'awsLogSource': {'sourceName': {'EKS_AUDIT',
                                                             'WAF'}}}}}

List all subscribers for the specific Amazon Security Lake account ID. You can retrieve a list of subscriptions associated with a specific organization or Amazon Web Services account.

See also: AWS API Documentation

Request Syntax

client.list_subscribers(
    maxResults=123,
    nextToken='string'
)
type maxResults

integer

param maxResults

The maximum number of accounts for which the configuration is displayed.

type nextToken

string

param nextToken

If nextToken is returned, there are more results available. You can repeat the call using the returned token to retrieve the next page.

rtype

dict

returns

Response Syntax

{
    'nextToken': 'string',
    'subscribers': [
        {
            'accessTypes': [
                'LAKEFORMATION'|'S3',
            ],
            'createdAt': datetime(2015, 1, 1),
            'resourceShareArn': 'string',
            'resourceShareName': 'string',
            'roleArn': 'string',
            's3BucketArn': 'string',
            'sources': [
                {
                    'awsLogSource': {
                        'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                        'sourceVersion': 'string'
                    },
                    'customLogSource': {
                        'attributes': {
                            'crawlerArn': 'string',
                            'databaseArn': 'string',
                            'tableArn': 'string'
                        },
                        'provider': {
                            'location': 'string',
                            'roleArn': 'string'
                        },
                        'sourceName': 'string',
                        'sourceVersion': 'string'
                    }
                },
            ],
            'subscriberArn': 'string',
            'subscriberDescription': 'string',
            'subscriberEndpoint': 'string',
            'subscriberId': 'string',
            'subscriberIdentity': {
                'externalId': 'string',
                'principal': 'string'
            },
            'subscriberName': 'string',
            'subscriberStatus': '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 repeat the call using the returned token to retrieve the next page.

    • subscribers (list) --

      The subscribers available for the specified Security Lake account ID.

      • (dict) --

        Provides details about the Amazon Security Lake account subscription. Subscribers are notified of new objects for a source as the data is written to your Amazon S3 bucket for 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 Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as LAKEFORMATION .

          • (string) --

        • createdAt (datetime) --

          The date and time when the subscriber was created.

        • resourceShareArn (string) --

          The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share.

          This field is available only for Lake Formation subscribers created after March 8, 2023.

        • resourceShareName (string) --

          The name of the resource share.

        • roleArn (string) --

          The Amazon Resource Name (ARN) specifying the role of the subscriber.

        • s3BucketArn (string) --

          The ARN for the Amazon S3 bucket.

        • sources (list) --

          Amazon Security Lake supports log and event collection for natively supported Amazon Web 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. For a list of supported Amazon Web Services, see the Amazon Security Lake User Guide.

            Note

            This is a Tagged Union structure. Only one of the following top level keys will be set: awsLogSource, customLogSource. 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'}
            • awsLogSource (dict) --

              Amazon Security Lake supports log and event collection for natively supported Amazon Web Services. For more information, see the Amazon Security Lake User Guide.

              • sourceName (string) --

                The name for a Amazon Web Services source. This must be a Regionally unique value.

              • sourceVersion (string) --

                The version for a Amazon Web Services source. This must be a Regionally unique value.

            • customLogSource (dict) --

              Amazon Security Lake supports custom source types. For more information, see the Amazon Security Lake User Guide.

              • attributes (dict) --

                The attributes of a third-party custom source.

                • crawlerArn (string) --

                  The ARN of the Glue crawler.

                • databaseArn (string) --

                  The ARN of the Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/* .

                • tableArn (string) --

                  The ARN of the Glue table.

              • provider (dict) --

                The details of the log provider for a third-party custom source.

                • location (string) --

                  The location of the partition in the Amazon S3 bucket for Security Lake.

                • roleArn (string) --

                  The ARN of the IAM role 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 you must first manually create the trust policy for this role. The IAM role name must start with the text 'Security Lake'. The IAM role must trust the logProviderAccountId to assume the role.

              • sourceName (string) --

                The name for a third-party custom source. This must be a Regionally unique value.

              • sourceVersion (string) --

                The version for a third-party custom source. This must be a Regionally unique value.

        • subscriberArn (string) --

          The subscriber ARN of the Amazon Security Lake subscriber account.

        • subscriberDescription (string) --

          The subscriber descriptions for a subscriber account. The description for a subscriber includes subscriberName , accountID , externalID , and subscriberId .

        • subscriberEndpoint (string) --

          The subscriber endpoint to which exception messages are posted.

        • subscriberId (string) --

          The subscriber ID of the Amazon Security Lake subscriber account.

        • subscriberIdentity (dict) --

          The AWS identity used to access your data.

          • externalId (string) --

            The external ID used to estalish trust relationship with the AWS identity.

          • principal (string) --

            The AWS identity principal.

        • subscriberName (string) --

          The name of your Amazon Security Lake subscriber account.

        • subscriberStatus (string) --

          The subscriber status of the Amazon Security Lake subscriber account.

        • updatedAt (datetime) --

          The date and time when the subscriber was last updated.

UpdateDataLake (updated) Link ¶
Changes (request)
{'metaStoreManagerRoleArn': 'string'}

Specifies where to store your security data and for how long. You can add a rollup Region to consolidate data from multiple Amazon Web Services Regions.

See also: AWS API Documentation

Request Syntax

client.update_data_lake(
    configurations=[
        {
            'encryptionConfiguration': {
                'kmsKeyId': 'string'
            },
            'lifecycleConfiguration': {
                'expiration': {
                    'days': 123
                },
                'transitions': [
                    {
                        'days': 123,
                        'storageClass': 'string'
                    },
                ]
            },
            'region': 'string',
            'replicationConfiguration': {
                'regions': [
                    'string',
                ],
                'roleArn': 'string'
            }
        },
    ],
    metaStoreManagerRoleArn='string'
)
type configurations

list

param configurations

[REQUIRED]

Specify the Region or Regions that will contribute data to the rollup region.

  • (dict) --

    Provides details of Amazon Security Lake object.

    • encryptionConfiguration (dict) --

      Provides encryption details of Amazon Security Lake object.

      • kmsKeyId (string) --

        The id of KMS encryption key used by Amazon Security Lake to encrypt the Security Lake object.

    • lifecycleConfiguration (dict) --

      Provides lifecycle details of Amazon Security Lake object.

      • expiration (dict) --

        Provides data expiration details of Amazon Security Lake object.

        • days (integer) --

          Number of days before data expires in the Amazon Security Lake object.

      • transitions (list) --

        Provides data storage transition details of Amazon Security Lake object.

        • (dict) --

          Provide transition lifecycle details of Amazon Security Lake object.

          • days (integer) --

            Number of days before data transitions to a different S3 Storage Class in the Amazon Security Lake object.

          • storageClass (string) --

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

    • region (string) -- [REQUIRED]

      The Amazon Web Services Regions where Security Lake is automatically enabled.

    • replicationConfiguration (dict) --

      Provides replication details of Amazon Security Lake object.

      • regions (list) --

        Specifies one or more centralized rollup Regions. The Amazon Web Services Region specified in the region parameter of the CreateDataLake or UpdateDataLake operations contributes data to the rollup Region or Regions specified in this parameter.

        Replication enables automatic, asynchronous copying of objects across Amazon S3 buckets. S3 buckets that are configured for object replication can be owned by the same 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 Regions or within the same Region as the source bucket.

        • (string) --

      • roleArn (string) --

        Replication settings for the Amazon S3 buckets. This parameter uses the Identity and Access Management (IAM) role you created that is managed by Security Lake, to ensure the replication setting is correct.

type metaStoreManagerRoleArn

string

param metaStoreManagerRoleArn

The Amazon Resource Name (ARN) used to create and update the Glue table. This table contains partitions generated by the ingestion and normalization of Amazon Web Services log sources and custom sources.

rtype

dict

returns

Response Syntax

{
    'dataLakes': [
        {
            'createStatus': 'INITIALIZED'|'PENDING'|'COMPLETED'|'FAILED',
            'dataLakeArn': 'string',
            'encryptionConfiguration': {
                'kmsKeyId': 'string'
            },
            'lifecycleConfiguration': {
                'expiration': {
                    'days': 123
                },
                'transitions': [
                    {
                        'days': 123,
                        'storageClass': 'string'
                    },
                ]
            },
            'region': 'string',
            'replicationConfiguration': {
                'regions': [
                    'string',
                ],
                'roleArn': 'string'
            },
            's3BucketArn': 'string',
            'updateStatus': {
                'exception': {
                    'code': 'string',
                    'reason': 'string'
                },
                'requestId': 'string',
                'status': 'INITIALIZED'|'PENDING'|'COMPLETED'|'FAILED'
            }
        },
    ]
}

Response Structure

  • (dict) --

    • dataLakes (list) --

      The created Security Lake configuration object.

      • (dict) --

        Provides details of Amazon Security Lake object.

        • createStatus (string) --

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

        • dataLakeArn (string) --

          The Amazon Resource Name (ARN) created by you to provide to the subscriber. For more information about ARNs and how to use them in policies, see the Amazon Security Lake User Guide.

        • encryptionConfiguration (dict) --

          Provides encryption details of Amazon Security Lake object.

          • kmsKeyId (string) --

            The id of KMS encryption key used by Amazon Security Lake to encrypt the Security Lake object.

        • lifecycleConfiguration (dict) --

          Provides lifecycle details of Amazon Security Lake object.

          • expiration (dict) --

            Provides data expiration details of Amazon Security Lake object.

            • days (integer) --

              Number of days before data expires in the Amazon Security Lake object.

          • transitions (list) --

            Provides data storage transition details of Amazon Security Lake object.

            • (dict) --

              Provide transition lifecycle details of Amazon Security Lake object.

              • days (integer) --

                Number of days before data transitions to a different S3 Storage Class in the Amazon Security Lake object.

              • storageClass (string) --

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

        • region (string) --

          The Amazon Web Services Regions where Security Lake is enabled.

        • replicationConfiguration (dict) --

          Provides replication details of Amazon Security Lake object.

          • regions (list) --

            Specifies one or more centralized rollup Regions. The Amazon Web Services Region specified in the region parameter of the CreateDataLake or UpdateDataLake operations contributes data to the rollup Region or Regions specified in this parameter.

            Replication enables automatic, asynchronous copying of objects across Amazon S3 buckets. S3 buckets that are configured for object replication can be owned by the same 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 Regions or within the same Region as the source bucket.

            • (string) --

          • roleArn (string) --

            Replication settings for the Amazon S3 buckets. This parameter uses the Identity and Access Management (IAM) role you created that is managed by Security Lake, to ensure the replication setting is correct.

        • s3BucketArn (string) --

          The ARN for the Amazon Security Lake Amazon S3 bucket.

        • updateStatus (dict) --

          The status of the last UpdateDataLake or DeleteDataLake API request.

          • exception (dict) --

            The details of the last UpdateDataLake or DeleteDataLake API request which failed.

            • code (string) --

              The reason code for the exception of the last UpdateDataLake or DeleteDataLake API request.

            • reason (string) --

              The reason for the exception of the last UpdateDataLake or DeleteDataLake API request.

          • requestId (string) --

            The unique ID for the last UpdateDataLake or DeleteDataLake API request.

          • status (string) --

            The status of the last UpdateDataLake or DeleteDataLake API request that was requested.

UpdateSubscriber (updated) Link ¶
Changes (request, response)
Request
{'sources': {'awsLogSource': {'sourceName': {'WAF', 'EKS_AUDIT'}}}}
Response
{'subscriber': {'sources': {'awsLogSource': {'sourceName': {'EKS_AUDIT',
                                                            'WAF'}}}}}

Updates an existing subscription for the given Amazon Security Lake account ID. You can update a subscriber by changing the sources that the subscriber consumes data from.

See also: AWS API Documentation

Request Syntax

client.update_subscriber(
    sources=[
        {
            'awsLogSource': {
                'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                'sourceVersion': 'string'
            },
            'customLogSource': {
                'attributes': {
                    'crawlerArn': 'string',
                    'databaseArn': 'string',
                    'tableArn': 'string'
                },
                'provider': {
                    'location': 'string',
                    'roleArn': 'string'
                },
                'sourceName': 'string',
                'sourceVersion': 'string'
            }
        },
    ],
    subscriberDescription='string',
    subscriberId='string',
    subscriberIdentity={
        'externalId': 'string',
        'principal': 'string'
    },
    subscriberName='string'
)
type sources

list

param sources

The supported Amazon Web Services from which logs and events are collected. For the list of supported Amazon Web Services, see the Amazon Security Lake User Guide.

  • (dict) --

    The supported source types from which logs and events are collected in Amazon Security Lake. For a list of supported Amazon Web Services, see the Amazon Security Lake User Guide.

    Note

    This is a Tagged Union structure. Only one of the following top level keys can be set: awsLogSource, customLogSource.

    • awsLogSource (dict) --

      Amazon Security Lake supports log and event collection for natively supported Amazon Web Services. For more information, see the Amazon Security Lake User Guide.

      • sourceName (string) --

        The name for a Amazon Web Services source. This must be a Regionally unique value.

      • sourceVersion (string) --

        The version for a Amazon Web Services source. This must be a Regionally unique value.

    • customLogSource (dict) --

      Amazon Security Lake supports custom source types. For more information, see the Amazon Security Lake User Guide.

      • attributes (dict) --

        The attributes of a third-party custom source.

        • crawlerArn (string) --

          The ARN of the Glue crawler.

        • databaseArn (string) --

          The ARN of the Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/* .

        • tableArn (string) --

          The ARN of the Glue table.

      • provider (dict) --

        The details of the log provider for a third-party custom source.

        • location (string) --

          The location of the partition in the Amazon S3 bucket for Security Lake.

        • roleArn (string) --

          The ARN of the IAM role 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 you must first manually create the trust policy for this role. The IAM role name must start with the text 'Security Lake'. The IAM role must trust the logProviderAccountId to assume the role.

      • sourceName (string) --

        The name for a third-party custom source. This must be a Regionally unique value.

      • sourceVersion (string) --

        The version for a third-party custom source. This must be a Regionally unique value.

type subscriberDescription

string

param subscriberDescription

The description of the Security Lake account subscriber.

type subscriberId

string

param subscriberId

[REQUIRED]

A value created by Security Lake that uniquely identifies your subscription.

type subscriberIdentity

dict

param subscriberIdentity

The AWS identity used to access your data.

  • externalId (string) -- [REQUIRED]

    The external ID used to estalish trust relationship with the AWS identity.

  • principal (string) -- [REQUIRED]

    The AWS identity principal.

type subscriberName

string

param subscriberName

The name of the Security Lake account subscriber.

rtype

dict

returns

Response Syntax

{
    'subscriber': {
        'accessTypes': [
            'LAKEFORMATION'|'S3',
        ],
        'createdAt': datetime(2015, 1, 1),
        'resourceShareArn': 'string',
        'resourceShareName': 'string',
        'roleArn': 'string',
        's3BucketArn': 'string',
        'sources': [
            {
                'awsLogSource': {
                    'sourceName': 'ROUTE53'|'VPC_FLOW'|'SH_FINDINGS'|'CLOUD_TRAIL_MGMT'|'LAMBDA_EXECUTION'|'S3_DATA'|'EKS_AUDIT'|'WAF',
                    'sourceVersion': 'string'
                },
                'customLogSource': {
                    'attributes': {
                        'crawlerArn': 'string',
                        'databaseArn': 'string',
                        'tableArn': 'string'
                    },
                    'provider': {
                        'location': 'string',
                        'roleArn': 'string'
                    },
                    'sourceName': 'string',
                    'sourceVersion': 'string'
                }
            },
        ],
        'subscriberArn': 'string',
        'subscriberDescription': 'string',
        'subscriberEndpoint': 'string',
        'subscriberId': 'string',
        'subscriberIdentity': {
            'externalId': 'string',
            'principal': 'string'
        },
        'subscriberName': 'string',
        'subscriberStatus': 'ACTIVE'|'DEACTIVATED'|'PENDING'|'READY',
        'updatedAt': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • subscriber (dict) --

      The updated subscriber information.

      • 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 Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as LAKEFORMATION .

        • (string) --

      • createdAt (datetime) --

        The date and time when the subscriber was created.

      • resourceShareArn (string) --

        The Amazon Resource Name (ARN) which uniquely defines the AWS RAM resource share. Before accepting the RAM resource share invitation, you can view details related to the RAM resource share.

        This field is available only for Lake Formation subscribers created after March 8, 2023.

      • resourceShareName (string) --

        The name of the resource share.

      • roleArn (string) --

        The Amazon Resource Name (ARN) specifying the role of the subscriber.

      • s3BucketArn (string) --

        The ARN for the Amazon S3 bucket.

      • sources (list) --

        Amazon Security Lake supports log and event collection for natively supported Amazon Web 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. For a list of supported Amazon Web Services, see the Amazon Security Lake User Guide.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: awsLogSource, customLogSource. 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'}
          • awsLogSource (dict) --

            Amazon Security Lake supports log and event collection for natively supported Amazon Web Services. For more information, see the Amazon Security Lake User Guide.

            • sourceName (string) --

              The name for a Amazon Web Services source. This must be a Regionally unique value.

            • sourceVersion (string) --

              The version for a Amazon Web Services source. This must be a Regionally unique value.

          • customLogSource (dict) --

            Amazon Security Lake supports custom source types. For more information, see the Amazon Security Lake User Guide.

            • attributes (dict) --

              The attributes of a third-party custom source.

              • crawlerArn (string) --

                The ARN of the Glue crawler.

              • databaseArn (string) --

                The ARN of the Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/* .

              • tableArn (string) --

                The ARN of the Glue table.

            • provider (dict) --

              The details of the log provider for a third-party custom source.

              • location (string) --

                The location of the partition in the Amazon S3 bucket for Security Lake.

              • roleArn (string) --

                The ARN of the IAM role 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 you must first manually create the trust policy for this role. The IAM role name must start with the text 'Security Lake'. The IAM role must trust the logProviderAccountId to assume the role.

            • sourceName (string) --

              The name for a third-party custom source. This must be a Regionally unique value.

            • sourceVersion (string) --

              The version for a third-party custom source. This must be a Regionally unique value.

      • subscriberArn (string) --

        The subscriber ARN of the Amazon Security Lake subscriber account.

      • subscriberDescription (string) --

        The subscriber descriptions for a subscriber account. The description for a subscriber includes subscriberName , accountID , externalID , and subscriberId .

      • subscriberEndpoint (string) --

        The subscriber endpoint to which exception messages are posted.

      • subscriberId (string) --

        The subscriber ID of the Amazon Security Lake subscriber account.

      • subscriberIdentity (dict) --

        The AWS identity used to access your data.

        • externalId (string) --

          The external ID used to estalish trust relationship with the AWS identity.

        • principal (string) --

          The AWS identity principal.

      • subscriberName (string) --

        The name of your Amazon Security Lake subscriber account.

      • subscriberStatus (string) --

        The subscriber status of the Amazon Security Lake subscriber account.

      • updatedAt (datetime) --

        The date and time when the subscriber was last updated.