

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

# Amazon ECR イベントと EventBridge
<a name="ecr-eventbridge"></a>

Amazon EventBridge を使用すると、 AWS サービスを自動化し、アプリケーションの可用性の問題やリソースの変更などのシステムイベントに自動的に対応できます。 AWS のサービスからのイベントは、ほぼリアルタイムに EventBridge に提供されます。簡単なルールを作成し、ルールで対象とするイベントを指定し、イベントがルールに一致した場合に自動的に実行するアクションを含めることができます。自動的にトリガーできるオペレーションには、以下が含まれます。
+ CloudWatch Logs のロググループへのイベントの追加
+  AWS Lambda 関数の呼び出し
+ Amazon EC2 Run Command の呼び出し
+ Amazon Kinesis Data Streams へのイベントの中継
+  AWS Step Functions ステートマシンのアクティブ化
+ Amazon SNS トピックまたは Amazon SQS キューの通知

詳細については、*Amazon EventBridge ユーザーガイド*の「[Amazon EventBridge の開始方法](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-getting-set-up.html)」を参照してください 。

## Amazon ECR のサンプルイベント
<a name="ecr-eventbridge-bus"></a>

以下に、Amazon ECR のイベントの例を示します。イベントは、ベストエフォートベースで出力されます。

**完了したイメージプッシュのイベント**

各イメージプッシュが完了すると、以下のイベントが送信されます。詳細については、「[Amazon ECR プライベートリポジトリへの Docker イメージのプッシュ](docker-push-ecr-image.md)」を参照してください。

```
{
    "version": "0",
    "id": "13cde686-328b-6117-af20-0e5566167482",
    "detail-type": "ECR Image Action",
    "source": "aws.ecr",
    "account": "123456789012",
    "time": "2019-11-16T01:54:34Z",
    "region": "us-west-2",
    "resources": [],
    "detail": {
        "result": "SUCCESS",
        "repository-name": "my-repository-name",
        "image-digest": "sha256:7f5b2640fe6fb4f46592dfd3410c4a79dac4f89e4782432e0378abcd1234",
        "action-type": "PUSH",
        "image-tag": "latest"
    }
}
```

**プルスルーキャッシュアクションのイベント**

プルスルーキャッシュアクションが試行されると、次のイベントが送信されます。詳細については、「[アップストリームレジストリと Amazon ECR プライベートレジストリの同期](pull-through-cache.md)」を参照してください。

```
{
    "version": "0",
    "id": "85fc3613-e913-7fc4-a80c-a3753e4aa9ae",
    "detail-type": "ECR Pull Through Cache Action",
    "source": "aws.ecr",
    "account": "123456789012",
    "time": "2023-02-29T02:36:48Z",
    "region": "us-west-2",
    "resources": [
        "arn:aws:ecr:us-west-2:123456789012:repository/docker-hub/alpine"
    ],
    "detail": {
        "rule-version": "1",
        "sync-status": "SUCCESS",
        "ecr-repository-prefix": "docker-hub",
        "repository-name": "docker-hub/alpine",
        "upstream-registry-url": "public.ecr.aws",
        "image-tag": "3.17.2",
        "image-digest": "sha256:4aa08ef415aecc80814cb42fa41b658480779d80c77ab15EXAMPLE",
    }
}
```

**完了したイメージスキャンのイベント (ベーシックスキャン)**

レジストリでベーシックスキャンを有効にすると、各イメージスキャンが完了した際、以下のイベントが送信されます。`finding-severity-counts` パラメータは、重要度レベルが存在する場合にのみ、その値を返します。たとえば、イメージに `CRITICAL` レベルの結果が含まれていない場合、重要度のカウントは返されません。詳細については、「[Amazon ECR でイメージをスキャンして OS 脆弱性がないか調べる](image-scanning-basic.md)」を参照してください。

**注記**  
拡張スキャンが有効なときに Amazon Inspector によって発行されるイベントの詳細については、[Amazon ECR の拡張スキャンについて送信される EventBridge イベント](image-scanning-enhanced-events.md) を参照してください。

