Ресурс windows_defender
Эта страница сгенерирована из исходного кода Chef Infra Client. Чтобы предложить изменение, отредактируйте файл windows_defender.rb и отправьте запрос на вытягивание в репозиторий Chef Infra Client.
Используйте ресурс windows_defender для включения или выключения службы Microsoft Windows Defender.
Новая функция в Chef Infra Client 17.3.
Синтаксис
Полный синтаксис всех свойств, доступных для ресурса windows_defender:
windows_defender 'name' do
intrusion_protection_system true, false # default value: true
lock_ui true, false # default value: false
realtime_protection true, false # default value: true
scan_archives true, false # default value: true
scan_email true, false # default value: false
scan_mapped_drives true, false # default value: true
scan_network_files true, false # default value: false
scan_removable_drives true, false # default value: false
scan_scripts true, false # default value: false
action Symbol # defaults to :enable if not specified
endгде:
-
windows_defender— это ресурс. -
name— имя блока ресурса. -
actionопределяет действия, которые Chef Infra Client выполнит для перевода узла в нужное состояние. -
intrusion_protection_system,lock_ui,realtime_protection,scan_archives,scan_email,scan_mapped_drives,scan_network_files,scan_removable_drives, иscan_scripts— доступные свойства этого ресурса.
Действия
Ресурс windows_defender имеет следующие действия:
:disable- Отключить Windows Defender.
:enable- Включить и настроить Windows Defender. (по умолчанию)
:nothing- Этот блок ресурса не выполняет действий, пока не получит уведомление от другого ресурса. После уведомления этот блок ресурса либо выполняется немедленно, либо ставится в очередь для выполнения в конце выполнения Chef Infra Client.
Свойства
Ресурс windows_defender имеет следующие свойства:
-
intrusion_protection_system - Тип Ruby: true, false | Значение по умолчанию:
trueВключить сетевую защиту от эксплуатации известных уязвимостей.
-
lock_ui - Тип Ruby: true, false | Значение по умолчанию:
falseЗаблокировать интерфейс пользователя, чтобы предотвратить изменение настроек Windows Defender.
-
realtime_protection - Тип Ruby: true, false | Значение по умолчанию:
trueВключить сканирование в реальном времени загруженных файлов и вложений.
-
scan_archives - Тип Ruby: true, false | Значение по умолчанию:
trueСканировать архивные файлы, такие как .zip или .gz.
-
scan_email - Тип Ruby: true, false | Значение по умолчанию:
falseСканировать электронную почту на предмет вредоносных программ.
-
scan_mapped_drives - Тип Ruby: true, false | Значение по умолчанию:
trueСканировать файлы на подключенных сетевых дисках.
-
scan_network_files - Тип Ruby: true, false | Значение по умолчанию:
falseСканировать файлы в сети.
-
scan_removable_drives - Тип Ruby: true, false | Значение по умолчанию:
falseСканировать содержимое съемных дисков.
-
scan_scripts - Тип Ruby: true, false | Значение по умолчанию:
falseСканировать скрипты при сканировании на вредоносное ПО.
Общие функции ресурсов
Ресурсы 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 Infra Client.
Уведомления
-
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]', действие, которое должно быть выполнено, и :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_defender в рецептах:
Настройка настроек антивируса Windows Defender:
windows_defender 'Configure Defender' do
realtime_protection true
intrusion_protection_system true
lock_ui true
scan_archives true
scan_scripts true
scan_email true
scan_removable_drives true
scan_network_files false
scan_mapped_drives false
action :enable
end
Отключение антивируса Windows Defender:
windows_defender 'Disable Defender' do
action :disable
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_defender/