aws_ecr_repositories ресурс
Используйте ресурс аудита InSpec aws_ecr_repositories для проверки свойств всех репозиториев в AWS Elastic Container Registry (ECR). Этот ресурс доступен в пакете ресурсов InSpec AWS версии 1.11.0 и выше.
Синтаксис
Блок ресурса aws_ecr_repositories объявляет тесты для всех репозиториев AWS ECR в стандартном реестре, если не указан идентификатор реестра.
describe aws_ecr_repositories do
it { should exist }
end
Репозитории в нестандартном реестре могут быть протестированы путём предоставления ID реестра, если у пользователя AWS есть необходимые разрешения на него.
describe aws_ecr_repositories(registry_id: '123456789012') do
it { should exist }
end
Параметры
Идентификатор реестра необязателен.
registry_id (необязательно)
12-значный идентификатор AWS Elastic Container Registry. Если не указано, используется стандартный реестр.
Свойства
| Свойство | Описание |
|---|---|
| arns | Amazon Resource Name (ARN), идентифицирующий репозиторий. |
| names | Имя репозитория. |
| uris | URI репозитория. |
| created_at_dates | Дата и время создания репозитория в формате даты JavaScript. |
| image_tag_mutability_status | Настройка изменяемости тегов репозитория. |
| image_scanning_on_push_status | Настройка, определяющая, будут ли изображения сканироваться после отправки в репозиторий. |
Примеры
Убедитесь, что в стандартном реестре ровно 3 репозитория
describe aws_ecr_repositories do
its("count") { should cmp 3 }
end
Используйте этот ресурс InSpec для запроса имён всех репозиториев, а затем выполните глубокое тестирование с использованием aws_ecr_repository.
aws_ecr_repositories.names.each do |repository_name|
describe aws_ecr_repository(repository_name) do
its('image_tag_mutability') { should eq 'MUTABLE' }
end
end
Сопоставители
Полный список доступных сопоставителей см. на странице Универсальные сопоставители.
exist
Контроль будет пройден, если описание вернёт хотя бы один результат.
Используйте should_not для проверки того, что сущность не должна существовать.
describe aws_ecr_repositories.where( <property>: <value>) do
it { should exist }
end
describe aws_ecr_repositories.where( <property>: <value>) do
it { should_not exist }
end
Разрешения AWS
Для вашего сущности должно быть разрешено действие ecr:DescribeRepositories.
Подробную документацию можно найти по адресам Действия, ресурсы и ключи условий для Amazon ECR и Действия, ресурсы и ключи условий для Identity And Access Management.
© 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/aws_ecr_repositories/