おれさまラボ

実際に手を動かして理解を深めるブログ。

AWS CloudTrail 証跡ログの確認方法

はじめに

滅多に見ることは無いと思いますが、AWS CloudTrail 証跡ログを見る方法をメモしておきます。

参考:クラウド破産を回避するAWS実践ガイド - KOS-MOS - BOOTH

証跡ログの確認方法

CloudTrailダッシュボードのメニューから [イベント履歴] を選択し、任意のイベントをクリックする。

💡:本書では [CreateTrail] というログを選択しているが、自分の場合はすでに証跡を作成済みでInsightsの変更のみを行ったため、ここでは [UpdateTrail] という証跡ログを選択している。

選択した任意のイベントの詳細情報が展開されるので、左下の [イベントの表示] をクリックする。

すると、モーダルウィンドウが開き、JSON形式の証跡ログが表示される。

{
    "eventVersion": "1.05",
    "userIdentity": {
        "type": "IAMUser",
        "principalId": "AIDAxxxxxxxxxxxxxxxxx",
        "arn": "arn:aws:iam::123456789012:user/skksky",
        "accountId": "123456789012",
        "accessKeyId": "ASIAxxxxxxxxxxxxxxxxx",
        "userName": "skksky",
        "sessionContext": {
            "sessionIssuer": {},
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "true",
                "creationDate": "2020-05-05T03:09:24Z"
            }
        }
    },
    "eventTime": "2020-05-05T03:33:28Z",
    "eventSource": "cloudtrail.amazonaws.com",
    "eventName": "UpdateTrail",
    "awsRegion": "ap-northeast-1",
    "sourceIPAddress": "xxx.xxx.xxx.xxx",
    "userAgent": "console.amazonaws.com",
    "errorCode": "InvalidCloudWatchLogsRoleArnException",
    "errorMessage": "Access denied. Check the trust relationships for your role.",
    "requestParameters": {
        "name": "arn:aws:cloudtrail:ap-northeast-1:123456789012:trail/CloudTrailLog",
        "isMultiRegionTrail": true,
        "enableLogFileValidation": true,
        "cloudWatchLogsLogGroupArn": "arn:aws:logs:ap-northeast-1:123456789012:log-group:CloudTrail/DefaultLogGroup:*",
        "cloudWatchLogsRoleArn": "arn:aws:iam::123456789012:role/CloudTrail_CloudWatchLogs_Role",
        "kmsKeyId": ""
    },
    "responseElements": null,
    "requestID": "0e9d53f6-9b8c-496a-a263-633ac6762ff2",
    "eventID": "fbe6e9f7-379d-47bc-80f8-51be080370fd",
    "readOnly": false,
    "eventType": "AwsApiCall",
    "recipientAccountId": "123456789012"
}

💡:"123456789012" はAWSアカウントIDを表す。

トラブルシュート時にはこの証跡を確認することとなる。以下の項目は覚えておくと良い。

  • userIdentity:実行したユーザー
  • eventTime:実行日時
  • eventSource:実行したサービス
  • eventName:実行したアクション
  • requestParametersAWS APIのリクエス
  • responseElementsAWS APIのレスポンス

以上