メインコンテンツまでスキップ

AWS CloudTrail

備考

プレビュー

Lakewatchはプライベートプレビュー段階です。アクセスをリクエストするには、Databricksアカウントチームにお問い合わせください。

概要​

AWS CloudTrailは、AWSインフラストラクチャ全体のアカウントアクティビティとAPI使用状況を記録します。Lakewatchは、Auto Loaderを使用してクラウドストレージ(Amazon S3)からCloudTrailログを取り込み、組み込みパーサーでスキーマ化します。CloudTrailはクラウドストレージソースであり、APIコネクタではありません。

CloudTrail Logsのオンボード​

CloudTrailを取り込むには、Amazon S3からCloudTrailログを読み取るクラウドストレージデータソースを作成し、取り込むCloudTrailオブジェクトと一致する組み込みパーサーをアタッチして、イベントがスキーマ化された解析済みテーブルに書き込まれるようにします。前提条件、Unity Catalogのアクセス権、およびデータソース設定の全ステップについては、「クラウドストレージ」を参照してください。

解析済みのスキーマと観測値​

CloudTrailは3種類のオブジェクトをAmazon S3に配信し、Lakewatchはそれぞれの組み込みパーサーを提供します。データソースが取り込むオブジェクトと一致するパーサーを接続します:

  • aws_cloudtrail :標準のCloudTrail管理、データ、およびネットワークアクティビティイベント。
  • aws_cloudtrail_digest : Logsの整合性検証のためのハッシュ値とともに、前時間に配信されたLogsをリストするダイジェストファイル。
  • aws_cloudtrail_insight : CloudTrail 知見 イベント。珍しい API コールレート アクティビティを記録します。

解析されたすべてのテーブルには、Lakewatch管理列も保持されます。

  • lw_id:Lakewatchが主キーとして使用する非null文字列。増分読み取り全体の重複排除をサポートします。
  • time: NULLではないイベントのTimestamp。
  • lw_meta: 標準のLakewatch処理メタデータ。
  • lw_observables: パーサーでセキュリティ監視可能としてマークされたフィールドから抽出された値。

情報については、 パーサー リファレンスを参照してください。

aws_cloudtrail​

標準のCloudTrailイベントをスキーマ化します。eventTimeフィールドからtimeを解析します。

解析されたテーブルスキーマ

aws_cloudtrailパーサーは、以下の列(パーサー定義から生成)を書き込みます。

列

データ型

additionalEventData

VARIANT

apiVersion

STRING

awsRegion

STRING

errorCode

STRING

errorMessage

STRING

eventID

STRING

eventName

STRING

eventSource

STRING

time

TIMESTAMP

eventType

STRING

eventVersion

STRING

managementEvent

BOOLEAN

readOnly

BOOLEAN

recipientAccountId

STRING

requestID

STRING

requestParameters

VARIANT

resources

ARRAY<STRUCT<arn: STRING, accountId: STRING, type: STRING>>

responseElements

VARIANT

serviceEventDetails

VARIANT

sharedEventID

STRING

sourceIPAddress

STRING

userAgent

STRING

userIdentity

STRUCT<type: STRING, principalId: STRING, arn: STRING, accountId: STRING, accessKeyId: STRING, userName: STRING, sessionContext: STRUCT<attributes: STRUCT<mfaAuthenticated: STRING, creationDate: STRING>, sessionIssuer: STRUCT<type: STRING, principalId: STRING, arn: STRING, accountId: STRING, userName: STRING>, webIdFederationData: STRUCT<federatedProvider: STRING, attributes: VARIANT>, ec2RoleDelivery: STRING, sourceIdentity: STRING>, invokedBy: STRING, identityProvider: STRING, onBehalfOf: STRUCT<userId: STRING, identityStoreArn: STRING>, inScopeOf: STRUCT<sourceArn: STRING, sourceAccount: STRING, issuerType: STRING, credentialsIssuedTo: STRING>, credentialId: STRING>

vpcEndpointId

STRING

eventCategory

STRING

sessionCredentialFromConsole

BOOLEAN

edgeDeviceDetails

VARIANT

tlsDetails

STRUCT<tlsVersion: STRING, cipherSuite: STRING, clientProvidedHostHeader: STRING>

addendum

STRUCT<reason: STRING, updatedFields: STRING, originalRequestID: STRING, originalEventID: STRING>

