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