2

У меня есть Azure App Service/Web API, связанный с Azure AD, и аутентификация работает, однако клиентские токены заканчиваются через 1 час, поэтому я хочу включить OAuth refresh_token. Когда я проверяю результаты вызова /.auth/me на моем сервисе, я не вижу refresh_token. Магазин Token включен в службе приложений.Как настроить Azure AD для активации токенов обновления

Я пытался добавить его в oauth2permissions в Azure AD проявляется следующим образом, но он не появляется (я перезапустил службу App и перераспределены моей службы в случае кэширования токенов):

"oauth2Permissions": [ 
    { 
     "adminConsentDescription": "Allow the application to store a refresh token on behalf of the signed-in user.", 
     "adminConsentDisplayName": "Refresh tokens", 
     "id": "3AGH4D29-B64A-4A9A-8DBC-5DB3C8BBBD75", 
     "isEnabled": true, 
     "type": "User", 
     "userConsentDescription": "Allow the application to store a refresh token on your behalf.", 
     "userConsentDisplayName": "Store refresh token", 
     "value": "refresh_token" 
    } 
] 

Я основывал мои попытки на руководстве приведено здесь: https://cgillum.tech/2016/03/07/app-service-token-store/

+0

Вы используете некоторую библиотеку (например, ADAL.Net)? Пожалуйста, смотрите это сообщение в блоге от Vittorio: http://www.cloudidentity.com/blog/2015/08/13/adal-3-didnt-return-refresh-tokens-for-5-months-and-nobody-noticed/ , –

+0

@GauravMantri, это интересно, спасибо, это дало мне о чем подумать. Возможно, клиент не запрашивает токен. Я использую sdk для мобильных услуг Azure для аутентификации. В настоящий момент я использую метод MobileServiceClient.LoginAsync(), который, возможно, является абстракцией над ADAL, мне придется изучить его. Я видел множество образцов аутентификации более «вручную», которые могут дать мне контроль для запроса refresh_token. – user381624

ответ

1

Я решил это с помощью руководства здесь: https://cgillum.tech/2016/03/25/app-service-auth-aad-graph-api/

в основном у вас есть для обновления настроек авторизации вашего приложения. И для этого нет пользовательского интерфейса, поэтому я использовал azure resource explorer.

Ключ устанавливал значение дополнительного логарифма в ["response_type=code id_token", "resource=https://graph.windows.net"].

Смежные вопросы