AWS Clean Roomsを使用したAWS CloudTrailAPI コールのログ記録 - AWS Clean Rooms

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Clean Roomsを使用したAWS CloudTrailAPI コールのログ記録

AWS Clean Rooms は、ユーザー、ロール、または AWS のサービスが AWS Clean Rooms で実行したアクションを記録するサービスである AWS CloudTrail と統合されています。CloudTrail は、AWS Clean Rooms のすべての API コールをイベントとしてキャプチャします。キャプチャされた呼び出しには、AWS Clean Rooms コンソールの呼び出しと、AWS Clean Rooms API オペレーションへのコード呼び出しが含まれます。証跡を作成する場合は、AWS Clean Rooms のイベントなど、Amazon S3 バケットへの CloudTrail イベントの継続的な配信を有効にすることができます 証跡を設定しない場合でも、CloudTrail コンソールの [Event history (イベント履歴) ] で最新のイベントを表示できます。CloudTrail によって収集された情報を使用して、AWS Clean Rooms に対して行われた要求、要求が行われた IP アドレス、要求を行った人、要求が行われた日時、および追加の詳細を判別できます。

CloudTrail の詳細については、「AWS CloudTrailユーザーガイド」を参照してください。

CloudTrail での AWS Clean Rooms 情報

CloudTrail は、アカウント作成時に AWS アカウント で有効になります。AWS Clean Rooms でアクティビティが発生すると、そのアクティビティは [イベント履歴] のその他の AWS のサービスイベントと共に CloudTrail イベントに記録されます。最近のイベントは、AWS アカウント で表示、検索、ダウンロードできます。詳細については、「CloudTrail イベント履歴でのイベントの表示」を参照してください。

AWS Clean Rooms のイベントなど、AWS アカウント のイベントの継続的な記録については、追跡を作成します。追跡により、CloudTrail はログファイルを Amazon S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成するときに、証跡がすべての AWS リージョン に適用されます 証跡は、AWS パーティションのすべてのリージョンからのイベントをログに記録し、指定した Amazon S3 バケットにログファイルを配信します。さらに、CloudTrail ログで収集されたイベントデータをより詳細に分析し、それを基にアクションを取るために他の AWS のサービス を設定できます。詳細については、次を参照してください。

すべての AWS Clean Rooms アクションは CloudTrail によってログに記録され、AWS Clean RoomsAPI リファレンスに記録されます。

各イベントまたはログエントリには、リクエストの生成者に関する情報が含まれます。同一性情報は次の判断に役立ちます。

  • リクエストが、ルートユーザーまたは IAM ユーザーのどちらの認証情報を使用して送信されたかどうか。

  • リクエストがロールまたはフェデレーションユーザーの一時的なセキュリティ認証情報を使用して行われたかどうか。

  • リクエストが、別の AWS のサービス によって送信されたかどうか。

詳細については、「CloudTrail userIdentity 要素」を参照してください。

AWS Clean Rooms ログファイルエントリの理解

追跡は、指定した Amazon S3 バケットにイベントをログファイルとして配信するように設定できます。CloudTrail のログファイルには、単一か複数のログエントリがあります。イベントはあらゆるソースからの単一のリクエストを表し、リクエストされたアクション、アクションの日時、リクエストのパラメータなどの情報が含まれます。CloudTrail ログファイルは、パブリック API コールの順序付けられたスタックトレースではないため、特定の順序では表示されません。

AWS Clean Rooms の CloudTrail イベントの例

次の例は、以下の CloudTrail イベントを示しています。

StartProtectedQuery (成功)

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "EXAMPLE_PRINCIPAL_ID", "arn": "arn:aws:sts::123456789012:assumed-role/query-runner/jdoe", "accountId": "123456789012", "accessKeyId": "EXAMPLE_KEY_ID", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "EXAMPLE_PRINCIPAL_ID", "arn": "arn:aws:iam::123456789012:role/query-runner", "accountId": "123456789012", "userName": "query-runner" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-04-07T19:34:32Z", "mfaAuthenticated": "false" } } }, "eventTime": "2023-04-07T19:53:32Z", "eventSource": "cleanrooms.amazonaws.com", "eventName": "StartProtectedQuery", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.1", "userAgent": "aws-internal/3", "requestParameters": { "resultConfiguration": { "outputConfiguration": { "s3": { "resultFormat": "CSV", "bucket": "cleanrooms-queryresults-jdoe-test", "keyPrefix": "test" } } }, "sqlParameters": "***", "membershipIdentifier": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "type": "SQL" }, "responseElements": { "Access-Control-Expose-Headers": "x-amzn-RequestId,x-amzn-ErrorType,x-amzn-ErrorMessage,Date", "protectedQuery": { "createTime": 1680897212.279, "id": "f5988bf1-771a-4141-82a8-26fcc4e41c9f", "membershipArn": "arn:aws:cleanrooms:us-east-2:123456789012:membership/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "membershipId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "resultConfiguration": { "outputConfiguration": { "s3": { "bucket": "cleanrooms-queryresults-jdoe-test", "keyPrefix": "test", "resultFormat": "CSV" } } }, "sqlParameters": "***", "status": "SUBMITTED" } }, "requestID": "7464211b-2277-4b55-9723-fb4f259aefd2", "eventID": "f7610f5e-74b9-420f-ae43-206571ebcbf7", "readOnly": false, "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management" }

StartProtectedQuery (失敗)

{ "eventVersion": "1.08", "userIdentity": { "type": "AssumedRole", "principalId": "EXAMPLE_PRINCIPAL_ID", "arn": "arn:aws:sts::123456789012:assumed-role/query-runner/jdoe", "accountId": "123456789012", "accessKeyId": "EXAMPLE_KEY_ID", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "EXAMPLE_PRINCIPAL_ID", "arn": "arn:aws:iam::123456789012:role/query-runner", "accountId": "123456789012", "userName": "query-runner" }, "webIdFederationData": {}, "attributes": { "creationDate": "2023-04-07T19:34:32Z", "mfaAuthenticated": "false" } } }, "eventTime": "2023-04-07T19:47:27Z", "eventSource": "cleanrooms.amazonaws.com", "eventName": "StartProtectedQuery", "awsRegion": "us-east-2", "sourceIPAddress": "203.0.113.1", "userAgent": "aws-internal/3", "errorCode": "ValidationException", "requestParameters": { "resultConfiguration": { "outputConfiguration": { "s3": { "resultFormat": "CSV", "bucket": "cleanrooms-queryresults-jdoe-test", "keyPrefix": "test" } } }, "sqlParameters": "***", "membershipIdentifier": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "type": "SQL" }, "responseElements": { "Access-Control-Expose-Headers": "x-amzn-RequestId,x-amzn-ErrorType,x-amzn-ErrorMessage,Date", "message": "Column(s) [identifier] is not allowed in select" }, "requestID": "e29f9f74-8299-4a83-9d18-5ddce7302f07", "eventID": "c8ee3498-8e4e-44b5-87e4-ab9477e56eb5", "readOnly": false, "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management" }