Spec-Zone.ru › Chef 16

Ресурс aws_iam_access_keys

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

Используйте ресурс аудита aws_iam_access_keys InSpec для проверки свойств некоторых или всех ключей доступа AWS IAM.

Синтаксис

Блок ресурса aws_iam_access_keys возвращает все ключи доступа IAM и позволяет проверить эту группу ключей доступа.

  describe aws_iam_access_keys do
    it                    { should exist }
    its('access_key_ids') { should include 'AKIA1111111111111111' }
  end

Параметры

Этот ресурс принимает один необязательный параметр — имя пользователя, для которого необходимо получить все ключи доступа. Если он не указан, будут получены все ключи доступа для всех пользователей.

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

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

См. также документацию AWS по ключам доступа IAM.

Свойства

Свойство Описание
access_key_id Идентификатор ключа доступа.
username Имя пользователя IAM, связанное с ключом доступа.
active Указывает, активен ли ключ.
inactive Указывает, неактивен ли ключ.
ever_used Указывает, использовался ли ключ хотя бы раз.
never_used Указывает, не использовался ли ключ никогда.
create_date Дата создания ключа доступа.
created_days_ago Количество дней, прошедших с момента создания ключа доступа.
created_hours_ago Количество часов, прошедших с момента создания ключа доступа.
created_with_user Булево значение, указывающее, создан ли ключ доступа вместе с пользователем.
last_used_date Дата последнего использования ключа доступа.
last_used_hours_ago Количество часов, прошедших с момента последнего использования ключа.
last_used_days_ago Количество дней, прошедших с момента последнего использования ключа.
user_created_date Дата создания связанного пользователя.
entries Предоставляет доступ к исходным результатам запроса, которые можно рассматривать как массив хэшей.

Примеры

Проверка всех активных ключей

describe aws_iam_access_keys.where(active: true) do
  its('access_key_ids') { should include 'AKIA1111111111111111' }
end

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

describe aws_iam_access_keys.where(username: 'untrusted-account') do
  it { should_not exist }
end

Сопоставители

Полный список доступных сопоставителей можно найти на странице сопоставителей.

exist

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

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

it { should exist }

it { should_not exist }

Разрешения AWS

Вашему принципалу потребуются следующие разрешения, установленные на значение «Разрешить»: iam:GetUser iam:GetAccessKeyLastUsed iam:ListUsers iam:ListAccessKeys

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

Spec-Zone.ru

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