Ресурс windows_audit_policy
Эта страница сгенерирована из исходного кода Chef. Чтобы предложить изменение, отредактируйте файл windows_audit_policy.rb и отправьте запрос на вытягивание в репозиторий Chef.
Используйте ресурс windows_audit_policy для настройки системных и пользовательских параметров расширенной политики аудита Windows.
Новое в Chef Infra Client 16.2.
Синтаксис
Полный синтаксис всех свойств, доступных для ресурса windows_audit_policy:
windows_audit_policy 'name' do
audit_base_directories true, false
audit_base_objects true, false
crash_on_audit_fail true, false
exclude_user String
failure true, false
full_privilege_auditing true, false
include_user String
subcategory String, Array
success true, false
action Symbol # defaults to :set if not specified
endгде:
-
windows_audit_policy— это ресурс. -
name— имя блока ресурса. -
actionопределяет действия, которые Chef Infra Client выполнит для приведения узла к желаемому состоянию. -
audit_base_directories,audit_base_objects,crash_on_audit_fail,exclude_user,failure,full_privilege_auditing,include_user,subcategory, иsuccess— доступные свойства этого ресурса.
Действия
Ресурс windows_audit_policy имеет следующие действия:
:nothing- Этот блок ресурса не выполняет действий, пока не получит уведомление от другого ресурса. После уведомления этот блок ресурса либо выполняется немедленно, либо помещается в очередь для выполнения в конце выполнения Chef Infra Client.
:set- Настройка политики аудита.
Свойства
Ресурс windows_audit_policy имеет следующие свойства:
audit_base_directories-
Тип в Ruby: true, false
Указание этого параметра политики аудита в значение true заставит систему назначить системный список управления доступом именованным объектам для включения аудита контейнерных объектов, таких как каталоги.
audit_base_objects-
Тип в Ruby: true, false
Указание этого параметра политики аудита в значение true заставит систему назначить системный список управления доступом именованным объектам для включения аудита базовых объектов, таких как мьютексы.
crash_on_audit_fail-
Тип в Ruby: true, false
Указание этого параметра политики аудита в значение true заставит систему аварийно завершить работу, если система аудита не может записывать события.
exclude_user-
Тип в Ruby: Строка
Политика аудита, указанная категорией или подкатегорией, применяется к пользователю, если указан пользователь. Если указан пользователь, исключаем пользователя. Включить и исключить нельзя использовать одновременно.
failure-
Тип в Ruby: true, false
Укажите аудит ошибок. Установив это свойство в значение true, ресурс включит аудит ошибок для категории или подкатегории. Успех — значение по умолчанию и применяется, если не указано ни успех, ни ошибка.
full_privilege_auditing-
Тип в Ruby: true, false
Указание этого параметра политики аудита в значение true заставит систему аудировать все изменения привилегий, кроме SeAuditPrivilege. Установка этого свойства может привести к более быстрому заполнению журналов.
include_user-
Тип в Ruby: Строка
Политика аудита, указанная категорией или подкатегорией, применяется к пользователю, если указан пользователь. Если указан пользователь, включаем пользователя. Включить и исключить нельзя использовать одновременно.
subcategory-
Тип в Ruby: Строка, Массив
Подкатегория политики аудита, указанная GUID или именем. Применяется ко всей системе, если не указан пользователь.
success-
Тип в Ruby: true, false
Укажите аудит успехов. Установив это свойство в значение true, ресурс включит аудит успехов для категории или подкатегории. Успех — значение по умолчанию и применяется, если не указано ни успех, ни ошибка.
Общие функциональные возможности ресурсов
Ресурсы Chef включают общие свойства, уведомления и блокировки ресурсов.
Общие свойства
Следующие свойства общие для всех ресурсов:
compile_time-
Тип в Ruby: true, false | Значение по умолчанию:
falseУправление фазой, в которой ресурс запускается на узле. Установите в значение true, чтобы запустить его во время сборки коллекции ресурсов (
compile phase). Установите в значение false, чтобы запустить его во время настройки узла Chef Infra Client (converge phase). ignore_failure-
Тип в Ruby: true, false, :quiet | Значение по умолчанию:
falseПродолжить выполнение рецепта, если ресурс потерпит неудачу по какой-либо причине.
:quietне отобразит полный стек вызовов, и рецепт продолжит выполнение, если ресурс потерпит неудачу. retries-
Тип в Ruby: Целое число | Значение по умолчанию:
0Количество попыток перехватить исключения и повторить ресурс.
retry_delay-
Тип в Ruby: Целое число | Значение по умолчанию:
2Задержка повтора (в секундах).
sensitive-
Тип в Ruby: true, false | Значение по умолчанию:
falseОбеспечить, чтобы конфиденциальные данные ресурсов не регистрировались Chef InfraClient.
Уведомления
notifies-
Тип в Ruby: Символ, 'Chef::Resource[String]'
Ресурс может уведомить другой ресурс о выполнении действия при изменении его состояния. Укажите
'resource[name]',:action, который должен выполнить этот ресурс, и:timerдля этого действия. Один ресурс может уведомить несколько ресурсов; для каждого уведомляемого ресурса используйте операторnotifies. Если указанный ресурс не существует, генерируется ошибка. В отличие отsubscribes, которое не завершается ошибкой, если исходный ресурс не найден.
Таймер указывает момент во время выполнения Chef Infra Client, когда выполняется уведомление. Доступны следующие таймеры:
:beforeУказывает, что действие по уведомленному ресурсу должно выполняться перед обработкой блока ресурса, в котором находится уведомление.
:delayedПо умолчанию. Указывает, что уведомление должно помещаться в очередь и затем выполняться в конце выполнения Chef Infra Client.
-
:immediate,:immediately Указывает, что уведомление должно выполняться немедленно, для каждого уведомленного ресурса.
Синтаксис для notifies:
notifies :action, 'resource[name]', :timer
subscribesТип в Ruby: Символ, 'Chef::Resource[String]'
Ресурс может прослушивать другой ресурс и выполнять действие, если состояние прослушиваемого ресурса изменится. Укажите 'resource[name]', :action действия и :timer для этого действия.
Обратите внимание, что subscribes не применяет указанное действие к ресурсу, который он прослушивает - например:
file '/etc/nginx/ssl/example.crt' do
mode '0600'
owner 'root'
end
service 'nginx' do
subscribes :reload, 'file[/etc/nginx/ssl/example.crt]', :immediately
end
В этом случае свойство subscribes перезагружает службу nginx всякий раз, когда файл сертификата, расположенный в /etc/nginx/ssl/example.crt, обновляется. subscribes не вносит никаких изменений в сам файл сертификата, а просто прослушивает изменения в файле и выполняет действие :reload для своего ресурса (в данном примере nginx) при обнаружении изменений.
Если другой ресурс не существует, подписка не генерирует ошибку. В отличие от более строгих семантик notifies, которые генерируют ошибку, если другой ресурс не существует.
Таймер указывает момент во время выполнения Chef Infra Client, когда выполняется уведомление. Доступны следующие таймеры:
:beforeУказывает, что действие по уведомленному ресурсу должно выполняться перед обработкой блока ресурса, в котором находится уведомление.
:delayedПо умолчанию. Указывает, что уведомление должно помещаться в очередь и затем выполняться в конце выполнения Chef Infra Client.
-
:immediate,:immediately Указывает, что уведомление должно выполняться немедленно, для каждого уведомленного ресурса.
Синтаксис для subscribes:
subscribes :action, 'resource[name]', :timer
Блокировки
Свойство блокировки может использоваться для оценки состояния узла во время фазы выполнения Chef Infra Client. Основываясь на результатах этой оценки, свойство блокировки затем сообщает Chef Infra Client, следует ли продолжить выполнение ресурса. Свойство блокировки принимает либо строковое значение, либо значение Ruby-блока:
- Строка выполняется как командная оболочка. Если команда возвращает
0, блокировка применяется. Если команда возвращает любое другое значение, то свойство блокировки не применяется. Строковые блокировки в powershell_script выполняют команды Windows PowerShell и могут возвращатьtrueв дополнение к0. - Блок выполняется как код Ruby, который должен возвращать либо
trueилиfalse. Если блок возвращаетtrue, свойство блокировки применяется. Если блок возвращаетfalse, свойство блокировки не применяется.
Свойство блокировки полезно для обеспечения идемпотентности ресурса, позволяя этому ресурсу проверять желаемое состояние по мере его выполнения, а затем, если желаемое состояние присутствует, Chef Infra Client ничего не делает.
СвойстваСледующие свойства могут быть использованы для определения блокировки, которая оценивается во время фазы выполнения Chef Infra Client:
not_ifЗапретить выполнение ресурса, когда условие возвращает
true.only_ifРазрешить выполнение ресурса только если условие возвращает
true.
Примеры
Следующие примеры демонстрируют различные подходы к использованию ресурса windows_audit_policy в рецептах:
Установить политику входа и выхода в систему в «Успех и Ошибка»:
windows_audit_policy "Set Audit Policy for 'Logon and Logoff' actions to 'Success and Failure'" do
subcategory %w(Logon Logoff)
success true
failure true
action :set
end
Установить политику проверки подлинности учетных данных в «Успех»:
windows_audit_policy "Set Audit Policy for 'Credential Validation' actions to 'Success'" do
subcategory 'Credential Validation'
success true
failure false
action :set
end
Включить опцию CrashOnAuditFail:
windows_audit_policy 'Enable CrashOnAuditFail option' do
crash_on_audit_fail true
action :set
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/resources/windows_audit_policy/