Ресурс 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 | Список прикрепленных ARNs политик, связанных с описанной ролью. |
Примеры
Проверка существования роли 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/