Приложение Azure AD + PowerShell

Создание приложения Azure AD с конфигурациями с помощью PowerShell

Существуют разные способы создания приложения Azure AD, также известного как регистрация приложения Azure AD. Иногда вам может потребоваться создать его с помощью портала или модулей PowerShell. Когда вы используете PowerShell для этого, вы можете сохранить сценарий и повторно использовать его в будущем. Одним из многих преимуществ использования этого подхода является то, что он поможет вам устранить человеческие ошибки. Давайте посмотрим, как мы можем это сделать.

Прежде чем мы запустим команду для создания приложения, убедитесь, что у вас установлен модуль AzureAD. Откройте интегрированную среду сценариев PowerShell с правами администратора, а затем введите предыдущую команду.

PS C:\WINDOWS\system32> Install-Module AzureAD

Это установит модуль для вас. Вы можете увидеть это в списке модулей в ISE. Нажмите на кнопку обновления, если вы ее не видите.

Теперь выполните команду «Connect-AzureAD», чтобы подключиться к вашей учетной записи Azure. Если у вас есть несколько каталогов с вашей учетной записью, вы должны подключить ее с помощью параметра tenant. Вы можете получить идентификатор арендатора в окне свойств арендатора. Перейдите в каталог на портале Azure и найдите свойства арендатора в строке поиска. Скопируйте оттуда идентификатор арендатора и запустите его с помощью предыдущей команды.

Connect-AzureAD -TenantId YourTenantIDHere

Войдите снова, если вас снова попросят. И вы готовы запустить команду для создания приложения AD.

Здесь параметр -Oauth2AllowImplicitFlow должен включить поток OAuth, а параметр -AvailableToOtherTenants — убедиться, что мое приложение доступно другим арендаторам. Посмотреть больше вариантов можно здесь.

Если вы получаете сообщение об ошибке «Сообщение: имя хоста в «http://» в свойстве identityUris не находится ни в одном проверенном домене компании или ее поддомене, убедитесь, что вы указываете «$ appUri» в качестве основного Azure AD. домен или поддомен. Это значение можно получить в окне обзора приложений Azure AD.

Если вы получаете сообщение об ошибке «Сообщение: схема URI в свойстве identityUris недействительна или не поддерживается», убедитесь, что вы включили «http://» в свой URI.

Если вы не видите никаких других ошибок в PowerShell, то, скорее всего, приложение создано для него, перейдите на страницу регистрации приложения Azure AD и убедитесь в этом сами. На странице обзора вашего приложения вы можете видеть, что наше приложение поддерживает несколько организаций. Если вы перейдете в раздел «Предоставление API», именно здесь вы можете увидеть настроенный URI идентификатора приложения. Убедитесь, что вы создали субъект-службу для своего приложения API для использования во внешнем приложении.

Также можно создать секрет нашего приложения Azure AD с помощью PowerShell, в одном из моих приложений это потребовалось, поскольку я использую Graph для извлечения пользователей из нескольких арендаторов с пользователем Daemon. Подробнее об этом можно прочитать здесь. Вот команда для добавления секрета.

$secret = New-AzureADApplicationPasswordCredential -ObjectId $myAdApp.ObjectId -CustomKeyIdentifier "GraphClientSecret"

Вы можете увидеть значение секрета, если просто выведете то же самое. Позже вы можете сохранить это значение в Azure Key Vault и прочитать его в своем приложении. По умолчанию дата окончания вашего секрета будет 1 год, и если вы хотите изменить ее, вам нужно указать дату начала и дату окончания в вашей команде.

Вот так выглядит наш обновленный скрипт.

У меня есть одно внешнее приложение и внутреннее приложение API, мне нужно убедиться, что на экране согласия приложения AD также отображаются разрешения, необходимые для моего внутреннего приложения. Для этого у нас есть что-то под названием «-KnownClientApplications», мы можем установить это в нашем скрипте, чтобы создать серверное рекламное приложение.

Вот вся команда PowerShell.

Что это сделает, так это то,

  • Создайте приложение Azure AD для клиентского приложения.
  • Создайте приложение Azure AD для приложения API.
  • Сделать оба приложения доступными для нескольких арендаторов
  • Настройте интерфейсное приложение для использования потока OAuth.
  • Добавьте идентификатор приложения внешнего интерфейса в приложение KnownClientApplications API.
  • Откройте приложение API и добавьте URL-адрес идентификатора приложения, который можно добавить в качестве разрешения для внешнего приложения.
  • Создайте секрет приложения в приложении API и установите срок действия через 10 лет.

Если все правильно, то секретные значения должны отображаться в окне PowerShell.

Вывод

Поздравляю и большое спасибо за то, что были со мной так далеко. Удачного кодирования!.

Вы всегда можете прочитать этот пост в моем блоге здесь.

об авторе

Я еще один разработчик, который увлечен написанием текстов и созданием видео. Я написал около 500 блогов на моем блоге. И выкладываю видео на свои YouTube-каналы Njan Oru Malayali и Sibeesh Passion. Пожалуйста, не стесняйтесь следовать за мной.

Твоя очередь. Что вы думаете?

Большое спасибо за чтение. Я пропустил что-то, что, по вашему мнению, необходимо в этой статье? Считаете ли вы этот пост полезным? Пожалуйста, не забудьте поделиться своим отзывом.

С наилучшими пожеланиями

Сибиш Вену