aws_alb ресурс
Используйте aws_alb ресурс InSpec аудита для проверки свойств одного AWS Application Load Balancer (ALB).
Синтаксис
Убедитесь, что aws_alb существует
describe aws_alb('arn:aws:elasticloadbalancing') do
it { should exist }
end
describe aws_alb(load_balancer_arn: 'arn:aws:elasticloadbalancing') do
it { should exist }
end
Параметры
load_balancer_arn (обязательно)
Этот ресурс принимает один параметр, ALB Arn, который однозначно идентифицирует ALB. Он может быть передан как строка или как load_balancer_arn: 'value' ключ-значение в хеше.
См. также документацию AWS по Elastic Load Balancing.
Свойства
| Свойство | Описание |
|---|---|
| load_balancer_name | Название балансировщика нагрузки. |
| load_balancer_addresses | Коллекция адресов балансировщика нагрузки. |
| canonical_hosted_zone_id | Идентификатор Amazon Route 53 зоны размещения для балансировщика нагрузки. |
| dns_name | DNS-имя балансировщика нагрузки. |
| availability_zones | Зоны доступности для балансировщика нагрузки. |
| security_groups | Группы безопасности для балансировщика нагрузки. Действительно только для балансировщиков нагрузки в VPC. |
| scheme | Тип балансировщика нагрузки. Действительно только для балансировщиков нагрузки в VPC. |
| state | Состояние балансировщика нагрузки. |
| subnets | Коллекция идентификаторов подсетей. |
| type | Тип балансировщика нагрузки. |
| vpc_id | Идентификатор VPC для балансировщика нагрузки. |
| zone_names | Коллекция имён зон доступности. |
| listeners | Коллекция слушателей для балансировщика нагрузки. |
| ssl_policies | Список SSL-политик, настроенных для слушателей балансировщика нагрузки. |
| external_ports | Список портов, настроенных для слушателей балансировщика нагрузки. |
| protocols | Список протоколов, настроенных для слушателей балансировщика нагрузки. |
Примеры
Проверка правильной настройки зон доступности ALB
describe aws_alb('arn::alb') do
its('zone_names.count') { should be > 1 }
its('zone_names') { should include 'us-east-2a' }
its('zone_names') { should include 'us-east-2b' }
end
Сопоставители
В этом ресурсе InSpec аудита нет специальных сопоставителей. Полный список доступных сопоставителей можно найти на нашей странице Универсальные сопоставители.
exist
Контроль пройдёт, если describe вернёт как минимум один результат.
Используйте should_not для проверки, что сущность не должна существовать.
describe aws_alb('AnExistingALB') do
it { should exist }
end
describe aws_alb('ANonExistentALB') do
it { should_not exist }
end
Разрешения AWS
Для вашего принципала должно быть разрешено действие elasticloadbalancing:DescribeLoadBalancers.
Подробная документация доступна по адресу Аутентификация и контроль доступа для балансировщиков нагрузки
© 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_alb/