无法为以下功能设置可公开访问的 IAM 策略:
Unable to set publicly accessible IAM policy on the following functions:
我最近继承了一个 firebase 项目的管理工作,我正在尝试重新创建该项目,以便我可以使用生产和开发版本,在部署我的功能时,我收到以下消息:
Unable to set publicly accessible IAM policy on the following functions:
{insert long list of functions here that have the following format}
projects/{project name}/locations/us-central1/functions/{function name}
Unauthenticated users will not be able access this function.
Some common causes of this:
- You may not have the roles/functions.admin IAM role. Note that roles/functions.developer does not allow you to change IAM policies.
- An organization policy that restricts Network Access on your project.
这是错误消息还是只是说明应用程序的用户需要登录才能使用这些功能?
注意:所有这些功能都已成功创建,并且在 firebase 控制台中没有任何错误消息。是的,我是 firebase 项目的 owner/admin 用户。
这是 faulty/bad/expired 授权令牌的问题。要使用该功能,应用程序会验证用户 key/credential.
TLDR:您需要更高的 google 云权限来更改您的功能,以便它们可以被任何用户触发。
为了从您的服务器或客户端或其他来源调用函数,它必须具有 'publicly accessible permissions'。当我最初上传这些功能时,我是从一个无权设置这些策略的帐户登录的,因此我无法修改它们,因此出现了错误消息。这些权限是在您的 google 云仪表板中设置的。以下是更改它的一些步骤。
以下内容来自google cloud:
Go to Google Cloud Console
Click the checkbox next to the function in which you are interested.
Click Permissions at the top of the screen. The Permissions panel
opens.
Click Add member.
In the New members field, enter one or more identities that need access to your function. This is usually a user or service account email.
Select a role (or roles) from the Select a role drop-down menu. The roles you select appear in the pane with a short description of the permissions they grant.
如果您想让所有经过身份验证的用户都可以访问该功能(这通常是大多数应用程序想要的),请将成员设置为 allUsers
,将角色设置为 Cloud functions invoker
注意:IAM 权限独立于 Firebase 或应用程序权限。他们有权访问 google 云中的 trigger/modify/view 信息。
您需要更高的 Google 云权限来更改您的功能,以便它们可以被任何用户触发。
为了从您的服务器或客户端或其他一些来源调用函数,它必须具有“可公开访问的权限”。
这些权限是在您的 google 云仪表板中设置的。以下是更改它的一些步骤。
转到 GCP 控制台。
查找您想要获得权限的函数。
然后单击 权限。
并单击 添加主体
新校长是allUsers
角色 可能是 CloudFunction Builder 什么的
我最近继承了一个 firebase 项目的管理工作,我正在尝试重新创建该项目,以便我可以使用生产和开发版本,在部署我的功能时,我收到以下消息:
Unable to set publicly accessible IAM policy on the following functions:
{insert long list of functions here that have the following format}
projects/{project name}/locations/us-central1/functions/{function name}
Unauthenticated users will not be able access this function.
Some common causes of this:
- You may not have the roles/functions.admin IAM role. Note that roles/functions.developer does not allow you to change IAM policies.
- An organization policy that restricts Network Access on your project.
这是错误消息还是只是说明应用程序的用户需要登录才能使用这些功能?
注意:所有这些功能都已成功创建,并且在 firebase 控制台中没有任何错误消息。是的,我是 firebase 项目的 owner/admin 用户。
这是 faulty/bad/expired 授权令牌的问题。要使用该功能,应用程序会验证用户 key/credential.
TLDR:您需要更高的 google 云权限来更改您的功能,以便它们可以被任何用户触发。
为了从您的服务器或客户端或其他来源调用函数,它必须具有 'publicly accessible permissions'。当我最初上传这些功能时,我是从一个无权设置这些策略的帐户登录的,因此我无法修改它们,因此出现了错误消息。这些权限是在您的 google 云仪表板中设置的。以下是更改它的一些步骤。
以下内容来自google cloud:
Go to Google Cloud Console
Click the checkbox next to the function in which you are interested.
Click Permissions at the top of the screen. The Permissions panel opens.
Click Add member.
In the New members field, enter one or more identities that need access to your function. This is usually a user or service account email.
Select a role (or roles) from the Select a role drop-down menu. The roles you select appear in the pane with a short description of the permissions they grant.
如果您想让所有经过身份验证的用户都可以访问该功能(这通常是大多数应用程序想要的),请将成员设置为 allUsers
,将角色设置为 Cloud functions invoker
注意:IAM 权限独立于 Firebase 或应用程序权限。他们有权访问 google 云中的 trigger/modify/view 信息。
您需要更高的 Google 云权限来更改您的功能,以便它们可以被任何用户触发。
为了从您的服务器或客户端或其他一些来源调用函数,它必须具有“可公开访问的权限”。
这些权限是在您的 google 云仪表板中设置的。以下是更改它的一些步骤。
转到 GCP 控制台。
查找您想要获得权限的函数。
然后单击 权限。
并单击 添加主体
新校长是allUsers 角色 可能是 CloudFunction Builder 什么的