ユーザーアイコン

mizuko

2日前

0
0

Cloud RunからVercel移行時のサービスアカウント管理

Vercel
Terraform
Cloud Run
Google Cloud Storage

Cloud Run環境では自動的にサービスアカウントがコンテナにアタッチされるが、Vercelでは明示的に認証情報を設定する必要がある。

Cloud Run環境の仕組み

  • サービスアカウントがコンテナに自動アタッチ
  • new Storage()で自動的にそのサービスアカウントを使用
  • 認証情報の設定不要

Vercel環境への移行

  1. GCS専用のサービスアカウントをTerraformで作成
  2. 必要な権限(roles/storage.objectAdmin)を付与
  3. JSONキーを生成してBase64エンコード
  4. Vercel環境変数に設定

Terraformでのサービスアカウント管理例

resource "google_service_account" "gcs_uploader" { account_id = "${local.prefix}-gcs-uploader" display_name = "GCS Uploader for Vercel" project = var.project_id }

この方法により、インフラをコードで管理しながらVercel環境でもGCSを利用できる。