イメージスキャン - Amazon ECR

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

イメージスキャン

Amazon ECR イメージスキャンは、コンテナイメージ内のソフトウェアの脆弱性を識別するのに役立ちます。 Amazon ECR は、オープンソースの Clair プロジェクトの共通脆弱性識別子 (CVEs) データベースを使用し、スキャン結果のリストを提供します。デプロイされているコンテナイメージのセキュリティに関する情報については、スキャンの結果を確認できます。Clair の詳細については、「 の https://github.com/quay/clair Clair」を参照してくださいGitHub。

Amazon ECR では、可能であれば、アップストリームのディストリビューションソースからの CVE の重大度 が使用されます。それ以外の場合は、共通脆弱性評価システム (CVSS) スコアが使用されます。CVSS スコアは、NVD 脆弱性の重大度評価を取得するために使用できます。詳細については、「NVD 脆弱性の重大度.」を参照してください。

に保存されているコンテナイメージを手動でスキャンできますAmazon ECR。または、イメージをリポジトリにプッシュするときにスキャンするようにリポジトリを設定することもできます。最後に完了したイメージスキャンの結果は、各イメージに対して取得できます。Amazon ECR は、イメージスキャンの完了時にイベントを Amazon EventBridge (旧称 CloudWatch イベント) に送信します。詳細については、「 」を参照してください。Amazon ECR イベントと EventBridge.

イメージをスキャンする際の一般的な問題のトラブルシューティングの詳細については、「」を参照してください。イメージスキャンの問題のトラブルシューティング.

プッシュ時にスキャンするようにリポジトリを設定する

イメージスキャン設定は、作成時に新しいリポジトリに対しても、既存のリポジトリに対しても設定できます。[scan on push (プッシュ時にスキャン)] が有効になっている場合、イメージはリポジトリにプッシュされた後でスキャンされます。リポジトリで [scan on push (プッシュ時にスキャン)] が無効になっている場合は、各イメージスキャンを手動で開始してスキャン結果を取得する必要があります。

プッシュ時にスキャンするように新しいリポジトリを作成する

プッシュ時にスキャンするように新しいリポジトリを設定すると、リポジトリにプッシュされたすべての新しいイメージがスキャンされます。最後に完了したイメージスキャンの結果を取得できます。詳細については、「 」を参照してください。イメージスキャン結果の取得.

AWS マネジメントコンソール の手順については、「リポジトリの作成.」を参照してください。

次のコマンドを使用して、プッシュ時にイメージスキャンを設定して新しいリポジトリを作成します。

  • create-repository (AWS CLI)

    aws ecr create-repository --repository-name name --image-scanning-configuration scanOnPush=true --region us-east-2

次のコマンドを使用して、プッシュ時にイメージスキャンを設定して新しいリポジトリを作成します。

  • New-ECRRepository (AWS Tools for Windows PowerShell)

    New-ECRRepository -RepositoryName name -ImageScanningConfiguration_ScanOnPush true -Region us-east-2 -Force

プッシュ時にスキャンするよう既存のリポジトリを設定する

既存のリポジトリは、イメージをリポジトリにプッシュするときにスキャンするように設定できます。この設定は、今後のイメージプッシュに適用されます。最後に完了したイメージスキャンの結果を取得できます。詳細については、「 」を参照してください。イメージスキャン結果の取得.

AWS マネジメントコンソール の手順については、「リポジトリの編集.」を参照してください。

既存のリポジトリのイメージスキャン設定を編集するには、次のコマンドを使用します。

  • put-image-scanning-configuration (AWS CLI)

    aws ecr put-image-scanning-configuration --repository-name name --image-scanning-configuration scanOnPush=true --region us-east-2
    注記

    リポジトリのイメージの [scan on push (プッシュ時にスキャン)] を無効にするには、scanOnPush=false. を指定します。

既存のリポジトリのイメージスキャン設定を編集するには、次のコマンドを使用します。

  • New-ECRRepository (AWS Tools for Windows PowerShell)

    Write-ECRImageScanningConfiguration -RepositoryName name -ImageScanningConfiguration_ScanOnPush true -Region us-east-2 -Force

イメージの手動スキャン

プッシュ時にスキャンするように設定されていないリポジトリ内のイメージをスキャンする場合は、イメージスキャンを手動で開始できます。イメージは 1 日に 1 回しかスキャンできません。この制限には、初回のプッシュスキャン (有効になっている場合) と手動スキャンが含まれます。

