问题标签 [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.
google-apps-script - 在 Google 电子表格中运行脚本时出现权限错误
我们正在开发一个使用 Google 电子表格作为输入的程序。读取、处理电子表格的值并将结果显示在网页中。
当用户注册时,我们使用服务帐户从模板中克隆电子表格。该模板有一些我们想用来帮助用户在电子表格上介绍值的脚本。
但是这些脚本似乎拥有服务帐户的所有者,并且根据 Google 属于服务帐户的脚本无法执行。
错误信息是:
Google Apps 脚本:该脚本无法运行,因为它归服务帐户所有。请在运行前将项目复制或转移到有效帐户。
我们将电子表格的所有权从服务帐户转移给 gmail 用户,如果该用户创建了一个脚本,它可以完美运行,但从模板继承的脚本似乎仍然拥有服务帐户的所有者,因此无法执行。
我的问题是......我如何将项目(脚本)的所有权从服务帐户转移给另一个用户?
我用谷歌搜索并在开发者谷歌电子表格网站上搜索,但找不到答案
api - 权限 Cloud Resource Manager API
我正在开发一个应用程序,我需要从我的开发人员控制台创建、编辑和删除项目。
为此,我正在使用Cloud Resource Manager API 。
向 API 发出请求需要 OAuth 2.0,因此我使用OAuth2.0 服务器到服务器(双腿 OAuth 或 2LO)
获得授权令牌后,我向 API 发出创建新项目的请求,但我被告知我没有许可证:The caller has no permissions
.
但是,如果我请求所有项目的列表,我会得到正确的响应。
我如何获得许可?
我按照所有步骤使用 OAuth 2.0 服务器到服务器并拥有一个 Google 工作帐户,服务帐户具有所有者角色和域的委托。
谢谢!!
google-bigquery - 如何使用 GCP 实现物联网:每个项目的云项目和服务帐户的限制是什么?它们可以增加到多少?
简而言之:每个项目的云项目和服务帐户的限制是什么?如何增加它们?架构是个好主意吗?
我正在开发一个物联网应用程序,该应用程序在该领域有数以万计的计划设备,每个客户有几台设备和数百个客户。每台设备将连续 (24/7) 将测量数据直接传输到 BigQuery,每台设备有一个数据集(或表),采样率至少为 100Hz。
当然,每台设备都需要经过身份验证和授权才能获得对其云数据集的严格限制访问。如 Auth Guide 中所述,API 密钥不是很安全。因此,最合适的解决方案似乎是每个客户有一个服务帐户,每个设备有一个帐户密钥(如本 GCP 文章中所建议的那样)。但是,Cloud IAM 的常见问题解答指出,每个项目的服务帐号数量限制为 100 个。
- 这个限制可以很快达到。如果是这样,将这个限制增加到每个项目的数千或数万个服务帐户有多容易/成本高昂?
- 在这种情况下,所需项目的数量也很容易增长到数百或数千。这可行吗?
- 这个整体概念是实用的还是 GCP 中有更好的方法?
google-cloud-platform - 如何列出我的 Google Cloud 项目的所有 IAM 用户
我希望能够列出与我的项目关联的所有用户和服务帐户(最好使用gcloud
CLI 工具,但如果需要,很乐意进行 API 调用)。
我可以使用它轻松列出与项目关联的所有服务帐户,但如何也列出所有用户?我期待类似以下的内容,但我在 doco 中看不到任何内容:
google-cloud-platform - 调用 IAM API 但出现错误 - “未找到服务 iam.googleapis.com 的方法 ListRoles”
我正在尝试使用调用 IAM api curl
,特别是organizations.roles.list
方法。
https://cloud.google.com/iam/reference/rest/v1/organizations.roles/list
从文档中,我的请求应该是这样构造的:
https://iam.googleapis.com/v1/organizations/<org-id>/roles
但是,调用它会导致此错误:
{ "error": { "code": 404, "message": "Method ListRoles not found for service iam.googleapis.com", "status": "NOT_FOUND" } }
完整请求:curl -H "Authorization: Bearer $(gcloud auth print-access-token)" https://iam.googleapis.com/v1/organizations/<org-id>/roles
我究竟做错了什么?
google-cloud-platform - 我需要服务帐户的什么权限才能允许将 docker 映像推送到容器注册表?
我正在使用服务帐户对实用程序进行身份验证gcloud
。我正在尝试使用以下命令推送 docker 映像:
gcloud docker -- push eu.gcr.io/abcxyz/example:latest
但得到一个错误:
我需要启用什么权限?
google-cloud-platform - 防止意外删除 spanner 数据库
为了减少由于工程错误导致数据丢失的机会,特定的 spanner 数据库如何授予单个服务帐户的独占权限?还是有更好的方法来做到这一点?
通常有几个人在谷歌云上的一个项目中被授予广泛的权利。这样他们就可以部署生产服务、处理 pagerduty 事件等。 据我所知,不可能减去已经授予的权限。 理想情况下,IAM 将允许删除对单个 spanner 数据库的所有权限,但打算访问它的指定服务帐户除外。
即使开发人员已被授予对项目的广泛(即所有者)访问权限,是否有办法防止删除 google spanner 数据库?
google-cloud-platform - 对谷歌扳手删除执行限制
为了防止因工程错误导致数据意外丢失,是否可以限制受 google spanner 中删除影响的行?
有一个使用角色/spanner.databaseUser 配置的服务帐户,但在正常操作中,它一次不应删除超过一行。为了防止意外匹配超出预期的严重应用程序错误,是否可以限制服务帐户一次删除的行数?
google-compute-engine - 我可以将 Google Cloud SQL 实例的访问权限限制为特定的服务帐号吗?
我在 Google Compute Engine 中有多个环境(开发、登台和生产),每个环境都有自己的 Google Cloud SQL 实例。实例通过 Cloud SQL 代理连接并使用与服务帐户绑定的凭据文件进行身份验证。我想为每个环境都有一个单独的服务帐户,这将被限制为访问特定于该环境的 SQL 实例。目前,似乎任何具有角色的服务帐户Cloud SQL Client
都可以访问同一项目中的任何Cloud SQL 实例。
我找不到任何方法将 Cloud SQL 实例的访问权限限制为特定服务帐户。有可能吗,如果有,怎么做?如果没有,是否有不同的方法来实现防止一个环境中的服务器访问另一个环境中的 Cloud SQL 实例的目标?
注意:此配置可通过 Google Cloud Storage 实现;可以分配一个特定的服务帐户对每个存储桶具有各种权限,这样开发服务帐户就不会意外访问生产文件。
google-cloud-platform - 禁止在 Cloud Identity 组织外部创建项目
我有一个映射到 Google Cloud Platform Org 的 Cloud Identity Org。
GCP 组织的 IAM 政策如下:
- “管理员”可以创建项目并进行管理操作
- “开发者”可以浏览
在 GCP Org 中一切正常,但我看到“Devs”用户可以在 GCP Org 之外创建项目。是否有防止这种行为的配置?
谢谢