如何在 Google 云平台 (GCP) 中跨服务 (API)、资源类型和项目列出、查找或搜索 iam 政策?

2024-02-15

在 Google Cloud Platform (GCP) 中,您只能通过调用 getIamPolicy(gcloud 中的 get-iam-policy)来获取特定资源的 IAM 策略。

有没有办法跨资源、服务或项目列出、搜索、列出、搜索或查找 IAM 策略?

这是回答以下问题所必需的:

  • 服务帐户有哪些角色?
  • 哪些资源是公开共享的?
  • 策略是否包含已删除的用户?
  • 用户离开我的公司后是否仍会出现在任何政策中?
  • 用户是否具有给定的角色?

您可以使用 search-all-iam-policies 跨服务、资源类型、项目、文件夹或组织内的项目搜索所有 IAM 策略。

浏览编号为 123 的项目中的策略(请注意,仅列出的资源类型 https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types支持):

gcloud asset search-all-iam-policies --scope=projects/123

谁在我的组织中担任所有者角色?

gcloud asset search-all-iam-policies --scope=organizations/456 --query="policy:roles/owner"

谁可以更改我的组织中的项目 IAM 政策?

--query='policy.role.permissions:resourcemanager.projects.setIamPolicy'

帐户有哪些角色?

--query="policy:[email protected] /cdn-cgi/l/email-protection"

哪些资源是公开共享的?

--query="policy:(allUsers OR allAuthenticatedUsers)"

政策中是否有已删除的帐户?

--query="policy:deleted"

Does [电子邮件受保护] /cdn-cgi/l/email-protection出现在任何政策中?

--query="policy:[email protected] /cdn-cgi/l/email-protection"

Does [电子邮件受保护] /cdn-cgi/l/email-protection有所有者角色吗?

--query="policy:(roles/owner [email protected] /cdn-cgi/l/email-protection)"

如何查找给定资源类型(例如项目)的所有 IAM 策略?

--query="policy:roles/owner resource://cloudresourcemanager.googleapis.com/projects"

是否有具有所有者角色的 Gmail 帐户?

