Ресурс etc_group
Используйте ресурс проверки аудита Chef InSpec, чтобы проверить группы, определённые в платформах Linux и Unix. Файл /etc/group содержит данные о каждой группе: имя группы, пароль, идентификатор группы, а также список пользователей, принадлежащих к группе, разделённых запятыми.
Доступность
Установка
Этот ресурс распространяется вместе с самим Chef InSpec. Вы можете использовать его автоматически.
Версия
Этот ресурс впервые стал доступен в версии v1.0.0 InSpec.
Синтаксис
Блок ресурса etc_group объявляет набор свойств, которые необходимо проверить:
describe etc_group('path') do
its('property') { should eq 'some_value' }
end
или:
describe etc_group.where(item: 'value', item: 'value') do
its('gids') { should_not contain_duplicates }
its('groups') { should include 'user_name' }
its('users') { should include 'user_name' }
end
где
-
('path')— это путь к файлуinetd.confпо умолчанию -
.where()фильтрует для конкретного элемента и значения, с которыми сравниваются параметры -
.whereфильтр может быть одним или несколькими из:-
name: 'name',group_name: 'group_name',password: 'password',gid: 'gid',group_id: 'gid',users: 'user_name',members: 'member_name'
-
Свойства
-
'gids','groups', и'users'являются допустимыми параметрами ресурса для этого ресурса.
Примеры
Следующие примеры показывают, как использовать этот ресурс проверки аудита Chef InSpec.
Проверка идентификаторов групп (GIDs) на дубликаты
describe etc_group do
its('gids') { should_not contain_duplicates }
end
Проверка всех групп на наличие определённого пользователя (или нескольких)
describe etc_group do
its('groups') { should include 'my_group' }
end
Проверка всех групп для определённого имени пользователя
describe etc_group do
its('users') { should include 'my_user' }
end
Фильтрация списка групп для определённого пользователя
describe etc_group.where(name: 'my_group') do
its('users') { should include 'my_user' }
end
Сопоставители
Полный список доступных сопоставителей можно найти на нашей странице сопоставителей.
© 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/etc_group/