列

データ型

additionalEventData

VARIANT

apiVersion

STRING

awsRegion

STRING

errorCode

STRING

errorMessage

STRING

eventID

STRING

eventName

STRING

eventSource

STRING

time

TIMESTAMP

eventType

STRING

eventVersion

STRING

managementEvent

BOOLEAN

readOnly

BOOLEAN

recipientAccountId

STRING

requestID

STRING

requestParameters

VARIANT

resources

ARRAY<STRUCT<arn: STRING, accountId: STRING, type: STRING>>

responseElements

VARIANT

serviceEventDetails

VARIANT

sharedEventID

STRING

sourceIPAddress

STRING

userAgent

STRING

userIdentity

STRUCT<type: STRING, principalId: STRING, arn: STRING, accountId: STRING, accessKeyId: STRING, userName: STRING, sessionContext: STRUCT<attributes: STRUCT<mfaAuthenticated: STRING, creationDate: STRING>, sessionIssuer: STRUCT<type: STRING, principalId: STRING, arn: STRING, accountId: STRING, userName: STRING>, webIdFederationData: STRUCT<federatedProvider: STRING, attributes: VARIANT>, ec2RoleDelivery: STRING, sourceIdentity: STRING>, invokedBy: STRING, identityProvider: STRING, onBehalfOf: STRUCT<userId: STRING, identityStoreArn: STRING>, inScopeOf: STRUCT<sourceArn: STRING, sourceAccount: STRING, issuerType: STRING, credentialsIssuedTo: STRING>, credentialId: STRING>

vpcEndpointId

STRING

eventCategory

STRING

sessionCredentialFromConsole

BOOLEAN

edgeDeviceDetails

VARIANT

tlsDetails

STRUCT<tlsVersion: STRING, cipherSuite: STRING, clientProvidedHostHeader: STRING>

addendum

STRUCT<reason: STRING, updatedFields: STRING, originalRequestID: STRING, originalEventID: STRING>

パーサーのオブザーバブル

パーサーは、次のフィールドをlw_observablesに抽出します(パーサー定義から生成)。

フィールド

可観測項目

recipientAccountId

aws_account_id

resources[].arn

aws_arn

resources[].accountId

aws_account_id

sourceIPAddress

hostname

userIdentity.principalId

actor_id

userIdentity.arn

aws_arn

userIdentity.accountId

aws_account_id

userIdentity.accessKeyId

trace_id

userIdentity.userName

username

userIdentity.sessionContext.sessionIssuer.principalId

actor_id

userIdentity.sessionContext.sessionIssuer.arn

aws_arn

userIdentity.sessionContext.sessionIssuer.accountId

aws_account_id

userIdentity.sessionContext.sessionIssuer.userName

username

userIdentity.sessionContext.webIdFederationData.federatedProvider

aws_arn

userIdentity.onBehalfOf.identityStoreArn

aws_arn

userIdentity.inScopeOf.sourceArn

aws_arn

userIdentity.inScopeOf.sourceAccount

aws_account_id

フィールド

可観測項目

recipientAccountId

aws_account_id

resources[].arn

aws_arn

resources[].accountId

aws_account_id

sourceIPAddress

hostname

userIdentity.principalId

actor_id

userIdentity.arn

aws_arn

userIdentity.accountId

aws_account_id

userIdentity.accessKeyId

trace_id

userIdentity.userName

username

userIdentity.sessionContext.sessionIssuer.principalId

actor_id

userIdentity.sessionContext.sessionIssuer.arn

aws_arn

userIdentity.sessionContext.sessionIssuer.accountId

aws_account_id

userIdentity.sessionContext.sessionIssuer.userName

username

userIdentity.sessionContext.webIdFederationData.federatedProvider

aws_arn

userIdentity.onBehalfOf.identityStoreArn

aws_arn

userIdentity.inScopeOf.sourceArn

aws_arn

userIdentity.inScopeOf.sourceAccount

aws_account_id

次の VARIANT フィールドは、入れ子になったキー名に一致することによって可観測項目がスキャンされます。それぞれから抽出される可観測項目の種類:

フィールド

スキャンされた観測可能タイプ

additionalEventData

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

requestParameters

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

responseElements

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

serviceEventDetails

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