イメージをスキャンする際の一般的な問題のトラブルシューティングの詳細については、「」を参照してください。イメージスキャンの問題のトラブルシューティング.

を使用して手動イメージスキャンを開始するには、次の手順を実行します。AWS マネジメントコンソール.

  1. Amazon ECR コンソール (https://console.aws.amazon.com/ecr/repositories) を開きます。

  2. ナビゲーションバーから、リポジトリを作成するリージョンを選択します。

  3. ナビゲーションペインで、[Repositories.] を選択します。

  4. [Repositories (リポジトリ)] ページで、スキャンするイメージが含まれているリポジトリを選択します。

  5. イメージ] ページで、スキャンするイメージを選択し、[スキャン.] を選択します。

イメージの手動スキャンを開始するには、次の AWS CLI コマンドを使用します。imageTag または を使用してイメージを指定できます。どちらのイメージも imageDigest list-images CLI コマンドを使用して取得できます。

  • start-image-scan (AWS CLI)

    次の例では、イメージタグを使用しています。

    aws ecr start-image-scan --repository-name name --image-id imageTag=tag_name --region us-east-2

    次の例では、イメージダイジェストを使用しています。

    aws ecr start-image-scan --repository-name name --image-id imageDigest=sha256_hash --region us-east-2

イメージの手動スキャンを開始するには、次の AWS Tools for Windows PowerShell コマンドを使用します。ImageId_ImageTag または を使用してイメージを指定できます。どちらのイメージも ImageId_ImageDigest Get-ECRImage CLI コマンドを使用して取得できます。

  • Get-ECRImageScanFinding (AWS Tools for Windows PowerShell)

    次の例では、イメージタグを使用しています。

    Start-ECRImageScan -RepositoryName name -ImageId_ImageTag tag_name -Region us-east-2 -Force

    次の例では、イメージダイジェストを使用しています。

    Start-ECRImageScan -RepositoryName name -ImageId_ImageDigest sha256_hash -Region us-east-2 -Force

イメージスキャン結果の取得

最後に完了したイメージスキャンのスキャン結果を取得できます。結果には、検出されたソフトウェアの脆弱性が、共通の脆弱性およびエクスポージャー (CVE) データベースに基づく重大度別に一覧表示されます。

イメージをスキャンする際の一般的な問題のトラブルシューティングの詳細については、「」を参照してください。イメージスキャンの問題のトラブルシューティング.

を使用してイメージスキャンの結果を取得する手順は、次のとおりです。AWS マネジメントコンソール.

  1. Amazon ECR コンソール (https://console.aws.amazon.com/ecr/repositories) を開きます。

  2. ナビゲーションバーから、リポジトリを作成するリージョンを選択します。

  3. ナビゲーションペインで、[Repositories.] を選択します。

  4. [Repositories (リポジトリ)] ページで、スキャン結果を取得するイメージを含むリポジトリを選択します。

  5. [Images (イメージ)] ページの [Vulnerabilities (脆弱性)] 列で、スキャン結果を取得するイメージの [Details (詳細)] を選択します。

以下の AWS CLI コマンドを使用して、AWS CLI. でイメージスキャンの結果を取得します。imageTag または を使用してイメージを指定できます。どちらのイメージも imageDigest list-images CLI コマンドを使用して取得できます。

  • describe-image-scan-findings (AWS CLI)

    次の例では、イメージタグを使用しています。

    aws ecr describe-image-scan-findings --repository-name name --image-id imageTag=tag_name --region us-east-2

    次の例では、イメージダイジェストを使用しています。

    aws ecr describe-image-scan-findings --repository-name name --image-id imageDigest=sha256_hash --region us-east-2

以下の AWS Tools for Windows PowerShell コマンドを使用して、イメージスキャンの結果を取得します。ImageId_ImageTag または を使用してイメージを指定できます。どちらのイメージも ImageId_ImageDigest Get-ECRImage CLI コマンドを使用して取得できます。

  • Get-ECRImageScanFinding (AWS Tools for Windows PowerShell)

    次の例では、イメージタグを使用しています。

    Get-ECRImageScanFinding -RepositoryName name -ImageId_ImageTag tag_name -Region us-east-2

    次の例では、イメージダイジェストを使用しています。

    Get-ECRImageScanFinding -RepositoryName name -ImageId_ImageDigest sha256_hash -Region us-east-2