

Amazon CodeCatalyst は新規のお客様には提供されなくなりました。既存のお客様は、通常どおりサービスを引き続き使用できます。詳細については、「[CodeCatalyst から移行する方法](migration.md)」を参照してください。

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

# AWS CloudTrail ログ記録 AWS アカウント を使用した API コールのモニタリング
<a name="ipa-logging-connections"></a>

Amazon CodeCatalyst は、ユーザー AWS CloudTrail、ロール、または によって実行されたアクションを記録するサービスである と統合されています AWS のサービス。CloudTrail は、イベント AWS アカウント として接続された で CodeCatalyst に代わって行われた API コールをキャプチャします。証跡を作成すると、CodeCatalyst のイベントなど、S3 バケットへの CloudTrail イベントの継続的な配信を有効にすることができます。証跡を設定しない場合でも、CloudTrail コンソールの **[イベント履歴]** で最新のイベントを表示できます。

CodeCatalyst は、CloudTrail ログファイルのイベントとして次のアクションのログ記録をサポートしています。
+ CodeCatalyst スペースの管理イベントは、スペースに指定された請求アカウント AWS アカウント である に記録されます。詳細については、「[CodeCatalyst スペースイベント](#cloudtrail-logs-spaces-projects)」を参照してください。
**注記**  
CodeCatalyst スペースのデータイベントには、CLI を使用してアクセスできます。詳細は、「[イベントログ記録を使用して記録されたイベントにアクセスする](ipa-logs.md)」を参照してください。
+ 接続された で発生する CodeCatalyst ワークフローアクションで使用されるリソースのイベントは、そのイベントとしてログに記録 AWS アカウント されます AWS アカウント。詳細については、「[CodeCatalyst アカウント接続と請求イベント](#cloudtrail-logs-connections)」を参照してください。

**重要**  
複数のアカウントをスペースに関連付けることができますが、CodeCatalyst スペースとプロジェクトのイベントの CloudTrail ログ記録は請求アカウントにのみ適用されます。

スペース請求アカウントは、無料利用枠を超える CodeCatalyst リソースに対して課金 AWS アカウント される です AWS 。複数のアカウントを 1 つのスペースに接続できますが、請求アカウントとして指定できるのは 1 つのアカウントのみです。スペースの請求アカウントまたは追加の接続アカウントには、Amazon ECS クラスターや S3 バケットなどの AWS リソースとインフラストラクチャを CodeCatalyst ワークフローからデプロイするために使用される IAM ロールを含めることができます。ワークフロー YAML を使用して、デプロイ AWS アカウント した を識別できます。

**注記**  
AWS CodeCatalyst ワークフローの接続アカウントにデプロイされた リソースは、CodeCatalyst スペースの CloudTrail ログ記録の一部として記録されません。例えば、CodeCatalyst リソースにはスペースまたは project. AWS resources には Amazon ECS サービスまたは Lambda 関数が含まれます。CloudTrail ログ記録は、リソース AWS アカウント がデプロイされる各 に対して個別に設定する必要があります。

接続されたアカウントでの CodeCatalyst のログ記録には、次のような考慮事項があります。
+ CloudTrail イベントへのアクセスは、CodeCatalyst ではなく、接続されたアカウントの IAM で管理されます。
+ GitHub リポジトリへのリンクなどのサードパーティー接続では、サードパーティーリソース名が CloudTrail ログに記録されます。

**注記**  
CodeCatalyst イベントの CloudTrail ログ記録はスペースレベルで、プロジェクトの境界によってイベントを分離しません。

CloudTrail の詳細については、「[AWS CloudTrail ユーザーガイド](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)」を参照してください。

**注記**  
このセクションでは、CodeCatalyst スペースに記録された と、CodeCatalyst AWS アカウント に接続されている に記録されたすべてのイベントの CloudTrail CodeCatalyst ログ記録について説明します。さらに、CodeCatalyst スペースに記録されたすべてのイベントを確認するには、 AWS CLI および **aws codecatalyst list-event-logs** コマンドを使用することもできます。詳細については、「[イベントログ記録を使用して記録されたイベントにアクセスする](ipa-logs.md)」を参照してください。

## CodeCatalyst スペースイベント
<a name="cloudtrail-logs-spaces-projects"></a>

スペースレベルおよびプロジェクトレベルのリソースを管理するための CodeCatalyst のアクションは、スペースの請求アカウントに記録されます。CodeCatalyst スペースの CloudTrail ログ記録の場合、イベントの記録には次の考慮事項があります。
+ CloudTrail イベントはスペース全体に適用され、特定のプロジェクトに限定されるものではありません。
+  AWS アカウント を CodeCatalyst スペースに接続すると、アカウント接続のログ可能なイベントがログインされます AWS アカウント。この接続を有効にした後は、無効にすることはできません。
+  AWS アカウント を CodeCatalyst スペースに接続し、スペースの請求アカウントとして指定すると、イベントはその に記録されます AWS アカウント。この接続を有効にした後は、無効にすることはできません。

  スペースレベルおよびプロジェクトレベルのリソースのイベントは、請求アカウントにのみ記録されます。CloudTrail の送信先アカウントを変更するには、CodeCatalyst の請求アカウントを更新します。次の月次請求サイクルの開始時に、変更が CodeCatalyst の新しい請求アカウントで有効になります。その後、CloudTrail の送信先アカウントが更新されます。

以下は、スペースレベルおよびプロジェクトレベルのリソースを管理するための CodeCatalyst のアクション AWS に関連する のイベントの例です。次の API は SDK と CLI を介して利用できます。イベントは、CodeCatalyst スペースの請求アカウントとして AWS アカウント 指定された に記録されます。
+ `[CreateDevEnvironment](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_CreateDevEnvironment.html)`
+  `[CreateProject](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_CreateProject.html)`
+ `[DeleteDevEnvironment](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_DeleteDevEnvironment.html)`
+ `[GetDevEnvironment](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_GetDevEnvironment.html)`
+ `[GetProject](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_GetProject.html)`
+ `[GetSpace](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_GetSpace.html)`
+ `[GetSubscription](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_GetSubscription.html)`
+ `[ListDevEnvironments](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_ListDevEnvironments.html)`
+ `[ListDevEnvironmentSessions](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_ListDevEnvironmentSessions.html)`
+ `[ListEventLogs](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_ListEventLogs.html)`
+ `[ListProjects](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_ListProjects.html)`
+ `[ListSourceRepositories](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_ListSourceRepositories.html)`
+ `[StartDevEnvironment](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_StartDevEnvironment.html)`
+ `[StartDevEnvironmentSession](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_StartDevEnvironmentSession.html)`
+ `[StopDevEnvironment](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_StopDevEnvironment.html)`
+ `[StopDevEnvironmentSession](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_StopDevEnvironmentSession.html)`
+ `[UpdateDevEnvironment](https://docs.aws.amazon.com/codecatalyst/latest/APIReference/API_UpdateDevEnvironment.html)`

## CodeCatalyst アカウント接続と請求イベント
<a name="cloudtrail-logs-connections"></a>

以下は、アカウント接続または請求の CodeCatalyst でのアクション AWS に関連する のイベントの例です。
+ `AcceptConnection`
+ `AssociateIAMRoletoConnection`
+ `DeleteConnection`
+ `DissassociateIAMRolefromConnection`
+ `GetBillingAuthorization`
+ `GetConnection`
+ `GetPendingConnection`
+ `ListConnections`
+ `ListIAMRolesforConnection`
+ `PutBillingAuthorization`
+ `RejectConnection`

## CloudTrail での CodeCatalyst に関する情報
<a name="info-in-cloudtrail"></a>

CloudTrail は、そのアカウントを作成する AWS アカウント と で有効になります。これを CodeCatalyst スペースに接続する AWS アカウント と、CloudTrail に記録されたそのスペースのイベント AWS アカウント がその AWS アカウントにログインします。CodeCatalyst のログ可能なイベントは、接続されたアカウントの CloudTrail ログに CloudTrail イベントとして記録され、CloudTrail コンソールの **[イベント履歴]** に、そのアカウントの他のログ可能な AWS イベントとともに記録されます。





各イベントまたはログエントリには、誰がリクエストを生成したかという情報が含まれます。アイデンティティ情報は、以下を判別するのに役立ちます。
+ リクエストが AWS Builder ID を持つユーザーによって行われたかどうか。
+ リクエストがルートまたは AWS Identity and Access Management (IAM) ユーザー認証情報を使用して行われたかどうか。
+ リクエストがロールまたはフェデレーションユーザーのテンポラリなセキュリティ認証情報を使用して行われたかどうか。
+ リクエストが別の AWS サービスによって行われたかどうか。

詳細については、「[CloudTrail userIdentity エレメント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)」を参照してください。

## CloudTrail イベントにアクセスする
<a name="ipa-logging-connections-view"></a>

の CodeCatalyst アクティビティのイベントなど AWS アカウント、 のイベントの継続的な記録については AWS アカウント、証跡を作成します。証跡より、CloudTrail はログファイルを S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成するときに、証跡がすべての AWS リージョンに適用されます。証跡は、 AWS パーティション内のすべてのリージョンからのイベントをログに記録し、指定した S3 バケットにログファイルを配信します。さらに、CloudTrail ログで収集されたイベントデータをさらに分析して処理するように他の AWS サービスを設定できます。詳細については、次を参照してください: 
+ [追跡を作成するための概要](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+ [CloudTrail がサポートされているサービスと統合](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html)
+ 「[CloudTrail の Amazon SNS 通知の設定](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/configure-sns-notifications-for-cloudtrail.html)」
+ [複数のリージョンから CloudTrail ログファイルを受け取る](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html)および[複数のアカウントから CloudTrail ログファイルを受け取る](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html)

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

## での CodeCatalyst アカウント接続イベントの例 AWS
<a name="understanding-cloudtrail-entries"></a>

以下の例は、`ListConnections` アクションを示す CloudTrail ログエントリです。スペース AWS アカウント に接続されている の場合、 `ListConnections`は CodeCatalyst へのすべてのアカウント接続を表示するために使用されます AWS アカウント。イベントは で AWS アカウント 指定された に記録され`accountId`、 の値はアクションに使用されるロールの Amazon リソースネーム (ARN) `arn`になります。

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AKIAI44QH8DHBEXAMPLE",
        "arn": "role-ARN",
        "accountId": "account-ID",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AKIAI44QH8DHBEXAMPLE",
                "arn": "role-ARN",
                "accountId": "account-ID",
                "userName": "user-name"
            },
            "webIdFederationData": {},
            "attributes": {
                "creationDate": "2022-09-06T15:04:31Z",
                "mfaAuthenticated": "false"
            }
        }
    },
    "eventTime": "2022-09-06T15:08:43Z",
    "eventSource": "account-ID",
    "eventName": "ListConnections",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "192.168.0.1",
    "userAgent": "aws-cli/1.18.147 Python/2.7.18 Linux/5.4.207-126.363.amzn2int.x86_64 botocore/1.18.6",
    "requestParameters": null,
    "responseElements": null,
    "requestID": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 ",
    "eventID": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 ",
    "readOnly": true,
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "account-ID",
    "eventCategory": "Management"
}
```

## の CodeCatalyst プロジェクトリソースイベントの例 AWS
<a name="understanding-cloudtrail-resource-example"></a>

以下の例は、`CreateDevEnvironment` アクションを示す CloudTrail ログエントリです。スペース AWS アカウント に接続され、スペースの指定された請求アカウントである は、開発環境の作成など、スペース内のプロジェクトレベルのイベントに使用されます。

の `accountId`フィールド`userIdentity`で、これはすべての AWS Builder ID の ID プールをホストする IAM Identity Center アカウント ID (`432677196278`) です。このアカウント ID には、イベントの CodeCatalyst ユーザーに関する以下の情報が含まれています。
+ `type` フィールドは、リクエストの IAM エンティティのタイプを示します。スペースとプロジェクトリソースの CodeCatalyst イベントの場合、この値は `IdentityCenterUser` です。`accountId` フィールドには、認証情報を取得するために使用されたエンティティを所有するアカウントが記載されています。
+ `userId` フィールドには、ユーザーの AWS Builder ID 識別子が含まれます。
+ `identityStoreArn` フィールドには、ID ストアアカウントとユーザーのロール ARN が含まれています。

`recipientAccountId` フィールドには、スペースの請求アカウントのアカウント ID が含まれており、ここでの値は 111122223333 です。

詳細については、「[CloudTrail userIdentity エレメント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)」を参照してください。

```
{
	"eventVersion": "1.09",
	"userIdentity": {
		"type": "IdentityCenterUser",
		"accountId": "432677196278",
		"onBehalfOf": {
			"userId": "user-ID",
			"identityStoreArn": "arn:aws:identitystore::432677196278:identitystore/d-9067642ac7"
		},
		"credentialId": "ABCDefGhiJKLMn11Lmn_1AbCDEFgHijk-AaBCdEFGHIjKLmnOPqrs11abEXAMPLE"
	},
	"eventTime": "2023-05-18T17:10:50Z",
	"eventSource": "codecatalyst.amazonaws.com",
	"eventName": "CreateDevEnvironment",
	"awsRegion": "us-west-2",
	"sourceIPAddress": "192.168.0.1",
	"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0",
	"requestParameters": {
		"spaceName": "MySpace",
		"projectName": "MyProject",
		"ides": [{
			"runtime": "public.ecr.aws/q6e8p2q0/cloud9-ide-runtime:2.5.1",
			"name": "Cloud9"
		}],
		"instanceType": "dev.standard1.small",
		"inactivityTimeoutMinutes": 15,
		"persistentStorage": {
			"sizeInGiB": 16
		}
	},
	"responseElements": {
		"spaceName": "MySpace",
		"projectName": "MyProject",
		"id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 "
	},
	"requestID": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
	"eventID": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
	"readOnly": false,
	"eventType": "AwsApiCall",
	"managementEvent": true,
	"recipientAccountId": "111122223333",
	"sharedEventID": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
	"eventCategory": "Management"
}
```

**注記**  
特定のイベントでは、ユーザーエージェントが不明な場合があります。この場合、CodeCatalyst は CloudTrail イベントの `userAgent` フィールドに `Unknown` の値を提供します。

## CodeCatalyst イベント証跡に対してクエリを実行する
<a name="ipa-logging-connections-query"></a>

Amazon Athena のクエリテーブルを使用して、CloudTrail ログのクエリを作成および管理できます。詳細については、「*Amazon Athena ユーザーガイド*」の「[AWS CloudTrail ログをクエリする](https://docs.aws.amazon.com/athena/latest/ug/cloudtrail-logs.html)」を参照してください。