userIdentity.sessionContext.webIdFederationData.attributes

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

フィールド

スキャンされた観測可能タイプ

additionalEventData

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

requestParameters

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

responseElements

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

serviceEventDetails

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

userIdentity.sessionContext.webIdFederationData.attributes

actor_id、aws_account_id、aws_arn、aws_instance_id、domain、ip、resource_tag、trace_id、 username

aws_cloudtrail_digest​

ログファイルの整合性検証をサポートするCloudTrailダイジェストファイルをスキーマ化します。digestEndTimeフィールドからtimeを解析します。

解析されたテーブルスキーマ

aws_cloudtrail_digestパーサーは、以下の列(パーサー定義から生成)を書き込みます。

列

データ型

awsAccountId

STRING

digestStartTime

TIMESTAMP

digestS3Bucket

STRING

digestS3Object

STRING

newestEventTime

TIMESTAMP

oldestEventTime

TIMESTAMP

previousDigestS3Bucket

STRING

previousDigestS3Object

STRING

previousDigestHashValue

STRING

previousDigestHashAlgorithm

STRING

previousDigestSignature

STRING

digestPublicKeyFingerprint

STRING

digestSignatureAlgorithm

STRING

logFiles

ARRAY<STRUCT<s3Bucket: STRING, s3Object: STRING, hashValue: STRING, hashAlgorithm: STRING, newestEventTime: TIMESTAMP, oldestEventTime: TIMESTAMP>>

time

TIMESTAMP

列

データ型

awsAccountId

STRING

digestStartTime

TIMESTAMP

digestS3Bucket

STRING

digestS3Object

STRING

newestEventTime

TIMESTAMP

oldestEventTime

TIMESTAMP

previousDigestS3Bucket

STRING

previousDigestS3Object

STRING

previousDigestHashValue

STRING

previousDigestHashAlgorithm

STRING

previousDigestSignature

STRING

digestPublicKeyFingerprint

STRING

digestSignatureAlgorithm

STRING

logFiles

ARRAY<STRUCT<s3Bucket: STRING, s3Object: STRING, hashValue: STRING, hashAlgorithm: STRING, newestEventTime: TIMESTAMP, oldestEventTime: TIMESTAMP>>

time

TIMESTAMP

パーサーのオブザーバブル

パーサーは、次のフィールドをlw_observablesに抽出します(パーサー定義から生成)。

フィールド

可観測項目

awsAccountId

aws_account_id

previousDigestHashValue

hash

logFiles[].hashValue

hash

フィールド

可観測項目

awsAccountId

aws_account_id

previousDigestHashValue

hash

logFiles[].hashValue

hash

aws_cloudtrail_insight​

CloudTrail知見イベントをスキーマ化します。これは、異常なAPIコールレートのアクティビティを記録します。eventTimeフィールドからtimeを解析します。

解析されたテーブルスキーマ

aws_cloudtrail_insightパーサーは、以下の列(パーサー定義から生成)を書き込みます。

列

データ型

eventVersion

STRING

awsRegion

STRING

eventID

STRING

eventType

STRING

recipientAccountId

STRING

sharedEventID

STRING

insightDetails

STRUCT<state: STRING, eventSource: STRING, eventName: STRING, insightType: STRING, insightContext: STRUCT<statistics: STRUCT<baseline: STRUCT<average: DOUBLE>, insight: STRUCT<average: DOUBLE>, insightDuration: DOUBLE>>>

eventCategory

STRING

time

TIMESTAMP

列

データ型

eventVersion

STRING

awsRegion

STRING

eventID

STRING

eventType

STRING

recipientAccountId

STRING

sharedEventID

STRING

insightDetails

STRUCT<state: STRING, eventSource: STRING, eventName: STRING, insightType: STRING, insightContext: STRUCT<statistics: STRUCT<baseline: STRUCT<average: DOUBLE>, insight: STRUCT<average: DOUBLE>, insightDuration: DOUBLE>>>

eventCategory

STRING

time

TIMESTAMP

パーサーのオブザーバブル

パーサーは、次のフィールドをlw_observablesに抽出します(パーサー定義から生成)。

フィールド

可観測項目

recipientAccountId

aws_account_id

sharedEventID

trace_id

フィールド

可観測項目

recipientAccountId

aws_account_id

sharedEventID

trace_id