问题标签 [google-cloud-iam]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
112 浏览

google-cloud-platform - Provide Access to view "Enabled APIs & Services" dashboard

I am not able to find any way to grant access to view the "Enabled APIs & Services" dashboard page. My co-worker does not have access but I can't find any roles or documentation that suggest what access is needed to view this page. See attached image of issue.enter image description here

This article suggests Cloud Endpoints can be used, but when I go to Cloud Endpoints I just end up at a blank page (see below):

enter image description here

0 投票
1 回答
755 浏览

google-cloud-platform - 服务帐户可以创建 PubSub 订阅,但不能从中读取

我创建了一个打算在我们的开发环境中使用的服务帐户,并且由于它的凭据已检查到源代码控制中,因此我想将其访问权限锁定在最低限度。

当启动新主机时,我们的应用程序会创建一个新的 PubSub 订阅,监听新创建的订阅,然后在完成后将其删除。我们选择了这个模型而不是拥有许多预配置/硬编码的订阅,因为主机的数量会随着时间的推移而增加和减少,如果可能的话,我们不想要特定于主机的配置(以主机订阅映射的形式)等等。我们希望在本地开发环境中具有相同的行为,非常适合调试。

我创建了一个特定的“开发”主题,并授予我们的开发服务帐户 Pub/Sub Admin 角色,允许它附加订阅到该主题。我还授予服务帐户项目级权限,允许它创建订阅。服务帐户可以成功创建新订阅并将其附加到主题,但是当它尝试从新订阅中读取时,我收到权限被拒绝错误。

我猜这是因为,在检查新创建的订阅时,我注意到创建它的服务帐户没有被授予对该订阅的任何类型的权限。我希望创建订阅的帐户至少具有读取权限。

服务帐户有没有办法创建订阅,将它们附加到主题,然后从该订阅中读取...而不授予服务帐户访问任何其他订阅或主题的权限?我知道我可以只给服务帐户一个“更高级别”的角色,可以读取所有订阅,但这违背了拥有一个仅限开发帐户的目的。

0 投票
3 回答
49107 浏览

google-cloud-platform - 如何列出与 gcp 服务帐户关联的角色?

在谷歌云 gui 控制台中,我转到“IAM 和管理员”>“服务帐户”,并使用查看者角色创建了一个名为“my-service-account”的服务帐户。

然后我运行了这个命令:

并看到了这个输出:

根据文档,这意味着此服务帐户没有与之关联的策略。所以我给它分配了一个不包含在它的“政策”中的“角色”。

如何列出与服务帐户关联的角色?

编辑:感谢对这个问题的出色回答,我现在可以遍历所有项目并得到我想要的。因此,根据这些 cmd 工具的版本,这应该列出所有项目中单个服务帐户的所有角色绑定:

0 投票
2 回答
1184 浏览

google-bigquery - 使用服务帐户通过 API 从 BigQuery 中基于 Google Sheets 的表中查询数据

我可以使用服务帐户从原生 BigQuery 表中获取数据。

但是,我在尝试select使用同一服务帐户从 BigQuery 中基于 Google 表格的表时遇到错误。

输出:

我尝试使用oauth2client.service_account.ServiceAccountCredentialsfor 显式定义scopes,包括 的范围drive,但尝试这样做时出现以下错误:

我的理解是,身份验证现在是通过 IAM 处理的,但我看不到任何角色可应用于此服务帐户,这些角色与驱动器有任何关系。

如何使用 BigQuery python 客户端从工作表支持的表中进行选择?

0 投票
2 回答
4241 浏览

kubernetes - 具有“roles/container.admin”的谷歌云服务帐户

我正在尝试使用“roles/container.admin”创建一个服务帐户,但我收到一条错误消息,指出此资源不支持该角色。

如果我从 CONSOLE UI 创建一个服务帐户,我可以毫无问题地添加这个角色。

0 投票
1 回答
225 浏览

google-cloud-platform - 使用 Google Cloud Platform IAM 临时切换到高特权角色

我正在将我的许多项目切换到谷歌云平台 (GCP),但我传统上对 AWS 有更多的经验。

在 AWS 中,使用 IAM,我可以授予我的用户一个低权限角色并配置一个更高权限的角色,以允许在提供最近的 MFA 后临时承担(切换)它。

这个想法是为了让我的开发人员在他们的磁盘上没有以明文形式存在的强大的访问密钥(当然还有全盘加密)。这减轻了泄漏该密钥(只读访问)的影响,并降低了发生随机错误的风险。(参考 AWS 文档http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sample-policies.html#ExampleMFAforIAMUserAge

如何使用 GCP IAM 重现这种模式?

0 投票
1 回答
184 浏览

kubernetes - 可访问特定 Kubernetes 集群的自定义角色

TL;博士。我想将角色绑定到用户,然后指定用户只能访问(读/写)集群 A,而不能访问集群 B 或 C(A、B 和 C 都在同一个 Google Cloud 项目下) .


在 Google Cloud 上,我有一个项目,其中包含多个 Kubernetes 集群(基于 GKE)。

我需要将审计人员添加到特定的 Kubernetes 集群(并确保他无法访问项目中的其他 GKE 集群)。

到目前为止,我已经创建了一个“审计员”角色。

现在我需要将角色附加到特定的电子邮件帐户,我正在摸不着头脑。在IAM Admin 页面上,我可以将角色绑定到特定的电子邮件和资源类型。但是没有任何迹象表明我正在将角色与特定的特定资源联系起来。

如何确保特定用户电子邮件只能访问特定 GKE 集群?

是否应该从集群 A 本身将用户绑定到集群?(这意味着用户不会看到集群 B 和 C)。如果是这样,怎么做?

0 投票
1 回答
5889 浏览

google-cloud-platform - 创建没有组织的 GCP 项目

我有一个 G Suite 帐户。当我使用 G Suite 超级管理员登录时,GCP 会自动创建一个组织。当我尝试在控制台中创建项目时,会自动选择组织,即使我尝试选择“无组织”也是如此。

有没有办法在 GCP 控制台中创建不属于组织的项目?

谢谢

0 投票
1 回答
631 浏览

google-cloud-datastore - 无法在 Google Cloud Console 中授予数据存储权限

在 Google Cloud IAM 中管理角色时,所有 datastore.* 权限(例如 datastore.entities.{create, list, get})都显示为灰色,带有黄色感叹号徽章和解释“无法分配权限”的工具提示。

我假设这就是为什么所有数据存储 api 调用都会导致“com.google.cloud.datastore.DatastoreException:缺少或不足的权限”,即使在为角色分配项目级别权限时也是如此。

知道如何将这些权限授予角色吗?

0 投票
2 回答
122 浏览

python - 使用 Python 通过 API 删除 Google Compute Account 的问题

我能够使用来自此处此处的信息拼凑一个 Python 脚本以与 Google API 库进行交互。下面的代码正在运行,我可以列出特定项目中的所有帐户。见下文:

代码:

输出:

现在,我试图利用 API 删除不需要的特定帐户(下面的脚本),但是,我似乎无法让 API 工作。我在这里再次使用 Google API 库,但它似乎不起作用。我不确定我做错了什么。非常感谢您提供的任何帮助。

代码:

输出: