Ресурс aws_efs_file_systems
Используйте ресурс аудита aws_efs_file_systems InSpec для проверки свойств некоторых или всех файловых систем AWS EFS. Для аудита отдельной файловой системы EFS используйте aws_efs_file_ststem (единственное число).
Этот ресурс добавлен в пакет ресурсов InSpec AWS в версии 1.10.0 и доступен с InSpec 4.18.108 и более поздними версиями.
Синтаксис
Блок ресурса aws_efs_file_systems собирает группу описаний файловых систем EFS и затем проверяет эту группу.
describe aws_efs_file_systems
it { should exist }
end
Параметры
Этот ресурс не ожидает никаких параметров.
Свойства
| Свойство | Описание |
|---|---|
| tags | Список тегов, имеющихся у файловой системы EFS. |
| names | Значение тега Name (регистрозависимое), если он определён. |
| file_system_ids | Идентификатор файловой системы EFS. |
| creation_tokens | Токен создания, с которым связана файловая система EFS. |
| owner_ids | Идентификатор владельца файловой системы EFS. |
| entries | Предоставляет доступ к исходным результатам запроса, которые можно рассматривать как массив хешей. |
| creation_times | Время создания файловой системы EFS. |
| performance_modes | Режим производительности файловой системы EFS, например, ‘maxIO’. |
| encryption_status | Указывает, зашифрована ли файловая система EFS. |
| throughput_modes | Режим пропускной способности файловой системы EFS. |
| kms_key_ids | Идентификатор ключа AWS Key Management Service (AWS KMS) для защиты зашифрованной файловой системы EFS. |
| size_in_bytes | Последний известный размер (в байтах) данных, хранящихся в файловой системе, в её поле value. |
| life_cycle_states | Стадия жизненного цикла файловой системы EFS, например, ‘удаление’. |
Примеры
Убедитесь, что у вас ровно 3 файловые системы
describe aws_efs_file_systems do
its("entries.count") { should cmp 3 }
end
Используйте этот ресурс InSpec для запроса идентификаторов всех файловых систем EFS, а затем проведите глубокое тестирование с помощью aws_efs_file_system.
aws_efs_file_systems.file_system_ids.each do |file_system_id|
describe aws_efs_file_system(file_system_id) do
its("tags") { should include("companyName" => "My Company Name") }
it { should be_encrypted }
its("throughput_mode") { should eq "bursting" }
its("performance_mode") { should eq "generalPurpose" }
end
end
Сопоставители
Полный список доступных сопоставителей можно найти на нашей странице Универсальные сопоставители.
exist
Контроль пройдёт, если описание вернёт хотя бы один результат.
Используйте should_not для проверки, что сущность не должна существовать.
describe aws_efs_file_systems.where( <property>: <value>) do
it { should exist }
end
describe aws_efs_file_systems.where( <property>: <value>) do
it { should_not exist }
end
Разрешения AWS
Ваш принципал должен иметь разрешение на действие elasticfilesystem:DescribeFileSystems.
Подробную документацию можно найти по адресам Действия, ресурсы и ключи условий для Amazon EFS и Действия, ресурсы и ключи условий для управления удостоверениями и доступом.
© 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_efs_file_systems/