ресурс azurerm_postgresql_servers
Используйте ресурс аудита InSpec azurerm_postgresql_servers для проверки свойств и конфигурации нескольких серверов Azure PostgreSQL.
Версия Azure REST API
Этот ресурс взаимодействует с версией 2017-12-01 Azure Management API. Более подробная информация доступна в официальной документации Azure.
В настоящее время не представляется возможным выбрать версию документации Azure API. Если вы обнаружите упоминание более новой версии в официальной документации, откройте вопрос или отправьте запрос на вытягивание с обновленной версией.
Доступность
Установка
Этот ресурс доступен в inspec-azure пакете ресурсов. Для его использования добавьте следующее в свой inspec.yml в вашем профиле верхнего уровня:
depends:
inspec-azure:
git: https://github.com/inspec/inspec-azure.git
Вам также потребуется настроить свои учетные данные Azure; см. README пакета ресурсов.
Версия
Этот ресурс стал доступен впервые в версии 1.7.0 пакета ресурсов inspec-azure.
Синтаксис
Блок ресурса azurerm_postgresql_servers возвращает все серверы Azure PostgreSQL, либо внутри группы ресурсов (если указано), либо внутри всей подписки.
describe azurerm_postgresql_servers do
...
end
или
describe azurerm_postgresql_servers(resource_group: 'my-rg') do
...
end
Примеры
В следующих примерах показано, как использовать этот ресурс аудита InSpec.
Проверка наличия серверов SQL
describe azurerm_postgresql_servers do
it { should exist }
its('names') { should include 'my-server-name' }
end
Критерии фильтрации
имена
Фильтрует результаты, чтобы включить только те серверы, которые соответствуют заданному имени. Это строковое значение.
describe azurerm_postgresql_servers.where{ name.eql?('production-server-5') } do
it { should exist }
end
местоположение
Фильтрует результаты, чтобы включить только те серверы, которые находятся в заданном месте. Это строковое значение.
describe azurerm_postgresql_servers.where{ location.eql?('eastus') } do
it { should exist }
end
Атрибуты
idnameskulocationpropertiestype
идентификаторы
Идентификатор ресурса Azure.
имена
Имя сервера SQL, например my-sql-server.
its('names') { should include 'my-sql-database' }
sku
SKU сервера. Это свойства, связанные с оплатой, относящиеся к серверу.
местоположения
Расположение ресурса, например eastus.
its('locations') { should_not include 'eastus' }
свойства
Коллекция дополнительных свойств конфигурации, связанных с сервером PostgreSQL, например administratorLogin.
тип
Тип ресурса, как правило Microsoft.DBforPostgreSQL/servers.
Сопоставители
У этого ресурса аудита InSpec есть следующие специальные сопоставители. Полный список доступных сопоставителей см. на нашей странице Универсальные сопоставители.
существует
Контроль пройдет, если фильтр вернет по крайней мере один результат. Используйте should_not если ожидается ноль совпадений.
describe azurerm_postgresql_servers 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_postgresql_servers/