Ресурс aws_rds_instances
Используйте ресурс аудита InSpec aws_rds_instances для проверки свойств набора экземпляров AWS RDS.
RDS предоставляет доступ к возможностям сервера баз данных MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, Oracle или Amazon Aurora.
Экземпляры RDS — это вычислительные экземпляры, используемые службой RDS.
Синтаксис
Убедитесь, что у вас ровно 3 экземпляра
describe aws_rds_instances do
its('db_instance_identifiers.count') { should cmp 3 }
end
Параметры
Этот ресурс не ожидает никаких параметров.
См. также документацию AWS по RDS.
Свойства
| Свойство | Описание |
|---|---|
| db_instance_identifiers | Уникальные идентификаторы экземпляров RDS, возвращенные. |
| entries | Предоставляет доступ к исходным результатам запроса, который можно рассматривать как массив хешей. |
Примеры
Обеспечение существования конкретного экземпляра
describe aws_rds_instances do
its('db_instance_identifiers') { should include 'rds-12345678' }
end
Проверка шифрования всех экземпляров RDS по идентификатору
Используйте ресурс InSpec для запроса идентификаторов всех экземпляров RDS, а затем выполните глубокую проверку с помощью aws_rds_instance для обеспечения шифрования всех экземпляров и разумного размера.
aws_rds_instances.db_instance_identifiers.each do |db_instance_identifier|
describe aws_rds_instance(db_instance_identifier) do
it { should be_encrypted }
end
end
Сопоставители
Полный список доступных сопоставителей см. на странице Универсальные сопоставители.
exist
Контроль будет пройден, если describe вернет по крайней мере один результат.
Используйте should_not для проверки, что сущность не должна существовать.
describe aws_rds_instances do
it { should exist }
end
describe aws_rds_instances do
it { should_not exist }
end
Вашему Принципалу потребуются ec2:DescribeInstances, и iam:GetInstanceProfile действия, установленные на разрешение. Подробную документацию можно найти в Действия, ресурсы и ключи условий для Amazon EC2, и Действия, ресурсы и ключи условий для 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_rds_instances/