ресурс azurerm_postgresql_servers
Используйте ресурс аудита InSpec azurerm_postgresql_servers для проверки свойств и конфигурации нескольких серверов Azure PostgreSQL.
Версия 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.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
Критерии фильтрации
names
Фильтрует результаты, включая только те серверы, которые соответствуют заданному имени. Это строковое значение.
describe azurerm_postgresql_servers.where{ name.eql?('production-server-5') } do
it { should exist }
end
location
Фильтрует результаты, включая только те серверы, которые находятся в заданном местоположении. Это строковое значение.
describe azurerm_postgresql_servers.where{ location.eql?('eastus') } do
it { should exist }
end
Атрибуты
idnameskulocationpropertiestype
ids
Идентификатор ресурса Azure.
names
Имя сервера SQL, например, my-sql-server.
its('names') { should include 'my-sql-database' }
sku
SKU сервера. Это свойства, связанные с оплатой, для сервера.
locations
Расположение ресурса, например, eastus.
its('locations') { should_not include 'eastus' }
properties
Коллекция дополнительных свойств конфигурации, связанных с сервером PostgreSQL, например, administratorLogin.
type
Тип ресурса, обычно Microsoft.DBforPostgreSQL/servers.
Сопоставители
Этот ресурс аудита InSpec имеет следующие специальные сопоставители. Полный список доступных сопоставителей можно найти на странице Универсальные сопоставители.
exists
Контроль пройдет, если фильтр вернет хотя бы один результат. Используйте 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/