Ресурс aws_config_recorder
Используйте ресурс аудита InSpec aws_config_recorder для проверки свойств вашей службы AWS Config.
Служба AWS Config может отслеживать и записывать изменения в конфигурациях ваших ресурсов AWS. Ресурс Aws Config Recorder используется для обнаружения изменений в конфигурациях ресурсов и записи этих изменений в качестве элементов конфигурации.
По состоянию на апрель 2018 года разрешено только по одному записывателю конфигурации на регион.
Синтаксис
Убедитесь, что группа автоматического масштабирования существует и имеет правильные размеры масштаба.
describe aws_config_recorder('my-recorder') do
it { should exist }
end
Вы также можете использовать синтаксис хеша для передачи имени записывателя.
describe aws_config_recorder(recorder_name: 'my-recorder') do
it { should exist }
end
Поскольку в каждом регионе может быть только один записыватель, а подключения InSpec соответствуют регионам, вы также можете опустить имя записывателя, чтобы получить единственный существующий записыватель (если он есть):
describe aws_config_recorder do
it { should exist }
end
Параметры
recorder_name (необязательно)
Этот ресурс принимает один параметр — имя записывателя конфигурации. Его можно передать как строку или как recorder_name: 'value' элемент пары «ключ-значение» в хеше.
См. также документацию AWS по конфигурации.
Свойства
| Свойство | Описание |
|---|---|
| recorder_name | Имя записывателя. По умолчанию AWS Config автоматически присваивает имя «default» при создании записывателя конфигурации. Изменить присвоенное имя нельзя. |
| role_arn | Amazon Resource Name (ARN) роли IAM, используемой для описания ресурсов AWS, связанных со счетом. |
| resource_types | Список типов ресурсов AWS через запятую, для которых AWS Config записывает изменения конфигурации (например, AWS::EC2::Instance) |
Примеры
Проверка активности и записи записывателя
describe aws_config_recorder do
it { should be_recording }
end
Проверка правильности role_arn для записывателя
Роль используется для предоставления разрешений на S3 Buckets, темы SNS и получения данных конфигурации для поддерживаемых ресурсов AWS. describe aws_config_recorder do its(‘role_arn’) { should eq ‘arn:aws:iam::721741954427:role/My_Recorder’ } end
Проверка отслеживания записывателем изменений в правильных ресурсах.
describe aws_config_recorder do
its('resource_types') { should include 'AWS::EC2::CustomerGateway' }
its('resource_types') { should include 'AWS::EC2::EIP' }
end
Сопоставители
be_recording
Убедитесь, что записыватель активен.
it { should be_recording }
be_recording_all_resource_types
Указывает, будет ли ConfigurationRecorder записывать изменения для всех ресурсов независимо от типа. Если это значение истинно, resource_types игнорируется.
it { should be_recording_all_resource_types }
be_recording_all_global_types
Указывает, будет ли ConfigurationRecorder записывать изменения для типов глобальных ресурсов (таких как субъекты).
it { should be_recording_all_global_types }
Разрешения AWS
Вашему субъекту потребуется config:DescribeConfigurationRecorders действие с эффектом Allow.
Подробную документацию можно найти в Действия, ресурсы и ключи условий для 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_recorder/