Ресурс google_service_account
Синтаксис
Для проверки ресурса Google ServiceAccount используется google_service_account
Примеры
describe google_service_account(project: 'chef-gcp-inspec', name: "display-name@project-id.iam.gserviceaccount.com") do
it { should exist }
its('display_name') { should cmp '' }
end
describe google_service_account(project: 'chef-gcp-inspec', name: "nonexistent@project-id.iam.gserviceaccount.com") do
it { should_not exist }
end
Проверка наличия у GCP проекта IAM учетной записи сервиса с ожидаемым уникальным идентификатором
describe google_service_account(project: 'sample-project', name: 'sample-account@sample-project.iam.gserviceaccount.com') do
its('unique_id') { should eq 12345678 }
end
Проверка наличия у GCP проекта IAM учетной записи сервиса с ожидаемым идентификатором oauth2 клиента
describe google_service_account(project: 'sample-project', name: 'sample-account@sample-project.iam.gserviceaccount.com') do
its('oauth2_client_id') { should eq 12345678 }
end
Проверка отсутствия у GCP проекта IAM учетной записи сервиса пользовательских ключей
describe google_service_account_keys(project: 'chef-gcp-inspec', service_account: "display-name@project-id.iam.gserviceaccount.com") do
its('key_types') { should_not include 'USER_MANAGED' }
end
Свойства
Свойства, доступные из ресурса google_service_account:
name- Имя учетной записи сервиса.
project_id- Идентификатор проекта, которому принадлежит учетная запись сервиса.
unique_id- Уникальный и стабильный идентификатор учетной записи сервиса.
email- Электронный адрес учетной записи сервиса.
display_name- Пользовательское описание учетной записи сервиса.
oauth2_client_id- Идентификатор OAuth2 клиента для учетной записи сервиса.
Разрешения GCP
Убедитесь, что API управления правами доступа и идентификацией (IAM) включен для текущего проекта.
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/google_service_account/