【问题标题】:Google Cloud Logging Authentication / permissionsGoogle Cloud Logging 身份验证/权限
【发布时间】:2020-02-18 14:55:34
【问题描述】:

我正在使用 Golang 库 cloud.google.com/go/logging 并希望发送运行时日志记录。

已经有一个 GOOGLE_APPLICATION_CREDENTIALS .json 文件 - 并且正在使用谷歌存储和 firebase - 所以我知道凭据正在工作。

使用日志记录,我收到错误“错误 403:调用者没有权限,禁止”

应用凭证中的账户是服务账户,我一直在查看 IAM 权限。没有明显的日志记录权限(还有其他堆栈驱动程序权限,用于调试、跟踪等,但这些似乎不起作用)。

所以假设到目前为止我在正确的位置 - 服务帐户需要哪些权限才能将日志记录数据发送到堆栈驱动程序日志记录?

【问题讨论】:

    标签: google-cloud-logging


    【解决方案1】:

    如果我们查看 writing entries to a log 的 API,我们会发现需要 IAM 权限 logging.logEntries.create

    更详细的文章可以在Access control guide找到。

    这描述了各种角色,包括:

    • roles/logging.logWriter

    【讨论】:

    • 我认为你是对的;我的问题是在 Web 控制台上找到选择它的位置。我发现日志管理员是正确的,但没有更精细的 - 现在正在工作。猜猜我需要安装命令行工具,这样我才能设置更多受限的权限。不过还是谢谢..
    • 但是 Neil,您是如何从 IAM 权限映射到包含该权限的各种角色的?文档页面中的文本搜索?
    • @Cheeso - 差不多。知道我想要称为 logging.logEntries.create 的“权限”,然后我找到了列出所有预先设置的角色的页面并查找包含权限的角色......该角色列表在这里找到:@ 987654323@ 请记住,这些角色只是 Google 策划的角色……您始终可以使用您喜欢的任何权限创建自己的角色(不推荐)。
    【解决方案2】:

    根据官方文档:

    使用 Go 的 Stackdriver Logging 库需要 Google Cloud 上的 Cloud IAM Logs Writer role。大多数 Google Cloud 环境都提供 默认为这个角色。

    1.App Engine 默认授予 Logs Writer 角色。

    2.在Google Kubernetes Engine上,创建集群时必须添加logging.write访问范围:

    3.使用Compute Engine VM实例时,为每个实例添加云平台访问范围。

    4.要在 Google Cloud 之外使用适用于 Go 的 Stackdriver Logging 库,包括在您自己的工作站、数据中心的计算机或其他云提供商的 VM 实例上运行该库,您必须提供您的 Google Cloud 项目ID 和相应的服务帐号凭据直接用于 Go 的 Stackdriver Logging 库。

    您可以手动创建和获取服务帐户凭据。指定角色字段时,请使用 Logs Writer 角色。如需详细了解 Cloud Identity 和访问管理角色,请访问访问控制指南。

    Setting Up Stackdriver Logging for Go

    gcloud iam service-accounts list 
    gcloud projects add-iam-policy-binding my-project-123 \
    --member serviceAccount:my-sa-123@my-project-123.iam.gserviceaccount.com \
    --role roles/logging.logWriter
    

    【讨论】:

    • 是场景4,默认没有设置权限。正如我在下面的评论中提到的那样,我认为您的权限是正确的,但我看不到在 Web 界面上执行此操作的位置,但找到了目前正在工作的 Logging Admin - 我稍后将安装 gcloud 工具来完善您建议。感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-10
    • 2017-09-23
    • 1970-01-01
    • 2018-07-09
    • 2014-10-11
    • 2011-12-25
    相关资源
    最近更新 更多