我有一个应用程序,它通过WS-Federation对ADFS2进行身份验证。当我从ADFS得到响应时,我会查找特定的声明,并根据该声明来授权用户访问我的应用程序。我想创建一个增强功能,当用户使用ADFS进行身份验证并返回到我的应用程序时,没有我需要的声明,我将他们重定向回身份提供者(ADFS),但这一次强制他们再次提供他们的凭据。我编写代码来检测缺少所需声明的经过身份验证的用户,并将它们发送回重新进行身份验证,这次发送的是"Freshness“参数(wfresh=0)。我的印象是,这将提示用户输入凭据,但它似乎只是重用了原始凭据,这当然会导致无限循环( ADFS停止)。我如何才能做到这一点?
当我在没有必要的声明后将它们发送回IdP时,我的URL看起来是这样的:
https://somedomain.com/adfs/ls/auth/integrated/?wa=wsignin1.0&wtrealm=https%3a%2f%2fanotherdomain.com%2flogin.ashx&wreply=https%3a%2f%2fanotherdomain%2flogin.ashx&wctx=1106273&wfresh=0发布于 2013-06-21 12:56:55
wfresh on integrated没有任何意义。您始终登录到AD,无法注销。对于基于表单的身份验证,情况可能有所不同。但还没有在ADFS中尝试过。
发布于 2013-06-21 05:45:53
我怀疑wfresh的默认值是零。
你有没有试过没有使用wfresh?
此外,您还可以注销- AD FS: How to Invoke a WS-Federation Sign-Out。
https://stackoverflow.com/questions/17223809
复制相似问题