Ресурс 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
Проверка пройдёт, если describe вернёт хотя бы один результат.
Используйте 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/