ресурс групп
Используйте ресурс аудита groups Chef InSpec для проверки нескольких групп в системе.
Ресурс groups использует следующие группы системы:
-
На системах, не являющихся Windows, ресурс группы проверяет локальные группы, определённые в файле
/etc/group. -
На системах Windows ресурс группы проверяет локальные группы, определённые в разделе «Локальные пользователи и группы».
Доступность
Установка
Этот ресурс поставляется вместе с самим Chef InSpec. Вы можете использовать его автоматически.
Версия
Этот ресурс впервые стал доступен в версии v1.0.0 InSpec.
Синтаксис
Блок ресурса groups использует where для фильтрации записей из системных групп. Если where опущено, выбираются все записи.
describe groups do
its('names') { should eq ['wheel', 'daemon', 'sys', 'adm'] }
its('names') { should include 'wheel' }
end
describe groups.where { members =~ /root/ } do
its('names') { should eq ['wheel', 'daemon', 'sys', 'adm'] }
end
Примеры
В следующих примерах показано, как использовать этот ресурс аудита Chef InSpec.
Проверка идентификатора группы wheel
describe groups.where { name == 'wheel' } do
it { should exist }
its('members') { should include 'root' }
end
Свойства
gids
Свойство gids проверяет идентификатор указанной группы:
its('gids') { should eq 1234 }
names
Свойство names проверяет поле имени в группе Windows:
its(‘names’) { should include ‘Power Users’ }
domains
Свойство domains проверяет домен группы Windows:
its(‘domains’) { should include ‘WIN-CIV7VMLVHLD’ }
members
Свойство members проверяет пользователей, входящих в группу:
its('members') { should include 'root' }
its('members') { should include 'Administrator' }
где members возвращает:
-
массив членов группы для платформы Windows.
Пример:
["member1", "member2"] -
массив с одним элементом, содержащим строку CSV членов группы для платформ, не являющихся Windows.
Пример:
["member1,member2"]
members_array
Свойство members_array проверяет членов группы так же, как и свойство members, но возвращаемое значение этого свойства всегда является массивом членов группы.
its('members_array') { should include 'root' }
its('members_array') { should include 'Administrator' }
Сопоставители
Полный список доступных сопоставителей см. на нашей странице сопоставителей.
exist
Сопоставитель exist проверяет существование пользователя с указанным именем:
it { should exist }
© 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/groups/