Authentication 在azure ad和google identity services实现隐式流时,在接收id_令牌后无法执行静默刷新

Authentication 在azure ad和google identity services实现隐式流时,在接收id_令牌后无法执行静默刷新,authentication,oauth-2.0,azure-active-directory,openid,implicit-flow,Authentication,Oauth 2.0,Azure Active Directory,Openid,Implicit Flow,我已在azure广告注册中启用隐式流支持,其中说明:- 要启用隐式授权流,请选择您希望由授权端点颁发的令牌: 我正在尝试验证多个身份提供,因此不使用msal或adal。 但我无法使用隐藏iframe实现静默刷新 发送了一个授权请求,其作用域包括openid和响应类型作为id\ U令牌(在弹出窗口中) 接收id_令牌,以及包括会话状态在内的所有其他内容 现在(通过Iframe)我试图通过发送propmt=none来使用静默身份验证获取令牌, 和id\u token\u hint=prev\u id

我已在azure广告注册中启用隐式流支持,其中说明:- 要启用隐式授权流,请选择您希望由授权端点颁发的令牌: 我正在尝试验证多个身份提供,因此不使用msal或adal。 但我无法使用隐藏iframe实现静默刷新

  • 发送了一个授权请求,其作用域包括openid和响应类型作为id\ U令牌(在弹出窗口中)
  • 接收id_令牌,以及包括会话状态在内的所有其他内容
  • 现在(通过Iframe)我试图通过发送propmt=none来使用静默身份验证获取令牌, 和id\u token\u hint=prev\u id\u token也尝试发送login\u hint=preferred\u用户名(我从JWTtoken.payloadObj.preferred\u用户名获得)

    p.S最初也尝试将响应类型作为id_令牌和令牌发送,然后尝试静默刷新,每次都失败,出现此错误:-

    error=login\u required&error\u description=AADSTS50058%3a+会话+信息+不+足够+单点登录。%0d%0aTrace+ID%3a+5ceb4386-f4b1-40aa-8fb5-797c14379b00%0d%0a相关+ID%3a+340101e-9098-4048-bb05-78926181d733%0d%0d%0d%0aTimestamp%3a+2019-04-17+10%3a12%3a47Z&state={我的状态}

    请让我知道我缺少什么,它需要隐式流。 我需要使用隐藏的i帧实现静默刷新

    我已经实现了本文中提到的功能:-


    您的用户可能不同意您在初始登录请求中请求的权限。您需要在第一次请求中以静默方式请求要使用的作用域,以确保用户已接受这些权限。我正在使用自己的帐户进行尝试。我已同意广告本身的所有权限,有一次我也有同样的疑问,因此我尝试在初始请求中发送提示符=同意,只是为了确保所有权限都得到同意,身份验证提供程序中是否有任何设置可以通过开放ID启用SSO@Danieldobalian我不知道,它应该能够自动重复使用Azure AD设置的会话cookie。好问题!会话cookie在用户浏览器中设置。身份验证提供程序通常只跟踪是否需要使看似有效的会话无效(如用户重置密码)。