amazonka-securitylake-2.0: Amazon Security Lake SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.SecurityLake.CreateCustomLogSource

Description

Adds a third-party custom source in Amazon Security Lake, from the Amazon Web Services 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 IAM role to invoke Glue crawler, use this API to add a custom source name in Security Lake. This operation creates a partition in the Amazon S3 bucket for Security Lake as the target location for log files from the custom source in addition to an associated Glue table and an Glue crawler.

Synopsis

Creating a Request

data CreateCustomLogSource Source #

See: newCreateCustomLogSource smart constructor.

Constructors

CreateCustomLogSource' 

Fields

  • customSourceName :: Text

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

  • eventClass :: OcsfEventClass

    The Open Cybersecurity Schema Framework (OCSF) event class which describes the type of data that the custom source will send to Security Lake.

  • glueInvocationRoleArn :: Text

    The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role to be used by the Glue crawler. The recommended IAM policies are:

    • The managed policy AWSGlueServiceRole
    • A custom policy granting access to your Amazon S3 Data Lake
  • logProviderAccountId :: Text

    The Amazon Web Services account ID of the custom source that will write logs and events into the Amazon S3 Data Lake.

Instances

Instances details
ToJSON CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

ToHeaders CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

ToPath CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

ToQuery CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

AWSRequest CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

Associated Types

type AWSResponse CreateCustomLogSource #

Generic CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

Associated Types

type Rep CreateCustomLogSource :: Type -> Type #

Read CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

Show CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

NFData CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

Methods

rnf :: CreateCustomLogSource -> () #

Eq CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

Hashable CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

type AWSResponse CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

type Rep CreateCustomLogSource Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

type Rep CreateCustomLogSource = D1 ('MetaData "CreateCustomLogSource" "Amazonka.SecurityLake.CreateCustomLogSource" "amazonka-securitylake-2.0-4WRm07ESU278sNrKhxoCOb" 'False) (C1 ('MetaCons "CreateCustomLogSource'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "customSourceName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "eventClass") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 OcsfEventClass)) :*: (S1 ('MetaSel ('Just "glueInvocationRoleArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "logProviderAccountId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text))))

newCreateCustomLogSource Source #

Create a value of CreateCustomLogSource with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:customSourceName:CreateCustomLogSource', createCustomLogSource_customSourceName - The name for a third-party custom source. This must be a Regionally unique value.

CreateCustomLogSource, createCustomLogSource_eventClass - The Open Cybersecurity Schema Framework (OCSF) event class which describes the type of data that the custom source will send to Security Lake.

$sel:glueInvocationRoleArn:CreateCustomLogSource', createCustomLogSource_glueInvocationRoleArn - The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role to be used by the Glue crawler. The recommended IAM policies are:

  • The managed policy AWSGlueServiceRole
  • A custom policy granting access to your Amazon S3 Data Lake

$sel:logProviderAccountId:CreateCustomLogSource', createCustomLogSource_logProviderAccountId - The Amazon Web Services account ID of the custom source that will write logs and events into the Amazon S3 Data Lake.

Request Lenses

createCustomLogSource_customSourceName :: Lens' CreateCustomLogSource Text Source #

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

createCustomLogSource_eventClass :: Lens' CreateCustomLogSource OcsfEventClass Source #

The Open Cybersecurity Schema Framework (OCSF) event class which describes the type of data that the custom source will send to Security Lake.

createCustomLogSource_glueInvocationRoleArn :: Lens' CreateCustomLogSource Text Source #

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role to be used by the Glue crawler. The recommended IAM policies are:

  • The managed policy AWSGlueServiceRole
  • A custom policy granting access to your Amazon S3 Data Lake

createCustomLogSource_logProviderAccountId :: Lens' CreateCustomLogSource Text Source #

The Amazon Web Services account ID of the custom source that will write logs and events into the Amazon S3 Data Lake.

Destructuring the Response

data CreateCustomLogSourceResponse Source #

See: newCreateCustomLogSourceResponse smart constructor.

Constructors

CreateCustomLogSourceResponse' 

Fields

  • httpStatus :: Int

    The response's http status code.

  • customDataLocation :: Text

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

  • glueCrawlerName :: Text

    The name of the Glue crawler.

  • glueDatabaseName :: Text

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

  • glueTableName :: Text

    The table name of the Glue crawler.

  • logProviderAccessRoleArn :: Text

    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.

Instances

Instances details
Generic CreateCustomLogSourceResponse Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

Associated Types

type Rep CreateCustomLogSourceResponse :: Type -> Type #

Read CreateCustomLogSourceResponse Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

Show CreateCustomLogSourceResponse Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

NFData CreateCustomLogSourceResponse Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

Eq CreateCustomLogSourceResponse Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

type Rep CreateCustomLogSourceResponse Source # 
Instance details

Defined in Amazonka.SecurityLake.CreateCustomLogSource

type Rep CreateCustomLogSourceResponse = D1 ('MetaData "CreateCustomLogSourceResponse" "Amazonka.SecurityLake.CreateCustomLogSource" "amazonka-securitylake-2.0-4WRm07ESU278sNrKhxoCOb" 'False) (C1 ('MetaCons "CreateCustomLogSourceResponse'" 'PrefixI 'True) ((S1 ('MetaSel ('Just "httpStatus") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int) :*: (S1 ('MetaSel ('Just "customDataLocation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "glueCrawlerName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text))) :*: (S1 ('MetaSel ('Just "glueDatabaseName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "glueTableName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "logProviderAccessRoleArn") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)))))

newCreateCustomLogSourceResponse Source #

Create a value of CreateCustomLogSourceResponse with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:httpStatus:CreateCustomLogSourceResponse', createCustomLogSourceResponse_httpStatus - The response's http status code.

$sel:customDataLocation:CreateCustomLogSourceResponse', createCustomLogSourceResponse_customDataLocation - The location of the partition in the Amazon S3 bucket for Security Lake.

$sel:glueCrawlerName:CreateCustomLogSourceResponse', createCustomLogSourceResponse_glueCrawlerName - The name of the Glue crawler.

$sel:glueDatabaseName:CreateCustomLogSourceResponse', createCustomLogSourceResponse_glueDatabaseName - The Glue database where results are written, such as: arn:aws:daylight:us-east-1::database/sometable/*.

$sel:glueTableName:CreateCustomLogSourceResponse', createCustomLogSourceResponse_glueTableName - The table name of the Glue crawler.

$sel:logProviderAccessRoleArn:CreateCustomLogSourceResponse', createCustomLogSourceResponse_logProviderAccessRoleArn - 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.

Response Lenses

createCustomLogSourceResponse_customDataLocation :: Lens' CreateCustomLogSourceResponse Text Source #

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

createCustomLogSourceResponse_glueDatabaseName :: Lens' CreateCustomLogSourceResponse Text Source #

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

createCustomLogSourceResponse_logProviderAccessRoleArn :: Lens' CreateCustomLogSourceResponse Text Source #

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.