如何限制对谷歌云功能的访问,允许用户在触发器上进行身份验证



我创建了一个谷歌云函数,并在权限中向我希望能够触发该函数的3个用户添加了">云函数调用器"角色。

该函数可在提供的触发器端点访问,类似于以下内容:https://us-central1-name-of-my-app.cloudfunctions.net/function-name

我已经为自己分配了函数中的调用程序角色。当我输入URL时,我得到一个403

您的客户端无权从此服务器。

由于我已经登录到我的谷歌帐户,我以为我有权访问此功能。

如果没有,如何在不通过allUsers公开整个功能的情况下将身份验证提示作为功能的一部分显示?

即使您在浏览器上进行了身份验证,也不能直接调用该函数(稍后,当您在全局负载均衡器后面并激活IAP时,将提供此功能(。

因此,要调用函数,必须提供一个身份令牌(而不是访问令牌(。为此,您可以将gcloud SDK与这样的命令一起使用(在linux上,并在使用用户凭据(gcloud init(初始化它之后(

curl -H "Authorization: Bearer $(gcloud auth print-identity-token)" https://....

您还可以在它前面创建一个API网关(我写了一篇关于这方面的文章(,并使用API密钥。

最新更新