`--query="policy:(roles/owner *gmail*)"

您可以将范围更改为文件夹或项目。

要使用该命令,您必须:

  • Enable 云资产API https://console.cloud.google.com/apis/library/cloudasset.googleapis.com, and

  • Have cloudasset.assets.searchAllIamPolicies范围的权限,包含在这些角色中:

    • 角色/cloudasset.viewer
    • 角色/cloudasset.owner
    • 角色/观众
    • 角色/编辑
    • 角色/所有者

文档:

  • 更多 gcloud 示例:https://cloud.google.com/asset-inventory/docs/searching-iam-policies-samples https://cloud.google.com/asset-inventory/docs/searching-iam-policies-samples
  • Guide: https://cloud.google.com/asset-inventory/docs/searching-iam-policies https://cloud.google.com/asset-inventory/docs/searching-iam-policies
  • API参考:https://cloud.google.com/asset-inventory/docs/reference/rest/v1p1beta1/iamPolicies/searchAll https://cloud.google.com/asset-inventory/docs/reference/rest/v1p1beta1/iamPolicies/searchAll
  • 可搜索的资源类型:https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Google 云平台 (GCP) 中跨服务 (API)、资源类型和项目列出、查找或搜索 iam 政策? 的相关文章

随机推荐

  • Crashlytics 找不到清单

    Fabric SDK 适用于 Android 间歇性地构建失败 并出现以下错误 ERROR Crashlytics Developer Tools error com crashlytics tools android project Ma
  • 如何在 JavaScript 正则表达式中捕获任意数量的组?

    我期望这行 JavaScript 代码 foo bar baz match s w 返回如下内容 foo bar baz foo bar baz 但它只返回最后捕获的匹配 foo bar baz baz 有没有办法获得所有捕获的比赛 当您重
  • iframe 内的 AngularJS ng-src

    我在 iframe 内使用 ng src 时遇到问题 我需要这样做 div class tab content ul class nav nav tabs div class tab pane pdf height col md 5 pad
  • 如何对 Spark 地图操作进行速率限制?

    我有一个 S3 json 数据集 它是 KMS 客户端加密的 DynamoDB 的转储 即每条记录都是 KMS 客户端独立加密的 我想使用 Spark 加载该数据集来执行一些分析 这意味着我必须调用 KMS 来解密每条记录 拥有一个简单地解
  • 狮鹫 2.7 教程

    按照 griffon framework org tutorials 1 getting started html 上的官方教程 安装了lazybones gradle 按照教程创建了示例应用程序 尝试运行 gradle build 并获取
  • 为什么这段代码给出奇怪的结果?好随便喔?

    我有一段代码可以生成一些随机数并在控制台上打印出来 不过我很好奇它打印的图案 例如 import java util public class Test public static void main String args Random
  • 捕获Android屏幕[重复]

    这个问题在这里已经有答案了 如何以编程方式在 Android 手机上执行屏幕捕获 除了在 r oot 手机上之外 您无法从 Android 应用程序执行此操作 因为您无权访问帧缓冲区设备 不过 您可以从开发计算机的 DDMS 窗口通过 ad
  • Knit:Markdown 文档中 LaTeX 环境中的 R 代码

    我有一个 Markdown 文档 其中包含 R 代码Knitr 对于渲染方程 我使用 LaTeX 只需在文本中编写其命令即可 假设我有以下 LaTeX 代码 begin displaymath mathbf X begin bmatrix
  • 如何在 ActionScript 中获取实例的“内存位置”?

    FlexBuilder 的调试器将向您显示任何范围内实例的 内存位置 或者 我只能假设 大致类似的东西 但我想在代码中获取这些信息 有点像Python的id函数 所以我可以很容易地跟踪对象如何在系统中移动 例如 我可能有 trace Ret
  • Rcpp 和移动语义

    我实现了一个算法C 返回一个巨大的元素数组作为输出 现在 我想实现一个包装器Rcpp这样我就可以使用调用这个函数R 我在 Makevars 文件中指定了以下设置 PKG CXXFLAGS std c 11 这样我就可以使用C 11版本了 R
  • Apache Localhost 403 Forbidden with macOS Sierra [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 macOS Sierra 更新使我的 Apache 的本地主机现在无法访问 我只能访问localhost 但下面的子文件夹localhos
  • Linq 合并查询

    我有两个想要合并的查询 这可能是左外连接 但看起来有所不同 第一个查询从表中选择不同的内容 var d from d in db Data select d ID d Label Value 0 Distinct 假设这返回以下内容 1 A
  • 新的 C++ Mongo 驱动程序:如何查看类型以及如何获取字符串值

    我有两个问题在教程中找不到答案 我得到一个文档 然后从文档中得到一个元素 如下所示 bsoncxx document element e doc id if e e type bsoncxx type k int32 return ERRO
  • 如何制作干净的网址

    我有一个网站 当我显示任何页面时 网址将更改为 https www asdgsdgsd nl index php https www asdgsdgsd nl index php或 about php 或 contact php 等 我已经
  • 如何使用 Function App 身份访问 Azure 服务总线

    我正在按照此处列出的步骤进行操作 但对于 python 代码 https learn microsoft com en us azure azure functions functions identity based connection
  • 如何对 Android Q、分区存储执行多个文件复制到共享集合下载?

    对于即将到来的Android Q 范围存储 https developer android com preview privacy scoped storage 我想知道我们如何执行文件复制 Android Q之前 我有几个图像文件 它们位
  • 如何在 Java 中获取声音文件的总时间?

    如何在 Java 中获取声音文件的总时间 UPDATE 看起来这段代码确实有效 长音频文件长度 audioFile length recordedTimeInSec audioFileLength frameSize frameRate 我
  • 当我运行单元测试时,是什么导致卡西尼号加载[重复]

    这个问题在这里已经有答案了 我有一个解决方案的测试项目 其中涉及 MVC Web 应用程序和几个类库 我使用模拟对象和 System Web Abstractions 来避免对 ASP NET 内部对象的依赖 但是当我开始我的测试项目卡西尼
  • 如何为子图设置相同的比例

    我想轻松地在视觉上比较子图 为此 我想为所有子图设置相同的比例 我的代码运行良好 并且我能够绘制子图 但具有自己的比例 我想保持 x 轴上的比例 如果您想要两个具有相同 x 轴的子图 您可以使用sharex keyword https ma
  • 如何在 Google 云平台 (GCP) 中跨服务 (API)、资源类型和项目列出、查找或搜索 iam 政策?

    在 Google Cloud Platform GCP 中 您只能通过调用 getIamPolicy gcloud 中的 get iam policy 来获取特定资源的 IAM 策略 有没有办法跨资源 服务或项目列出 搜索 列出 搜索或查找