azurerm_mysql_databases ресурс
Используйте ресурс проверки InSpec для аудита свойств и конфигурации баз данных Azure MySQL.
Версия Azure REST API
Этот ресурс взаимодействует с версией 2017-12-01 API Azure Management. Дополнительную информацию можно найти на странице Официальная документация Azure.
В настоящий момент нет возможности выбрать версию документации Azure API. Если вы обнаружите упоминание более новой версии в официальной документации, откройте вопрос или отправьте исправление с обновлённой версией.
Доступность
Установка
Этот ресурс доступен в inspec-azure пакете ресурсов. Для его использования добавьте следующее в свой inspec.yml в вашем профиле верхнего уровня:
depends:
inspec-azure:
git: https://github.com/inspec/inspec-azure.git
Вам также потребуется настроить свои учетные данные Azure; см. страницу с README пакета ресурсов.
Версия
Этот ресурс впервые стал доступен в версии 1.6.0 пакета ресурсов inspec-azure.
Синтаксис
Блок ресурса azurerm_mysql_databases возвращает все базы данных MySQL на сервере MySQL в пределах группы ресурсов.
describe azurerm_mysql_databases(resource_group: ..., server_name: ...) do
...
end
Примеры
В следующих примерах показано, как использовать этот ресурс аудита InSpec.
Проверка наличия баз данных MySQL
describe azurerm_mysql_databases(resource_group: 'resource-group-1', server_name: 'production') do
it { should exist }
its('names') { should include 'my-database-name' }
end
Критерии фильтрации
-
azure_mysql_databasesресурсы могут быть отфильтрованы по всем доступным свойствам. Ниже приведены некоторые примеры.
имена
Фильтрует результаты, чтобы включить только те базы данных, имена которых соответствуют заданному значению. Это строковое значение.
describe azurerm_mysql_databases(resource_group: 'rg', server_name: 'server').where{ name.eql?('production-database') } do
it { should exist }
end
местоположение
Фильтрует результаты, чтобы включить только те группы ресурсов, которые находятся в заданном месте. Это строковое значение.
describe azurerm_mysql_databases(resource_group: 'rg', server_name: 'server').where{ location.eql?('eastus') } do
it { should exist }
end
Атрибуты
idnametypeproperties
идентификаторы
Идентификатор ресурса Azure.
имена
Имя базы данных SQL, например my-sql-database.
its('names') { should include 'my-sql-database' }
тип
Тип ресурса, обычно Microsoft.Sql/servers/databases.
свойства
Коллекция дополнительных свойств конфигурации, связанных с базой данных MySQL, например collation.
Сопоставители
У этого ресурса аудита InSpec есть следующие специальные сопоставители. Полный список доступных сопоставителей можно найти на странице Универсальные сопоставители.
существует
Контроль пройдёт, если фильтр вернёт как минимум один результат. Используйте should_not если ожидается ноль совпадений.
describe azurerm_mysql_databases do
it { should 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_mysql_databases/