Ресурс aws_iam_role
Используйте ресурс аудита InSpec aws_iam_role для проверки свойств роли AWS IAM.
Синтаксис
Блок ресурса aws_iam_role объявляет тесты для одной роли AWS IAM по имени роли.
describe aws_iam_role(role_name: 'my-role') do
it { should exist }
end
Параметры
role_name (обязательно)
Этот ресурс принимает один параметр — имя роли, которое однозначно идентифицирует роль. Его можно передать либо как строку, либо как role_name: 'value' пару ключ-значение в хэш.
См. также документацию AWS по ролям IAM.
Свойства
| Свойство | Описание |
|---|---|
| path | Путь к роли. |
| role_name | Имя роли. |
| role_id | Идентификатор роли. |
| arn | Amazon Resource Name (ARN), определяющий роль. |
| create_date | Дата и время создания роли в формате ISO 8601. |
| assume_role_policy_document | Политика, предоставляющая сущности разрешение на принятие роли. |
| description | Описание роли. |
| max_session_duration | Максимальная продолжительность сеанса (в секундах) для указанной роли. Любой, кто использует AWS CLI или API для принятия роли, может указать продолжительность, используя необязательный параметр DurationSeconds API или параметр duration-seconds CLI. |
| permissions_boundary_type | Тип использования границы разрешений, указывающий тип ресурса IAM, используемого в качестве границы разрешений для сущности. Этот тип данных может принимать только значение Policy. |
| permissions_boundary_arn | ARN политики, используемой для установки границы разрешений для пользователя или роли. |
| inline_policies | Список имен встроенных политик, связанных с описанной ролью. |
| attached_policies_name | Список имен прикрепленных политик, связанных с описанной ролью. |
| attached_policies_arn | Список прикреплённых ARN политик, связанных с описанной ролью. |
Примеры
Проверка существования роли IAM
describe aws_iam_role(role_name: aws_iam_role_name) do
it { should exist }
its('role_name') { should eq aws_iam_role_name }
end
Обработчики
Этот ресурс аудита InSpec имеет следующие специальные обработчики. Полный список доступных обработчиков можно найти на нашей странице обработчиков.
exist
Контроль пройден, если функция describe вернула хотя бы один результат.
Используйте should_not для проверки, что сущность не должна существовать.
describe aws_iam_role('AnExistingRole') do
it { should exist }
end
describe aws_iam_role('ANonExistentRole') do
it { should_not exist }
end
Разрешения AWS
Вашему Принципалу потребуются следующие разрешения на действие: iam:GetRole
© 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_iam_role/