⛏️

PHP on GKEとCloud Run間の認証

2021/11/05に公開

GKEとCloud Run間の認証について調査した際のURLやメモ書き。

概要

詳細

手順としては以下の通り。

  1. IAM: GKEのSAに roles/run.invoker を付与する
  2. App: RunのURLからIDトークンを取得、ヘッダに付与して、対象APIにアクセスする

IAM

省略。Runのサービス単位で権限を付与できる。Terraformの場合、google_cloud_run_service_iam | Resources | hashicorp/google | Terraform Registryが参考になる。

App

googleapis/google-auth-library-php: Google Auth Library for PHP にあるサンプルコードがそのまま使用できる。
注意点として、ローカル環境で動かす場合はミドルウェアやHTTPClientをDIするなどして、環境で切り替えるような実装が必要。

参考

Discussion