Spec-Zone.ru › Chef 18

Ресурс etc_group

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

Используйте ресурс проверки аудита 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/

Spec-Zone.ru

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