Ресурс aws_internet_gateways
Используйте ресурс аудита InSpec aws_internet_gateways для проверки свойств всех интернет-шлюзов AWS, принадлежащих учетной записи AWS.
Синтаксис
Блок ресурса aws_internet_gateways собирает все интернет-шлюзы и затем проверяет эту группу.
describe aws_internet_gateways do
it { should exist }
end
Параметры
Этот ресурс не ожидает никаких параметров.
Свойства
| Свойство | Описание |
|---|---|
| ids | Идентификатор интернет-шлюза. Название поля — id. |
| names | Значение тега Name. Оно nil, если не определено. Название поля — name. |
| vpc_ids | Идентификатор подключённой VPC. Он nil, если ресурс находится в состоянии detached. Название поля — vpc_id. |
| tags | Хэш, где каждая пара ключ-значение соответствует тегу интернет-шлюза. Название поля — tags. |
| attachment_states | Указывает, подключен ли интернет-шлюз к VPC (attached или detached). Название поля — attachment_state. |
| owner_ids | Идентификатор учетной записи AWS, которой принадлежит интернет-шлюз. Название поля — owner_id. |
Примеры
Проверить, что существует ровно 3 интернет-шлюза
describe aws_internet_gateway do
its('count') { should cmp 3 }
end
Используйте этот ресурс InSpec для запроса идентификаторов всех интернет-шлюзов, а затем выполните глубокую проверку с помощью aws_internet_gateway.
aws_internet_gateways.ids.each do |id|
describe aws_internet_gateway(id: id) do
it { should be_attached }
end
end
Сопоставители
Полный список доступных сопоставителей можно найти на нашей странице Универсальные сопоставители.
exist
Контроль пройдёт, если описание вернёт по крайней мере один результат. Имена полей, описанные в таблице свойств, должны использоваться для <property> в where пункте.
Используйте should_not для проверки, что сущность не должна существовать.
describe aws_internet_gateways.where( <property>: <value>) do
it { should exist }
end
describe aws_internet_gateways.where( <property>: <value>) do
it { should_not exist }
end
Разрешения AWS
Ваш принципал должен иметь разрешение на выполнение действия ec2:DescribeInternetGateways.
Подробную документацию можно найти по адресу Действия, ресурсы и ключи условий для Amazon EC2 и Действия, ресурсы и ключи условий для управления идентификацией и доступом.
© 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_internet_gateways/