首页 > 解决方案 > ADFS 4.0 禁用浏览器 cookie

问题描述

我正在使用 ADFS 4.0 使用 OpenId Connect / OAuth2 流对我的移动应用程序进行身份验证。基本上,当我登录我的应用程序时,我的移动应用程序会打开一个浏览器来启动流程。每当我从应用程序中注销时,我都需要触发 ADFS 注销页面以清除 cookie 并重定向回应用程序。

我遇到的问题是,当我通过 ADFS 成功进行身份验证时,我需要在我的 API 中为有时会失败的用户执行一些用户验证。如果验证失败,会话 cookie 将保留在移动设备浏览器中,因此不再提示用户输入凭据,因此他陷入无法再次登录应用程序的循环中。我什至不需要将会话 cookie 存储到移动设备浏览器中,因为我使用访问和刷新令牌来处理身份验证后的流程。

我已将我的应用程序配置为 ADFS 中的本机应用程序/Web API。有什么方法可以禁用将 cookie 保存在移动设备浏览器中,或者有没有其他方法可以解决这个问题?

标签: cookiesopenid-connectadfs4.0

解决方案


您是否使用授权码授予流程?如果是,您可以prompt在授权请求中使用参数。如本文档中有关提示的解释,使用prompt=select_account,用户将被迫选择当前签名帐户或选择登录另一个帐户,或者使用prompt=login,用户必须重新身份验证...使用这些值prompt,您将不会“陷入循环,他无法再次登录应用程序”


推荐阅读