Я создал учетную запись службы с помощью команды
gcloud iam service-accounts create test-sa --display-name "TEST SA"
А затем я даю этой учетной записи службы права администратора в ведре GCS.
gsutil iam ch serviceAccount:test-sa@<PROJECT>.iam.gserviceaccount.com:admin gs://<BUCKET>
Теперь мне нужен метод для проверки того, какие роли / разрешения предоставлены учетной записи службы.
Один из способов - сделать что-то вроде:
gcloud projects get-iam-policy <PROJECT> \
--flatten="bindings[].members" \
--format='table(bindings.role)' \
--filter="bindings.members: serviceAccount:test-sa@<PROJECT>.iam.gserviceaccount.com"
Но приведенная выше команда возвращает пустое значение.
Но если я получу ACL для корзины, я ясно вижу, что участники и роли для корзины.
gsutil iam get gs://<BUCKET>
{
"bindings": [
{
"members": [
"serviceAccount:test-sa@<PROJECT>.iam.gserviceaccount.com"
],
"role": "roles/storage.admin"
},
{
"members": [
"projectEditor:<PROJECT>",
"projectOwner:<PROJECT>"
],
"role": "roles/storage.legacyBucketOwner"
},
{
"members": [
"projectViewer:<PROJECT>"
],
"role": "roles/storage.legacyBucketReader"
}
],
"etag": "CAI="
}
Может ли кто-нибудь посоветовать мне, как я могу просматривать сегменты / разрешения, связанные с учетной записью службы, а не наоборот?