Spec-Zone.ru › Chef 18

azurerm_security_center_policy ресурс

[править на GitHub]

Используйте ресурс аудита InSpec, чтобы проверить свойства политики Центра безопасности. Azure в настоящее время поддерживает поиск политики только через свой API REST. Если вы попытаетесь найти другую политику безопасности, вы получите ошибку.

Политика Центра безопасности Azure определяет набор рекомендуемых правил для ресурсов в данной подписке. Эти параметры будут генерировать оповещения, если будет обнаружено нарушение рекомендаций. Этот ресурс позволяет проверить настроенные оповещения для вашей учетной записи.

Версия Azure REST API

Этот ресурс взаимодействует с версией 2015-06-01-Preview API Azure Management. Дополнительную информацию см. в официальной документации Azure.

В настоящее время, кажется, нет способа выбрать версию документации API Azure. Если вы обнаружите новую версию, упомянутую в официальной документации, откройте вопрос или отправьте запрос на добавление, используя обновленную версию.

Доступность

Установка

Этот ресурс доступен в inspec-azure пакете ресурсов. Чтобы использовать его, добавьте следующее в свой inspec.yml в профиле верхнего уровня:

depends:
  - name: inspec-azure
    git: https://github.com/inspec/inspec-azure.git

Вам также необходимо настроить свои учетные данные Azure; см. README пакета ресурсов.

Версия

Этот ресурс стал доступен в версии 1.0.0 пакета ресурсов inspec-azure.

Синтаксис

Блок ресурса azurerm_security_center_policy идентифицирует политику Центра безопасности по имени. В текущем API REST вы можете искать только default политику. Если политика не указана, будет использоваться значение по умолчанию.

describe azurerm_security_center_policy(name: 'default') do
  ...
end

Примеры

Проверить существование политики Центра безопасности по умолчанию

describe azurerm_security_center_policy(name: 'default') do
  it { should exist }
end

Проверить, что в политике Центра безопасности по умолчанию включена сборка логов

describe azurerm_security_center_policy(name: 'default') do
  its('log_collection') { should eq('On') }
end

Политика, отличная от политики по умолчанию, не может быть найдена

describe azurerm_security_center_policy(name: 'NonDefaultPolicy') do
  it { should_not exist }
end

Параметры

  • name

Примеры параметров

Имя политики Центра безопасности. Оно должно быть default. Если имя не указано, будет происходить поиск default политики Центра безопасности (необязательно).

describe azurerm_security_center_policy(name: 'default') do
  its('log_collection') { should eq('On') }
end

Атрибуты

  • id
  • name
  • log_collection
  • patch
  • baseline
  • anti_malware
  • disk_encryption
  • network_security_groups
  • web_application_firewall
  • next_generation_firewall
  • vulnerability_assessment
  • storage_encryption
  • just_in_time_network_access
  • app_whitelisting
  • sql_auditing
  • sql_transparent_data_encryption
  • notifications_enabled,
  • send_security_email_to_admin
  • contact_emails
  • contact_phone
  • pricing_tier

id

Идентификатор политики Центра безопасности.

its('id') { should eq('/subscriptions/<SUBSCRIPTION_ID>/providers/Microsoft.Security/policies/default') }

name

Имя политики Центра безопасности.

its('name') { should eq('default') }

log_collection

Сбор логов указывает, будет ли агент мониторинга собирать данные о безопасности (On|Off).

its('log_collection') { should eq('On') }

pricing_tier

Модель стоимости/функциональности, в рамках которой работает подписка (Standard|Free).

its('pricing_tier') { should eq('Standard') }

patch

Указатель, следует ли включить обновления системы для виртуальных машин (On|Off).

its('patch') { should eq('On') }

baseline

Указатель, следует ли включить рекомендации по уязвимости ОС для виртуальных машин (On|Off).

its('baseline') { should eq('On') }

anti_malware