```
{
    "version": "0",
    "id": "85fc3613-e913-7fc4-a80c-a3753e4aa9ae",
    "detail-type": "ECR Image Scan",
    "source": "aws.ecr",
    "account": "123456789012",
    "time": "2019-10-29T02:36:48Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:ecr:us-east-1:123456789012:repository/my-repository-name"
    ],
    "detail": {
        "scan-status": "COMPLETE",
        "repository-name": "my-repository-name",
        "finding-severity-counts": {
	       "CRITICAL": 10,
	       "MEDIUM": 9
	     },
        "image-digest": "sha256:7f5b2640fe6fb4f46592dfd3410c4a79dac4f89e4782432e0378abcd1234",
        "image-tags": []
    }
}
```

**拡張スキャンが有効なリソースについての変更通知のイベント (拡張スキャン)**

レジストリで拡張スキャンが有効になっている場合、拡張スキャンが有効になっているリソースで変更があった際、Amazon ECR から次のイベントが送信されます。これには、新しいリポジトリの作成、リポジトリのスキャン頻度の変更、または拡張スキャンが有効になっているリポジトリでのイメージの作成または削除が含まれます。詳しくは、「[Amazon ECR でイメージをスキャンしてソフトウェア脆弱性がないか調べる](image-scanning.md)」を参照してください。

```
{
	"version": "0",
	"id": "0c18352a-a4d4-6853-ef53-0ab8638973bf",
	"detail-type": "ECR Scan Resource Change",
	"source": "aws.ecr",
	"account": "123456789012",
	"time": "2021-10-14T20:53:46Z",
	"region": "us-east-1",
	"resources": [],
	"detail": {
		"action-type": "SCAN_FREQUENCY_CHANGE",
		"repositories": [{
				"repository-name": "repository-1",
				"repository-arn": "arn:aws:ecr:us-east-1:123456789012:repository/repository-1",
				"scan-frequency": "SCAN_ON_PUSH",
				"previous-scan-frequency": "MANUAL"
			},
			{
				"repository-name": "repository-2",
				"repository-arn": "arn:aws:ecr:us-east-1:123456789012:repository/repository-2",
				"scan-frequency": "CONTINUOUS_SCAN",
				"previous-scan-frequency": "SCAN_ON_PUSH"
			},
			{
				"repository-name": "repository-3",
				"repository-arn": "arn:aws:ecr:us-east-1:123456789012:repository/repository-3",
				"scan-frequency": "CONTINUOUS_SCAN",
				"previous-scan-frequency": "SCAN_ON_PUSH"
			}
		],
		"resource-type": "REPOSITORY",
		"scan-type": "ENHANCED"
	}
}
```

**イメージ削除のイベント**

イメージが削除されると、以下のイベントが送信されます。詳細については、「[Amazon ECR でのイメージの削除](delete_image.md)」を参照してください。

```
{
    "version": "0",
    "id": "dd3b46cb-2c74-f49e-393b-28286b67279d",
    "detail-type": "ECR Image Action",
    "source": "aws.ecr",
    "account": "123456789012",
    "time": "2019-11-16T02:01:05Z",
    "region": "us-west-2",
    "resources": [],
    "detail": {
        "result": "SUCCESS",
        "repository-name": "my-repository-name",
        "image-digest": "sha256:7f5b2640fe6fb4f46592dfd3410c4a79dac4f89e4782432e0378abcd1234",
        "action-type": "DELETE",
        "image-tag": "latest"
    }
}
```

**イメージアーカイブアクションのイベント**

イメージがアーカイブされると、次のイベントが送信されます。`target-storage-class` フィールドは に設定されます`ARCHIVE`。イベントには、アーカイブされるコンテンツのタイプを識別するためのマニフェストメディアタイプとアーティファクトメディアタイプが含まれます。

```
{
    "version": "0",
    "id": "4f5ec4d5-4de4-7aad-a046-EXAMPLE",
    "detail-type": "ECR Image Action",
    "source": "aws.ecr",
    "account": "123456789012",
    "time": "2019-08-06T00:58:09Z",
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "action-type": "UPDATE_STORAGE_CLASS",
        "target-storage-class": "ARCHIVE",
        "image-digest": "sha256:f98d67af8e53a536502bfc600de3266556b06ed635a32d60aa7a5fe6d7e609d7",
        "repository-name": "ubuntu",
        "result": "SUCCESS",
        "manifest-media-type": "application/vnd.oci.image.manifest.v1+json",
        "artifact-media-type": "application/vnd.oci.image.config.v1+json"
    }
}
```

**イメージ復元アクションのイベント**

