У меня есть 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/
Вы используете некоторую библиотеку (например, ADAL.Net)? Пожалуйста, смотрите это сообщение в блоге от Vittorio: http://www.cloudidentity.com/blog/2015/08/13/adal-3-didnt-return-refresh-tokens-for-5-months-and-nobody-noticed/ , –
@GauravMantri, это интересно, спасибо, это дало мне о чем подумать. Возможно, клиент не запрашивает токен. Я использую sdk для мобильных услуг Azure для аутентификации. В настоящий момент я использую метод MobileServiceClient.LoginAsync(), который, возможно, является абстракцией над ADAL, мне придется изучить его. Я видел множество образцов аутентификации более «вручную», которые могут дать мне контроль для запроса refresh_token. – user381624