azurerm_ad_user ресурс
Используйте 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_idaccount_enabledcitycountrydepartmentdisplayNamefacsimile_telephone_numbergiven_namejob_titlemailmail_nicknamemobilepassword_policiespassword_profilepostal_codestatestreet_addresssurnametelephone_numberusage_locationuser_principal_nameuser_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/