【问题标题】:Which service account are my pods running as by default?默认情况下,我的 pod 运行的是哪个服务帐户?
【发布时间】:2019-01-03 12:05:17
【问题描述】:

当我在 GKE 上创建包含一些节点的集群时,Google 会将我的请求解释为来自哪个用户? 例如。如果我在其中一个节点上打开控制台并对 Stackdriver API 进行 API 调用。 API 认为我是哪个用户?

$ kubectl exec -it my-app bash
$ rails c
irb(main):005:0* Google::Cloud::ErrorReporting.report \
                 Exception.new(msg: "from console")
=> nil
irb(main):006:0> {:msg=>"from console"} (Exception)
Google::Cloud::PermissionDeniedError: 7:User not authorized.

我以为我是 Compute Engine 默认服务帐户,但这不可能吗?我为该服务帐户分配了 Owner 角色以进行测试,但它仍然失败。

我是否需要在 GKE 上的 Docker 映像上安装 gcloud,以便在启动 Rails 之前以具有正确角色的服务帐户身份进行身份验证?

【问题讨论】:

标签: service-accounts google-kubernetes-engine google-cloud-stackdriver


【解决方案1】:

我认为您的问题在这里得到了回答: https://cloud.google.com/kubernetes-engine/docs/tutorials/authenticating-to-cloud-platform

您需要使用服务帐户的 json 密钥作为 GKE 集群中的机密访问 API。

【讨论】:

    猜你喜欢
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    • 2021-04-21
    • 1970-01-01
    • 2018-08-08
    • 2014-09-27
    相关资源
    最近更新 更多