azurerm_key_vault_key ресурс
Используйте ресурс аудита InSpec azurerm_key_vault_key для проверки свойств и конфигурации ключа Azure в хранилище.
Версия Azure REST API
Этот ресурс взаимодействует с версией 2016-10-01 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.3.0 набора ресурсов inspec-azure.
Синтаксис
vault_name и key_name должны быть указаны в качестве параметра.
Вы также можете указать key_version - если версия не указана, будет использоваться последняя версия ключа.
describe azurerm_key_vault_key('vault-101', 'secret-key') do
its('key.kid') { should_not be_nil }
its('attributes.enabled') { should eq true }
end
Примеры
Если ключ хранилища ключей ссылается на валидную Vault Name, Key Name и Key Version
describe azurerm_key_vault_key('vault-101', 'secret-key', '7df9bf2c3b4347bab213ebe233f0e350') do
it { should exist }
its('key.kid') { should_not be_nil }
its('attributes.enabled') { should eq true }
end
Если ключ хранилища ключей ссылается на невалидную Vault Name или Key Name
describe azurerm_key_vault_key('vault-101', 'incorrect-key') do
it { should_not exist }
end
Параметры
vault_name- Имя хранилища ключей.key_name- Имя ключа.key_version(необязательно) - Версия ключа, например,7df9bf2c3b4347bab213ebe233f0e350.
Атрибуты
attributeskeymanagedtags
Атрибуты
Атрибуты управления ключами.
Ключ
JSON-ключ веб-ключа.
Управляемый
Истина, если срок действия ключа управляется хранилищем ключей. Если это ключ, поддерживающий сертификат, то управляемый будет истиной.
Теги
Примененные к ключу теги ресурсов.
Другие атрибуты
Существуют дополнительные атрибуты, к которым можно получить доступ, которые мы не задокументировали. Обратите внимание на документацию Azure. Любой атрибут в ответе может быть получен с использованием имен ключей, разделенных точками (.).
API может не всегда возвращать ключи, не имеющие связанных данных. В некоторых случаях вложенное свойство может не содержать требуемого атрибута в цепочке вызова. Если вы обнаруживаете, что пишите тесты на свойства, которые могут быть nil, создайте форк этого набора ресурсов и добавьте метод доступа к ресурсу. В этом методе доступа вы сможете защититься от nil-ключей. Запросы на вытягивание всегда приветствуются.
Матчеры
Этот ресурс аудита InSpec имеет следующие специальные матчеры. Полный список доступных матчеров можно найти на нашей странице универсальных матчеров.
exists
describe azurerm_key_vault_key('vault-101', 'secret-key') do
it { should exist }
end
Разрешения Azure
Ваш сервисный принцип должен быть настроен с ролью contributor на подписке, которую вы хотите проверить. Ваше хранилище ключей Azure также должно иметь этот сервисный принцип в политике доступа с разрешениями keys/get и keys/list.
© 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_key_vault_key/