我在 azure AD 注册中启用了隐式流支持,它说:-“要启用隐式授权流,请选择您希望由授权端点颁发的令牌:”并且我正在尝试对多个身份提供身份验证,因此没有使用 msal 或 adal。但是我无法使用隐藏的 iframe 实现静默刷新。
- 发送授权请求,范围包括 openid 和响应类型为 id_token(在弹出窗口中)
- 接收 id_token 以及包括会话状态在内的所有其他内容。
现在(通过Iframe)我正在尝试通过发送propmt = none来使用静默身份验证获取令牌,并且id_token_hint = prev_id_token也尝试发送login_hint = preferred_username(我从JWTtoken.payloadObj.preferred_username获得)
PS 还尝试将 response_type 作为 id_token 和 token 发送,然后尝试静默刷新,每次都失败并出现此错误:-
error=login_required&error_description=AADSTS50058%3a+Session+信息+is+not+sufficient+for+单点登录。%0d%0aTrace+ID%3a+5ceb4386-f4b1-40aa-8fb5-797c14379b00%0d%0aCorrelation+ID %3a+3401101e-9098-4048-bb05-78926181d733%0d%0aTimestamp%3a+2019-04-17+10%3a12%3a47Z&state={我的状态}
请让我知道我缺少什么,它需要是隐式流程。我需要使用隐藏的 i 框架实现静默刷新。
我已经按照这篇文章中提到的那样实现了它:- https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-implicit-grant-flow