Spec-Zone.ru › Chef 17

Ресурс aws_iam_user

[править на GitHub]

Используйте ресурс аудита InSpec aws_iam_user для проверки свойств отдельного пользователя AWS IAM.

Синтаксис

Блок ресурса aws_iam_user объявляет тесты для одного пользователя AWS IAM по имени пользователя.

describe aws_iam_user(user_name: 'psmith') do
  it { should exist }
end

Параметры

user_name (обязательно)

Этот ресурс принимает один параметр — имя пользователя, которое уникально идентифицирует пользователя. Его можно передать либо как строку, либо как user_name: 'value' элемент ключ-значение в хэше.

См. также документацию AWS по пользователям IAM.

Свойства

Свойство Описание
username Имя пользователя.
user_id Идентификатор пользователя.
user_arn Amazon Resource Name пользователя.
access_keys Массив хэшей, каждый из которых содержит метаданные о ключах доступа пользователя.
inline_policy_names Имена политик, непосредственно прикрепленных к пользователю.
attached_policy_names Имя автономных политик IAM, прикрепленных к пользователю.
attached_policy_arns arns автономных политик IAM, прикрепленных к пользователю.
  • has_mfa_enabled
  • has_console_password

Примеры

В следующих примерах показано, как использовать этот ресурс аудита InSpec.

Проверка, что пользователь IAM не существует

describe aws_iam_user(user_name: 'invalid-user') do
  it { should_not exist }
end

Проверка, что у пользователя IAM включен MFA

describe aws_iam_user('psmith') do
  it { should exist }
  it { should have_mfa_enabled }
end

Обеспечить, чтобы у пользователя не было ключей доступа или встроенных политик

describe aws_iam_user('psmith') do
  it                         { should exist }
  its('access_keys')         { should be_empty }
  its('inline_policy_names') { should be_empty }
end

Матчеры

У этого ресурса аудита InSpec есть следующие специальные матчеры. Полный список доступных матчеров можно найти на нашей странице матчеров.

exist

Управление пройдет, если describe вернёт хотя бы один результат.

Используйте should_not для проверки, что сущность не должна существовать.

it { should exist }

has_mfa_enabled

Это позволит проверить, включена ли у запрашиваемого пользователя многофакторная аутентификация.

it { should have_mfa_enabled }

has_console_password

Это обеспечит, что у пользователя установлен консольный пароль.

it { should have_console_password }

Разрешения AWS

Вашему Принципалу потребуются следующие разрешения на действие: iam:GetUser iam:GetLoginProfile iam:ListMFADevices iam:ListAccessKeys iam:ListUserPolicies iam:ListAttachedUserPolicies

© 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_user/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API