我们可以列出所有iam服务帐户如下:
gcloud iam service-accounts list我们可以列出所有iam的角色如下:
gcloud iam roles list这只适用于一个项目。
不过,我有多个项目,它们是由文件夹组织的。因此,我想一次列出所有IAM的原则和作用。如何才能做到这一点?
发布于 2022-08-05 16:42:05
列出所有项目ID:
gcloud projects list --format="value(projectId)"按项目(ID)列出所有服务帐户(电子邮件):
PROJECTS=$(\
gcloud projects list \
--format="value(projectId)")
for PROJECT in ${PROJECTS}
do
echo "Project: ${PROJECT}"
gcloud iam service-accounts list \
--project=${PROJECT} \
--format="value(email)"
doneIIUC gcloud iam roles list是一个全局列表。
对于项目中的自定义角色(名称),需要:
gcloud iam roles list \
--project=${PROJECT} \
--format="value(name)"所以也许:
PROJECTS=$(\
gcloud projects list \
--format="value(projectId)")
for PROJECT in ${PROJECTS}
do
echo "Project: ${PROJECT}"
gcloud iam roles list \
--project=${PROJECT} \
--format="value(name)"
done或者也许:
gcloud projects get-iam-policy ${PROJECT}和:
PROJECTS=$(\
gcloud projects list \
--format="value(projectId)")
for PROJECT in ${PROJECTS}
do
echo "Project: ${PROJECT}"
gcloud projects get-iam-policy ${PROJECT}
done可以使用--filter和--format标志对上述内容进行进一步筛选和格式化。
https://stackoverflow.com/questions/73251765
复制相似问题