Ресурс aws_config_delivery_channel
Сервис AWS Config может отслеживать и регистрировать изменения в конфигурациях ваших AWS-ресурсов. Канал доставки может записывать изменения в ведро S3, в SNS или в оба.
Используйте ресурс аудита InSpec aws_config_delivery_channel для проверки того, как сервис AWS Config доставляет эти уведомления об изменениях.
Один канал доставки разрешен на регион на один AWS аккаунт, и канал доставки требуется для использования AWS Config.
Синтаксис
describe aws_config_delivery_channel('my_channel') do
it { should exist }
end
describe aws_config_delivery_channel(channel_name: 'my-channel') do
it { should exist }
end
Поскольку у вас может быть только один канал доставки на регион, и подключения InSpec — по регионам, вы также можете опустить channel_name , чтобы получить единственный существующий канал доставки (если таковой имеется):
describe aws_config_delivery_channel do
it { should exist }
end
Параметры
channel_name (необязательный)
Данному ресурсу можно передать один параметр — имя канала. Его можно передать как строку или как channel_name: 'value' запись ключ-значение в хэше.
См. также документацию AWS по каналам доставки.
Свойства
| Свойство | Описание |
|---|---|
| channel_name | Имя канала доставки. По умолчанию AWS Config присваивает имя «default» при создании канала доставки. |
| s3_bucket_name | Имя Amazon S3 ведра, в которое AWS Config доставляет снимки конфигурации и файлы истории конфигурации. |
| s3_key_prefix | Префикс для указанного Amazon S3 ведра. |
| sns_topic_arn | Amazon Resource Name (ARN) Amazon SNS темы, в которую AWS Config отправляет уведомления об изменениях конфигурации. |
| delivery_frequency_in_hours | Указывает, как часто AWS Config отправляет изменения конфигурации в ведро s3 в канале доставки. |
Примеры
Проверка частоты записи изменений конфигурации в ведро s3
describe aws_config_delivery_channel(channel_name: 'my-recorder') do
its('delivery_frequency_in_hours') { should be > 3 }
end
Проверка доставки уведомлений об изменениях конфигурации в правильное ведро и ключ
describe aws_config_delivery_channel(channel_name: 'my_channel')
its('s3_bucket_name') { should eq 'my_bucket' }
its('s3_key_prefix') { should eq 'logs/' }
end
Матчеры
exist
Контроль пройдет, если describe вернёт хотя бы один результат.
Используйте should_not для проверки, что сущность не должна существовать.
describe aws_config_delivery_channel('my_channel') do
it { should exist }
end
describe aws_config_delivery_channel('my-nonexistent-channel') do
it { should_not exist }
end
Разрешения AWS
Вашему Принципалу потребуется config:DescribeDeliveryChannels действие с эффектом «Разрешено».
Подробная документация находится по адресу Действия, ресурсы и ключи условий для AWS Config.
© 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_config_delivery_channel/