ACEクラウドソリューションのデプロイと実装HARD単一選択

Cloud Build で CI/CD パイプラインを実装しています。ビルド中に Artifact Registry への Docker イメージプッシュが必要ですが、認証情報の管理を最もセキュアに行う方法はどれですか?

  1. A. Docker Hub の認証情報を Cloud Build のビルドステップの環境変数に設定する
  2. B. cloudbuild.yaml 内に docker login コマンドとパスワードを記述する
  3. C. Secret Manager に認証情報を保存して Cloud Build からアクセスする
  4. D. Cloud Build のサービスアカウントに roles/artifactregistry.writer を付与する
解答と解説を見る

正解: D

Cloud Build はデフォルトのサービスアカウント([PROJECT_NUMBER]@cloudbuild.gserviceaccount.com)を使用します。このサービスアカウントに roles/artifactregistry.writer を付与することで、docker login なしに Artifact Registry へのプッシュが可能です。Cloud Build のビルドステップは自動的に gcloud の認証を引き継ぐため、明示的な認証情報の管理が不要です。Docker Hub の認証情報を環境変数に設定すると、ログに漏洩するリスクがあります。cloudbuild.yaml にパスワードを記述するのは最悪のセキュリティプラクティスです。Secret Manager の使用は有効ですが、サービスアカウントへのロール付与の方がより簡潔でセキュアです。

▸ この試験を本気で演習する(全150問・無料)