Open2
CloudRunのパブリックAPIをデプロイする設定
google-github-actions/deploy-cloudrun を使う場合にパブリックAPIをデプロイする設定
↓にもちょろっと書かれてるが、分かりづらかったので備忘録
通常のデプロイでは、リクエストしても403になる
これはCloudRunのセキュリティで「認証が必要」の設定になっているため
CloudRunのドキュメントには gcloud run deploy [SERVICE_NAME] ... --allow-unauthenticated
のように --allow-unauthenticated
を指定すれば良いと書かれている
deploy-cloudrun のflagsでは実際に gcloud run deploy
する時に指定するオプションの設定ができるため、ここに --allow-unauthenticated
を指定する
ただし、これだけでは認証の設定は変わらない
もう一度CloudRunのドキュメントをよく読むと、以下の記載がある
Cloud Run サービスで認証を構成するには、run.services.setIamPolicy 権限が必要です。この権限は、オーナーと Cloud Run 管理者の両方のロールに含まれています。ロールの一覧とそれに関連する権限については、Cloud Run IAM のロールをご覧ください。
なのでGitHub Actionsを実行するIAMに「Cloud Run 管理者」を設定する必要があった
deploy-cloudrun へのflagsの設定、IAMへの「Cloud Run 管理者」の設定によって以下の様に「未認証の呼び出しを許可」にすることができる