Ресурс google_users
Используйте ресурс аудита InSpec google_users для проверки свойств всех или отфильтрованной группы пользователей GCP.
Синтаксис
Блок ресурса google_users собирает пользователей GCP для указанного клиента. Как описано здесь, это по умолчанию использует псевдоним my_customer для представления customerId вашей учетной записи.
describe google_users(customer: 'my_customer') do
it { should exist }
end
Аргумент domain можно использовать для получения полей только из одного домена. Должен быть указан либо параметр customer, либо параметр domain.
describe google_users(domain: 'my_domain.com') do
it { should exist }
end
Используйте этот ресурс InSpec для перечисления идентификаторов, а затем проведите углубленный тест с помощью google_user.
google_users(customer: 'my_customer').user_ids.each do |user_id|
describe google_user(user_key: user_id) do
it { should exist }
it { should_not be_suspended }
end
end
Примеры
В следующих примерах показано, как использовать этот ресурс аудита InSpec.
Проверка, что доступно не более заданного количества пользователей для проекта
describe google_users(customer: 'my_customer') do
its('count') { should be <= 100}
end
Проверка, что ожидаемый пользователь доступен для проекта
describe google_users(customer: 'my_customer') do
its('user_names') { should include "Monsieur Happy" }
end
Проверка, что существует подмножество всех пользователей с именем, соответствующим «Batman»
google_users(customer: 'my_customer').where(user_full_name: /Batman/).user_ids.each do |user_id|
describe google_user(user_key: user_id) do
it { should exist }
end
end
Критерии фильтрации
Этот ресурс поддерживает следующие критерии фильтрации: user_id; user_full_name и user_email. Любой из них можно использовать с where, как в блоке, так и как метод.
Свойства
-
user_ids- массив целых чисел идентификаторов google_user -
user_full_names- массив строк полных имён google_user -
user_emails- массив строк первичных адресов электронной почты google_user
Разрешения GCP
Убедитесь, что в службе Google Workspace включен API каталога и у вас есть достаточные привилегии для перечисления пользователей.
© 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_users/