答案 0 :(得分:0)
如Google documentation中所述:
要查看服务帐户是否有权访问资源,请在目标资源上调用getIamPolicy方法。例如,要查看项目的拨款,请调用projects.getIamPolicy方法。
因此,要检查服务帐户是否有权访问存储桶,必须使用Buckets: getIamPolicy指定要检查的存储桶。
答案 1 :(得分:0)
再次查看您的问题之后,我找到了一种将Buckets: testIamPermissions与服务帐户结合使用的方法:
您必须在您的环境中下载service account’s key.json file(已设置gcloud
)并使用以下命令创建环境变量:
GOOGLE_APPLICATION_CREDENTIALS=[key.json]
然后,您可以通过以下方式获得此服务帐户的令牌:
gcloud auth application-default print-access-token
最后,您可以curl
testIamPermissions
URL并将该令牌作为授权标头传递:
curl 'https://www.googleapis.com/storage/v1/b/[BUCKET]/iam/testPermissions?permissions=[PERMISSION]' -H 'Authorization: Bearer [TOKEN]’