Spec-Zone.ru › Chef 16

azurerm_ad_user ресурс

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

Используйте azurerm_ad_user ресурс проверки InSpec для проверки свойств пользователя Azure Active Directory в рамках Тенанта.

Версия Azure REST API

Этот ресурс взаимодействует с версией 1.6 API Azure Graph. Дополнительную информацию см. в официальной документации Azure.

В настоящее время, похоже, нет способа выбрать версию документации API Azure. Если вы заметите, что в официальной документации упоминается новая версия, откройте вопрос или отправьте запрос на вытягивание с использованием обновленной версии.

Доступность

Установка

Этот ресурс доступен в inspec-azure пакете ресурсов. Чтобы использовать его, добавьте следующее в свой inspec.yml в вашем профиле верхнего уровня:

depends:
  - name: inspec-azure
    git: https://github.com/inspec/inspec-azure.git

Вам также необходимо настроить свои учетные данные Azure; см. README пакета ресурсов.

Версия

Этот ресурс впервые стал доступен в версии 1.1.0 пакета ресурсов inspec-azure.

Синтаксис

user_id должно быть указано в качестве параметра.

describe azurerm_ad_user(user_id: 'someUserId') do
  it { should exist }
end

Примеры

Если учетная запись пользователя Active Directory ссылается на действительный ID

describe azurerm_ad_user(user_id: 'someValidId')
  it { should exist }
end

Если учетная запись пользователя Active Directory ссылается на недопустимый ID

describe azurerm_ad_user(user_id: 'someInvalidId')
  it { should_not exist }
end

Параметры

  • user_id

Примеры параметров

user_id является обязательным параметром.

describe azurerm_ad_user(user_id: 'MyUserId') do
    ...
end

Атрибуты

  • object_id
  • account_enabled
  • city
  • country
  • department
  • displayName
  • facsimile_telephone_number
  • given_name
  • job_title
  • mail
  • mail_nickname
  • mobile
  • password_policies
  • password_profile
  • postal_code
  • state
  • street_address
  • surname
  • telephone_number
  • usage_location
  • user_principal_name
  • user_type

object_id

Объектный ID пользователя.

account_enabled

Включена ли учетная запись.

город

Город пользователя.

страна

Страна пользователя.

отдел

Отдел пользователя.

displayName

Имя пользователя для отображения.

номер факса

номер факса пользователя.

имя

имя пользователя.

должность

должность пользователя.

почта

основной адрес электронной почты пользователя.

псевдоним почты

Псевдоним почты пользователя.

мобильный телефон

Номер мобильного телефона пользователя.

политики паролей

Политики паролей для пользователя.

профиль пароля

Профиль пароля пользователя.

почтовый индекс

Почтовый индекс пользователя.

область

Область пользователя.

улица

Улица пользователя.

фамилия

Фамилия пользователя.

номер телефона

Номер телефона пользователя.

место использования

Двухбуквенный код страны (стандарт ISO 3166). Требуется для пользователей, которым будут назначены лицензии в связи с юридическими требованиями к проверке доступности услуг в странах. Примеры: «США», «ЯП» и «Великобритания».

имя основного пользователя

Основное имя пользователя.

тип пользователя

Строковое значение, которое может использоваться для классификации типов пользователей в вашем каталоге, например, «Член» и «Гость».

Другие атрибуты

Есть дополнительные атрибуты, к которым можно получить доступ, которые мы не задокументировали. Пожалуйста, ознакомьтесь с документацией Azure. Любой атрибут в ответе можно получить, используя имена ключей, разделенные точками (.). Учитывая пример ответа в их документации:

...
  "preferredLanguage": "en-US",
  "provisionedPlans": [
    {
      "capabilityStatus": "Enabled",
      "provisioningStatus": "Success",
      "service": "exchange"
    },
...

Мы можем получить доступ к provisioningStatus с помощью:

its('provisionedPlants.first.provisioningStatus') { should eq "Success" }

API может не всегда возвращать ключи, у которых нет связанных данных. Может быть, что глубоко вложенное свойство не имеет нужного атрибута в рамках вашего вызова. Если вы пишете тесты на свойства, которые могут быть null, разделите этот пакет ресурсов и добавьте к ресурсу метод доступа. В этом методе вы сможете защититься от null-ключей. Запросы на вытягивание всегда приветствуются.

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

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

существует

describe azurerm_ad_user(user_id: 'someUserId') do
  it { should exist }
end

Разрешения Azure

Клиент/приложение Active Directory, которое вы настроили для Inspec Azure (AZURE_CLIENT_ID), должно иметь разрешения на чтение данных пользователя из API Azure Graph RBAC.

Обратитесь к документации Майкрософт для получения информации о том, как предоставить эти разрешения вашему приложению.

Примечание: администратор Azure должен предоставить вашему приложению эти разрешения.

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

Spec-Zone.ru

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