

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

# Amazon Inspector による SBOM のエクスポート
<a name="sbom-export"></a>

 ソフトウェア部品表 (SBOM) は、コードベースに含まれるすべてのオープンソースソフトウェアコンポーネントとサードパーティーソフトウェアコンポーネントのネストされたインベントリです。Amazon Inspector は、環境内の個々のリソースに SBOM を提供します。Amazon Inspector コンソールまたは Amazon Inspector API を使用して、リソースの SBOM を生成できます。Amazon Inspector がサポートおよびモニタリングしているすべてのリソースの SBOM をエクスポートできます。エクスポートされた SBOM は、ソフトウェアサプライに関する情報を提供します。[AWS 環境のカバレッジを評価することで、](https://docs.aws.amazon.com/inspector/latest/user/assessing-coverage.html)リソースのステータスを確認できます。このセクションでは、SBOM を設定し、エクスポートする方法について説明します。

 一部のソフトウェアコンポーネントやパッケージマネージャーは、依存関係に固定バージョンではなく、バージョン範囲や動的な参照を使用します。この方法では未解決のハッシュが作成され、Amazon Inspector はハッシュファイルまたは jar ファイルを識別しますが、脆弱性検出のために特定の名前とバージョンにマッピングすることはできません。Amazon Inspector では、ソフトウェア部品表 (SBOM) のエクスポートにこれらの未解決のハッシュが含まれるようになりました。これらのパッケージの脆弱性はスキャンできませんが、ハッシュ値はエクスポートされたコンポーネントリスト内で確認できます。

**注記**  
 Amazon Inspector は、Inspector SBOMs のエクスポートをサポートするようになりました。 Amazon EC2 

## Amazon Inspector 形式
<a name="sbom-formats"></a>

Amazon Inspector では、**CycloneDX 1.4** および **SPDX 2.3** 互換フォーマットでの SBOM のエクスポートをサポートしています。Amazon Inspector では、選択した Amazon S3 バケットに SBOM を `JSON` ファイルとしてエクスポートします。

**注記**  
Amazon Inspector からの SPDX 形式のエクスポートは **SPDX 2.3** を使用するシステムと互換性がありますが、クリエイティブコモンズゼロ (CC0) フィールドは含まれていません。これは、このフィールドを含めると、ユーザーがマテリアルを再配布したり編集したりできるようになるためです。

### Amazon Inspector の CycloneDX 1.4 SBOM 形式の例
<a name="cyclone-schema"></a>

```
                    {
  "bomFormat": "CycloneDX",
  "specVersion": "1.4",
  "version": 1,
  "metadata": {
    "timestamp": "2023-06-02T01:17:46Z",
    "component": null,
    "properties": [
      {
        "name": "imageId",
        "value": "sha256:c8ee97f7052776ef223080741f61fcdf6a3a9107810ea9649f904aa4269fdac6"
      },
      {
        "name": "architecture",
        "value": "arm64"
      },
      {
        "name": "accountId",
        "value": "111122223333"
      },
      {
        "name": "resourceType",
        "value": "AWS_ECR_CONTAINER_IMAGE"
      }
    ]
  },
  "components": [
    {
      "type": "library",
      "name": "pip",
      "purl": "pkg:pypi/pip@22.0.4?path=usr/local/lib/python3.8/site-packages/pip-22.0.4.dist-info/METADATA",
      "bom-ref": "98dc550d1e9a0b24161daaa0d535c699"
    },
    {
      "type": "application",
      "name": "libss2",
      "purl": "pkg:dpkg/libss2@1.44.5-1+deb10u3?arch=ARM64&epoch=0&upstream=libss2-1.44.5-1+deb10u3.src.dpkg",
      "bom-ref": "2f4d199d4ef9e2ae639b4f8d04a813a2"
    },
    {
      "type": "application",
      "name": "liblz4-1",
      "purl": "pkg:dpkg/liblz4-1@1.8.3-1+deb10u1?arch=ARM64&epoch=0&upstream=liblz4-1-1.8.3-1+deb10u1.src.dpkg",
      "bom-ref": "9a6be8907ead891b070e60f5a7b7aa9a"
    },
    {
      "type": "application",
      "name": "mawk",
      "purl": "pkg:dpkg/mawk@1.3.3-17+b3?arch=ARM64&epoch=0&upstream=mawk-1.3.3-17+b3.src.dpkg",
      "bom-ref": "c2015852a729f97fde924e62a16f78a5"
    },
    {
      "type": "application",
      "name": "libgmp10",
      "purl": "pkg:dpkg/libgmp10@6.1.2+dfsg-4+deb10u1?arch=ARM64&epoch=2&upstream=libgmp10-6.1.2+dfsg-4+deb10u1.src.dpkg",
      "bom-ref": "52907290f5beef00dff8da77901b1085"
    },
    {
      "type": "application",
      "name": "ncurses-bin",
      "purl": "pkg:dpkg/ncurses-bin@6.1+20181013-2+deb10u3?arch=ARM64&epoch=0&upstream=ncurses-bin-6.1+20181013-2+deb10u3.src.dpkg",
      "bom-ref": "cd20cfb9ebeeadba3809764376f43bce"
    }
  ],
  "vulnerabilities": [
    {
      "id": "CVE-2022-40897",
      "affects": [
        {
          "ref": "a74a4862cc654a2520ec56da0c81cdb3"
        },
        {
          "ref": "0119eb286405d780dc437e7dbf2f9d9d"
        }
      ]
    }
  ]
}
```

### Amazon Inspector の SPDX 2.3 SBOM 形式の例
<a name="cyclone-schema"></a>

```
{
	"name": "409870544328/EC2/i-022fba820db137c64/ami-074ea14c08effb2d8",
	"spdxVersion": "SPDX-2.3",
	"creationInfo": {
		"created": "2023-06-02T21:19:22Z",
		"creators": [
			"Organization: 409870544328",
			"Tool: Amazon Inspector SBOM Generator"
		]
	},
	"documentNamespace": "EC2://i-022fba820db137c64/AMAZON_LINUX_2/null/x86_64",
	"comment": "",
	"packages": [{
			"name": "elfutils-libelf",
			"versionInfo": "0.176-2.amzn2",
			"downloadLocation": "NOASSERTION",
			"sourceInfo": "/var/lib/rpm/Packages",
			"filesAnalyzed": false,
			"externalRefs": [{
				"referenceCategory": "PACKAGE-MANAGER",
				"referenceType": "purl",
				"referenceLocator": "pkg:rpm/elfutils-libelf@0.176-2.amzn2?arch=X86_64&epoch=0&upstream=elfutils-libelf-0.176-2.amzn2.src.rpm"
			}],
			"SPDXID": "SPDXRef-Package-rpm-elfutils-libelf-ddf56a513c0e76ab2ae3246d9a91c463"
		},
		{
			"name": "libcurl",
			"versionInfo": "7.79.1-1.amzn2.0.1",
			"downloadLocation": "NOASSERTION",
			"sourceInfo": "/var/lib/rpm/Packages",
			"filesAnalyzed": false,
			"externalRefs": [{
					"referenceCategory": "PACKAGE-MANAGER",
					"referenceType": "purl",
					"referenceLocator": "pkg:rpm/libcurl@7.79.1-1.amzn2.0.1?arch=X86_64&epoch=0&upstream=libcurl-7.79.1-1.amzn2.0.1.src.rpm"
				},
				{
					"referenceCategory": "SECURITY",
					"referenceType": "vulnerability",
					"referenceLocator": "CVE-2022-32205"
				}
			],
			"SPDXID": "SPDXRef-Package-rpm-libcurl-710fb33829bc5106559bcd380cddb7d5"
		},
		{
			"name": "hunspell-en-US",
			"versionInfo": "0.20121024-6.amzn2.0.1",
			"downloadLocation": "NOASSERTION",
			"sourceInfo": "/var/lib/rpm/Packages",
			"filesAnalyzed": false,
			"externalRefs": [{
				"referenceCategory": "PACKAGE-MANAGER",
				"referenceType": "purl",
				"referenceLocator": "pkg:rpm/hunspell-en-US@0.20121024-6.amzn2.0.1?arch=NOARCH&epoch=0&upstream=hunspell-en-US-0.20121024-6.amzn2.0.1.src.rpm"
			}],
			"SPDXID": "SPDXRef-Package-rpm-hunspell-en-US-de19ae0883973d6cea5e7e079d544fe5"
		},
		{
			"name": "grub2-tools-minimal",
			"versionInfo": "2.06-2.amzn2.0.6",
			"downloadLocation": "NOASSERTION",
			"sourceInfo": "/var/lib/rpm/Packages",
			"filesAnalyzed": false,
			"externalRefs": [{
					"referenceCategory": "PACKAGE-MANAGER",
					"referenceType": "purl",
					"referenceLocator": "pkg:rpm/grub2-tools-minimal@2.06-2.amzn2.0.6?arch=X86_64&epoch=1&upstream=grub2-tools-minimal-2.06-2.amzn2.0.6.src.rpm"
				},
				{
					"referenceCategory": "SECURITY",
					"referenceType": "vulnerability",
					"referenceLocator": "CVE-2021-3981"
				}
			],
			"SPDXID": "SPDXRef-Package-rpm-grub2-tools-minimal-c56b7ea76e5a28ab8f232ef6d7564636"
		},
		{
			"name": "unixODBC-devel",
			"versionInfo": "2.3.1-14.amzn2",
			"downloadLocation": "NOASSERTION",
			"sourceInfo": "/var/lib/rpm/Packages",
			"filesAnalyzed": false,
			"externalRefs": [{
				"referenceCategory": "PACKAGE-MANAGER",
				"referenceType": "purl",
				"referenceLocator": "pkg:rpm/unixODBC-devel@2.3.1-14.amzn2?arch=X86_64&epoch=0&upstream=unixODBC-devel-2.3.1-14.amzn2.src.rpm"
			}],
			"SPDXID": "SPDXRef-Package-rpm-unixODBC-devel-1bb35add92978df021a13fc9f81237d2"
		}
	],
	"relationships": [{
			"spdxElementId": "SPDXRef-DOCUMENT",
			"relatedSpdxElement": "SPDXRef-Package-rpm-elfutils-libelf-ddf56a513c0e76ab2ae3246d9a91c463",
			"relationshipType": "DESCRIBES"
		},
		{
			"spdxElementId": "SPDXRef-DOCUMENT",
			"relatedSpdxElement": "SPDXRef-Package-rpm-yajl-8476ce2db98b28cfab2b4484f84f1903",
			"relationshipType": "DESCRIBES"
		},
		{
			"spdxElementId": "SPDXRef-DOCUMENT",
			"relatedSpdxElement": "SPDXRef-Package-rpm-unixODBC-devel-1bb35add92978df021a13fc9f81237d2",
			"relationshipType": "DESCRIBES"
		}
	],
	"SPDXID": "SPDXRef-DOCUMENT"
}
```

## SBOM 用フィルター
<a name="sbom-filters"></a>

SBOM をエクスポートする際、フィルターを追加してリソースの特定のサブセットに関するレポートを作成できます。フィルターを指定しない場合、サポート対象のすべてのアクティブリソースの SBOM がエクスポートされます。また、委任された管理者の場合は、メンバー全員のリソースも含まれます。以下のフィルタが利用可能です。
+  **AccountID** — このフィルターは、特定の AccountID に関連付けられている任意のリソースの SBOM をエクスポートするために使用できます。
+  **EC2 インスタンスタグ** — このフィルターは、特定のタグを持つ EC2 インスタンスの SBOM をエクスポートするために使用できます。
+ **関数名** — このフィルターは、特定の Lambda 関数の SBOM をエクスポートするために使用できます。
+  **イメージタグ** — このフィルターは、特定のタグが付いたコンテナイメージの SBOM をエクスポートするために使用できます。
+  **Lambda 関数タグ** — このフィルターを使用して、特定のタグを持つ Lambda 関数の SBOM をエクスポートできます。
+  **リソースタイプ** — このフィルターは、リソースタイプ EC2/ECR/Lambda をフィルタリングするために使用できます。
+  **リソース ID** — このフィルターは、特定のリソースの SBOM をエクスポートするために使用できます。
+  **リポジトリ名** — このフィルターを使用して、特定のリポジトリ内のコンテナイメージの SBOM を生成できます。

## SBOM の設定とエクスポート
<a name="sbom-create"></a>

SBOMsエクスポートするには、まず Amazon S3 バケットと Amazon Inspector が使用できる AWS KMS キーを設定する必要があります。フィルタを使用して、リソースの特定のサブセットの SBOM をエクスポートできます。 AWS Organization 内の複数のアカウントの SBOMs をエクスポートするには、Amazon Inspector の委任管理者としてサインインしながら、以下の手順に従います。

**前提条件**
+ Amazon Inspector によってアクティブにモニタリングされているサポート対象リソース。
+ Amazon Inspector にオブジェクトの追加を許可するポリシーが設定された Amazon S3 バケット。ポリシーの設定については、「[Configure export permissions](findings-managing-exporting-reports.md#findings-managing-exporting-permissions)」を参照してください。
+ Amazon Inspector が を使用してレポートを暗号化できるようにするポリシーで設定された AWS KMS キー。ポリシーの設定については、[「エクスポート用の AWS KMS キーを設定する](findings-managing-exporting-reports.md#findings-managing-exporting-KMS)」を参照してください。

**注記**  
以前に Amazon S3 バケットと検出[結果のエクスポート](findings-managing-exporting-reports.md)用の AWS KMS キーを設定したことがある場合は、同じバケットとキーを SBOM エクスポートに使用できます。

任意のアクセス方法を選択して、SBOM をエクスポートします。

------
#### [ Console ]

1.  認証情報を使用してサインインし、Amazon Inspector コンソール ([https://console.aws.amazon.com/inspector/v2/home](https://console.aws.amazon.com/inspector/v2/home)) を開きます。

1. ページの右上隅にある AWS リージョン セレクターを使用して、SBOM をエクスポートするリソースがあるリージョンを選択します。

1.  ナビゲーションペインの **[SBOM をエクスポート]** を選択します。

1.  (オプション) **[SBOM のエクスポート]** ページで、**[フィルターを追加]** メニューを使用して、レポートを作成するリソースのサブセットを選択します。フィルターが指定されていない場合、Amazon Inspector はすべてのアクティブなリソースのレポートをエクスポートします。委任された管理者の場合は、これには組織内のすべてのアクティブなリソースが含まれます。

1. **[エクスポート設定]** で、SBOM に必要な形式を選択します。

1.  **Amazon S3 URI** を入力するか、**[Amazon S3 を参照]** を選択して SBOM を保存する Amazon S3 の場所を選択します。

1.  Amazon Inspector がレポートの暗号化に使用するように設定した**AWS KMS ** キーを入力します。

------
#### [ API ]
+ リソースの SBOM をプログラムでエクスポートするには、Amazon Inspector API の [CreatesBOMExport](https://docs.aws.amazon.com/inspector/v2/APIReference/API_CreateSbomExport.html) オペレーションを使用します。

  リクエストでは、`reportFormat` パラメータを使用して SBOM 出力形式を指定し、`CYCLONEDX_1_4` または `SPDX_2_3` を選択します。`s3Destination` パラメータは必須で、Amazon Inspector による書き込みを許可するポリシーで設定された S3 バケットを指定する必要があります。オプションで、`resourceFilterCriteria` パラメーターを使用して、レポートのスコープを特定のリソースに制限します。

------
#### [ AWS CLI ]
+ を使用してリソースSBOMs をエクスポートするには、次のコマンド AWS Command Line Interface を実行します。

  `aws inspector2 create-sbom-export --report-format FORMAT --s3-destination bucketName=amzn-s3-demo-bucket1,keyPrefix=PREFIX,kmsKeyArn=arn:aws:kms:Region:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`

  リクエスト内の *FORMAT* を任意の形式 (`CYCLONEDX_1_4` または `SPDX_2_3`) に置き換えます。次に、S3 送信先の *`user input placeholders`* を、エクスポート先の S3 バケットの名前、S3 での出力に使用するプレフィックス、およびレポートの暗号化に使用している KMS キーの ARN に置き換えます。

------