☁️

【Cloud Functions for Firebase】「Cloud Functions 起動元」ロールの付与について

2024/06/18に公開

Cloud Functionsのhttpトリガーの関数をFirebaseのSDKから呼び出す場合、allUsersプリンシパルに「Cloud Functions 起動元(roles/cloudfunctions.invoker)」ロールが付与されていないとUNAUTHENTICATEDエラーとなり、関数を呼び出すことができません。

そしてこのロールは、cloudfunctions.functions.setIamPolicy権限を含むロールが付与されたIAMユーザーがデプロイをすれば、自動で付与されるものになっています。

https://cloud.google.com/iam/docs/permissions-reference#search

したがってロールが付与されていない場合、Cloud Functionsコンソール(FirebaseではなくGCPの方)で手動で付与するか、「Cloud Functions 管理者(roles/cloudfunctions.admin)」等のロールをIAMユーザーに付与した上で、関数を一度削除し再デプロイすると付与されるようになっています。

参考

https://github.com/firebase/firebase-functions/issues/645#issuecomment-606743473
https://github.com/firebase/firebase-functions/issues/673#issuecomment-620350385
https://github.com/firebase/firebase-functions/issues/646#issuecomment-606070852

株式会社Never

Discussion