Google Cloud Functions Deploy "allow unauthenticated invocations..."



每当我必须使用gcloudsdk部署新的python函数时,我都会收到以下消息

是否允许未经身份验证的调用新函数[函数名称]?

(是/否(?

警告:使用有限访问IAM策略创建的函数。要启用未经授权的访问,请考虑

"gcloud alpha函数添加iam策略绑定函数名称--region=europe-west1-member=allUsers--role=roles/cloudfunctions.invoker";

在部署时,是否有任何标志可以添加到命令中以使其成为NO

这是我用来部署一个函数的示例命令:

gcloud functions deploy function-name --region=europe-west1 --entry-point function-entry-point --trigger-resource "projects/my-project/databases/(default)/documents/user_ids/{user_id}" --trigger-event providers/cloud.firestore/eventTypes/document.create --runtime python37 --timeout 60 --project my-project

我刚刚也遇到了这个问题,发现您可以提供--no-allow-unauthenticated来先发制人地回答"否";对于这个问题。

gcloud functions deploy MyFunction 
--runtime=go116 --trigger-http --no-allow-unauthenticated

来源https://cloud.google.com/sdk/docs/scripting-gcloud#disabling_prompts:

您可以通过将配置中的disable_prompts属性设置为True或使用全局--quiet-q标志来禁用gcloud CLI命令中的提示。

因此,对于您的示例,您可以运行:

gcloud functions deploy function-name --quiet --region=europe-west1 --entry-point function-entry-point --trigger-resource "projects/my-project/databases/(default)/documents/user_ids/{user_id}" --trigger-event providers/cloud.firestore/eventTypes/document.create --runtime python37 --timeout 60 --project my-project
  1. 选择服务
  2. 单击"显示信息面板"以显示"权限"选项卡
  3. 在添加成员字段中,allUsers
  4. 从角色中选择云函数调用程序
  5. 添加

gcloud functions add-iam-policy-binding FUNCTION 
--member='serviceAccount:FUNCTION_IDENTITY' 
--role='roles/cloudfunctions.invoker'
gcloud run services add-iam-policy-binding [SERVICE_NAME] 
--member="allUsers" 
--role="roles/cloudfunctions.invoker"

相关内容

  • 没有找到相关文章

最新更新