Azure CLI Создание приложения AD с помощью AllowImplicit

Можно ли каким-либо образом создать или изменить приложение AzureAD, чтобы разрешить неявный поток OAuth 2.0 через Azure CLI 2.0?

Я могу без проблем создавать регистрации приложений, используя создать рекламное приложение az


person GavinB    schedule 20.03.2018    source источник


Ответы (2)


Не похоже, что Azure CLI 2.0 предоставляет свойство OAuth2AllowImplicitFlow для установки, однако Azure Active Directory PowerShell 2.0 предоставляет это свойство:

-Oauth2AllowImplicitFlow

Указывает, может ли это веб-приложение запрашивать маркеры неявного потока OAuth2.0. Значение по умолчанию — ложь.

Тип: логический

Должность: по имени

Значение по умолчанию: нет

Принять ввод конвейера: False

Принимать подстановочные знаки: False

Позвольте мне знать, если это помогает.

person Shawn Tabrizi    schedule 20.03.2018
comment
Спасибо, Шон, ответ - не совсем. Мне нужно было бы переключить все остальные настройки, которые у меня отлично работают, чтобы использовать PowerShell для этого одного шага. - person GavinB; 22.03.2018

Вы можете использовать CLI для вызова Graph API, чтобы добиться этого. Этот метод должен создать service principal в вашем клиенте AAD и назначить ему Company Admin role.

Получить токен аутентификации

curl -X "POST" "https://login.microsoftonline.com/$TENANTID/oauth2/token" \
-H "Cookie: flight-uxoptin=true; stsservicecookie=ests; x-ms-gateway-slice=productionb; stsservicecookie=ests" \
-H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode "client_id=$APPID" \
--data-urlencode "grant_type=client_credentials" \
--data-urlencode "client_secret=$PASSWORD" \
--data-urlencode "resource=https://graph.windows.net/"

Задайте для приложения AAD значение Oauth2AllowImplicitFlow, равное true:

curl -X "PATCH" "https://graph.windows.net/$TENANTID/applications/$ObjectId?api-version=1.6" \
    -H "Authorization: Bearer $ACCESSTOKEN" \
    -H "Content-Type: application/json" \
    -d $'{"oauth2AllowImplicitFlow":true}'

Через несколько секунд для Oauth2AllowImplicitFlow вашего приложения будет установлено значение true.

Кроме того, поскольку @Shawn сказал, что Azure CLI не имеет этого командлета для установки приложения AAD, но у Azure Powershell есть . Однако Azure CLI — важный инструмент для платформы Linux, позволяющий использовать Azure. Думаю, мы можем опубликовать отзыв об этой функции на этой странице. Группа Azure рассмотрит его.

Надеюсь это поможет!

person Wayne Yang    schedule 21.03.2018
comment
Креативно, но на самом деле это не решение моей проблемы из-за схемы аутентификации, на которую вы там ориентируетесь. Я никогда не хочу обрабатывать учетные данные в своем собственном коде на практике, поэтому использую интерфейс командной строки и вход на устройство. Спасибо за ссылку на проект github, я поднял вопрос/запрос функции :) - person GavinB; 22.03.2018
comment
@GavinB С удовольствием :-) - person Wayne Yang; 22.03.2018