アーカイブされたイメージが復元されると、次のイベントが送信されます。`target-storage-class` フィールドは に設定されます`STANDARD`。イベントには、イメージが最後に復元された日時を示す`last-activated-at`フィールドが含まれます。

```
{
    "version": "0",
    "id": "7b8fc5e6-5ef5-8bbe-b157-EXAMPLE",
    "detail-type": "ECR Image Action",
    "source": "aws.ecr",
    "account": "123456789012",
    "time": "2019-08-06T01:15:22Z",
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "action-type": "UPDATE_STORAGE_CLASS",
        "target-storage-class": "STANDARD",
        "image-digest": "sha256:f98d67af8e53a536502bfc600de3266556b06ed635a32d60aa7a5fe6d7e609d7",
        "repository-name": "ubuntu",
        "result": "SUCCESS",
        "manifest-media-type": "application/vnd.oci.image.manifest.v1+json",
        "artifact-media-type": "application/vnd.oci.image.config.v1+json",
        "last-activated-at": "2025-10-10T19:13:02.74Z"
    }
}
```

**リファラー復元アクションのイベント**

アーカイブされたリファラ (SBOM、署名、認証などの参照アーティファクト) が復元されると、次のイベントが送信されます。`detail-type` は、通常のイメージアクションと区別`ECR Referrer Action`するためのものです。フィールド`manifest-media-type`と `artifact-media-type`フィールドは、復元されるリファラの特定のタイプを識別します。この例では、SBOM アーティファクトが復元されています。

```
{
    "version": "0",
    "id": "8c9gd6f7-6fg6-9ccf-c268-EXAMPLE",
    "detail-type": "ECR Referrer Action",
    "source": "aws.ecr",
    "account": "123456789012",
    "time": "2019-08-06T01:20:45Z",
    "region": "us-east-1",
    "resources": [],
    "detail": {
        "action-type": "UPDATE_STORAGE_CLASS",
        "target-storage-class": "STANDARD",
        "image-digest": "sha256:f98d67af8e53a536502bfc600de3266556b06ed635a32d60aa7a5fe6d7e609d7",
        "repository-name": "sbom",
        "result": "SUCCESS",
        "manifest-media-type": "application/vnd.cncf.oras.artifact.manifest.v1+json",
        "artifact-media-type": "text/sbom+json",
        "last-activated-at": "2025-10-10T19:13:02.74Z"
    }
}
```

**完了したイメージレプリケーションに関するイベント**

各イメージレプリケーションが完了すると、次のイベントが送信されます。詳細については、「[Amazon ECR でのプライベートイメージレプリケーション](replication.md)」を参照してください。

```
{
  "version": "0",
  "id": "c8b133b1-6029-ee73-e2a1-4f466b8ba999",
  "detail-type": "ECR Replication Action",
  "source": "aws.ecr",
  "account": "123456789012",
  "time": "2024-05-08T20:44:54Z",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ecr:us-east-1:123456789012:repository/docker-hub/alpine"
  ],
  "detail": {
    "result": "SUCCESS",
    "repository-name": "docker-hub/alpine",
    "image-digest": "sha256:7f5b2640fe6fb4f46592dfd3410c4a79dac4f89e4782432e0378abcd1234",
    "source-account": "123456789012",
    "action-type": "REPLICATE",
    "source-region": "us-west-2",
    "image-tag": "3.17.2"
  }
}
```

**失敗したイメージレプリケーションに関するイベント**

イメージレプリケーションが失敗すると、次のイベントが送信されます。`result` フィールドには `FAILED` が含まれ、イベントの詳細に追加のエラー情報が含まれる場合があります。

```
{
  "version": "0",
  "id": "d9c244c2-7130-ff84-f3b2-5g577c9cb000",
  "detail-type": "ECR Replication Action",
  "source": "aws.ecr",
  "account": "123456789012",
  "time": "2024-05-08T20:45:12Z",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ecr:us-east-1:123456789012:repository/my-app"
  ],
  "detail": {
    "result": "FAILED",
    "repository-name": "my-app",
    "image-digest": "sha256:8g6c3751gf7gc5g47603ege4511d5a80ead5g90f5893543f1489bde2345",
    "source-account": "123456789012",
    "action-type": "REPLICATE",
    "source-region": "us-west-2",
    "image-tag": "latest"
  }
}
```