首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure AD SSO不回复请求中的无声签名

Azure AD SSO不回复请求中的无声签名
EN

Stack Overflow用户
提问于 2019-11-08 09:01:45
回答 1查看 1.7K关注 0票数 1

在允许Moodle与Azure AD集成SSO之后,当Moodle在请求中向Azure AD发送一个无声标志时,它不会响应请求。并显示以下错误。AADSTS50058:一个无声的登录请求被发送,但是没有用户被注册。用于表示用户会话的cookie在向Azure的请求中没有发送。如果用户使用Internet或Edge,并且发送无声登录请求的web应用程序位于与Azure端点(login.microsoftonline.com)不同的IE安全区域,则会发生这种情况。

我期待的是Azure AD像ADFS一样将无声的登录请求重定向回服务Moodle。

EN

回答 1

Stack Overflow用户

发布于 2019-12-05 23:25:31

您检查过这方面的一些故障排除指南吗?

我的同事弗兰克·胡( Frank )在博客上写道:

出现错误的原因是因为向AADSTS50058端点发送了一个无声的登录,但是没有检测到AADSSO。此cookie确定用户是否已登录。只有当用户已经登录或有刷新令牌来交换新的访问令牌时,才能使用静默登录。 通过第一次登录时签入KMSI框,这将添加KMSI,使您可以刷新访问令牌,以便用户在较长时间内不会收到此错误。

其他可能的解决办法:

可能的解决方案#1主动检查Expiration您可以尝试通过检查是否有有效的id令牌来防止此错误发生。如果您的ID令牌无效,您将要求用户再次登录。您可以通过使用AuthenticationContext.getCachedToken(clientID)获取令牌,然后检查JWT令牌中的Expiration来检查ID令牌是否有效。 可能的解决方案2捕获错误并再次要求用户登录以解决此错误,您将需要在回调中捕获此错误,该回调可以传递给获取令牌ADAL函数。如果发生AADSTS50058错误,您将要求用户再次登录。 可能的解决方案#3浏览器扩展Cookie阻止程序和第三方Cookies禁用一些用户可能会经历这个问题,因为浏览器扩展是阻塞Cookie的跟踪目的。这将导致此AADSTS50058错误发生,您需要在浏览器扩展中白名单login.microsoftonline.com端点,以避免再次收到此错误。 如果浏览器中禁用了第三方cookie,也会发生此错误。重新启用浏览器中的第三方cookie,以防止此错误发生。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58763393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档