Spec-Zone.ru › Chef 17

Ресурс google_service_accounts

[Редактировать на GitHub]

Синтаксис

Используется google_service_accounts, чтобы проверить ресурс Google ServiceAccount.

Примеры

describe google_service_accounts(project: 'chef-gcp-inspec', name: "display-name@project-id.iam.gserviceaccount.com") do
  its('service_account_emails') { should include "display-name@project-id.iam.gserviceaccount.com" }
  its('count') { should be <= 1000 }
end

Проверка, что для проекта нет более заданного количества учетных записей сервиса

describe google_service_accounts(project: 'chef-inspec-gcp') do
  its('count') { should be <= 1000}
end

Проверка доступности ожидаемого отображаемого имени учетной записи сервиса

describe google_service_accounts(project: 'chef-inspec-gcp') do
  its('service_account_display_names'){ should include "gcp_sa_name" }
end

Проверка доступности ожидаемого уникального идентификатора учетной записи сервиса

describe google_service_accounts(project: 'chef-inspec-gcp') do
  its('service_account_ids'){ should include 12345678 }
end

Проверка наличия учетной записи сервиса с ожидаемым именем

describe google_service_accounts(project: 'dummy-project') do
  its('service_account_names'){ should include "projects/dummy-project/serviceAccounts/dummy-acct@dummy-project.iam.gserviceaccount.com" }
end

Использование фильтрации для получения конкретной учетной записи сервиса

google_service_accounts(project: 'chef-inspec-gcp').where(service_account_display_names: /^dummyaccount/).service_account_names.each do |sa_name|
  describe google_service_account(name: sa_name) do
    it { should exist }
  end
end

Свойства

Свойства, к которым можно получить доступ из ресурса google_service_accounts:

Дополнительную информацию см. в ресурсе google_service_account.

service_account_names
массив имен google_service_account
project_ids
массив идентификаторов проекта google_service_account
service_account_ids
массив уникальных идентификаторов google_service_account
service_account_emails
массив адресов электронной почты google_service_account
service_account_display_names
массив отображаемых имен google_service_account
oauth2_client_ids
массив идентификаторов OAuth2-клиента google_service_account

Критерии фильтрации

Этот ресурс поддерживает все вышеперечисленные свойства в качестве критериев фильтрации, которые могут быть использованы с where в блоке или как метод.

Разрешения 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_accounts/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API