Антивирус указывает, следует ли включать рекомендации по защите конечных точек для виртуальных машин (On|Off).

its('anti_malware') { should eq('On') }

disk_encryption

Шифрование дисков указывает, следует ли включать рекомендации для виртуальных машин (On|Off).

its('disk_encryption') { should eq('On') }

network_security_groups

Группы безопасности сети указывают, следует ли включать рекомендации для виртуальных машин (On|Off).

its('network_security_groups') { should eq('On') }

web_application_firewall

Брандмауэр веб-приложений указывает, следует ли включать рекомендации для виртуальных машин (On|Off).

its('web_application_firewall') { should eq('On') }

next_generation_firewall

Брандмауэр следующего поколения указывает, следует ли включать рекомендации для виртуальных машин (On|Off).

its('next_generation_firewall') { should eq('On') }

оценка уязвимостей

Оценка уязвимостей указывает, следует ли включать рекомендации для виртуальных машин (On|Off).

its('vulnerability_assessment') { should eq('On') }

storage_encryption

Шифрование хранилища указывает, следует ли по умолчанию шифровать новые данные в Azure Blobs и Files (On|Off).

its('storage_encryption') { should eq('On') }

доступ в реальном времени к сети

Доступ в реальном времени к сети указывает, следует ли включать рекомендации для виртуальных машин (On|Off).

its('just_in_time_network_access') { should eq('On') }

авторизация приложений

Авторизация приложений указывает, включены ли адаптивные средства управления приложениями (On|Off).

its('app_whitelisting') { should eq('On') }

SQL-аудит

SQL-аудит указывает, включены ли рекомендации по аудиту и обнаружению угроз (On|Off).

its('sql_auditing') { should eq('On') }

прозрачное шифрование данных SQL

Прозрачное шифрование данных SQL указывает, включены ли рекомендации (On|Off).

its('sql_transparent_data_encryption') { should eq('On') }

включены уведомления

Включенные уведомления указывают, отправляются ли оповещения о безопасности по электронной почте контактному лицу (true|false).

its('notifications_enabled') { should eq(true) }

отправить оповещение о безопасности администратору

Отправка оповещений о безопасности администратору указывает, будет ли администратор подписки получать оповещения о безопасности (true|false).

its('send_security_email_to_admin') { should eq(true) }

адреса электронной почты контактов

Адреса электронной почты контактов содержат список адресов электронной почты контактов по безопасности.

its('contact_emails') { should include('security@example.com') }

телефон контакта

Телефон контакта содержит номер телефона контакта по безопасности.

its('contact_phone') { should eq('1-111-111-1111') }

Другие атрибуты

Существуют дополнительные атрибуты, к которым можно получить доступ, которые мы не задокументировали. Обратитесь к документации Azure. К любому атрибуту в ответе можно получить доступ, используя имена ключей, разделенные точками (.).

API не всегда возвращает ключи, не имеющие связанных данных. Возможны случаи, когда глубоко вложенный элемент не содержит требуемого атрибута в цепочке вызова. Если вы обнаружите необходимость проверки свойств, которые могут быть nil, создайте вилку этого пакета ресурсов и добавьте функцию доступа к ресурсу. В этой функции вы сможете защититься от ключей nil. Запросы на добавление всегда приветствуются.

Обработчики

В этом ресурсе аудита InSpec есть следующие специальные обработчики. Полный список доступных обработчиков можно найти на странице Универсальные обработчики.

существует

Контроль пройдет, если ресурс вернет результат. Используйте should_not если ожидается ноль совпадений.

# default should always exist
describe azurerm_security_center_policy(name: 'default') do
  it { should exist }
end

# this security center policy should not exist
describe azurerm_security_center_policy(name: 'DoesNotExist') do
  it { should_not exist }
end

Разрешения Azure

Ваш сервис-принцип должен быть настроен с ролью contributor в подписке, которую вы хотите протестировать.

© 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/azurerm_security_center_policy/

Spec-Zone.ru

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