在 OpenIdWebRingSso 示例(PR(提供者)和 RP(依赖方)- 3.5.0.10357)上,如果我在 PR 上注销它不会在 RP 上注销我(在下一页请求上),并且在 RP 上注销不会触发 PR 上的注销。
此外,当用户未通过身份验证时,PR 总是重定向到登录(询问用户名和密码)。在 RP 上浏览不需要身份验证的页面时,我需要的只是检查用户是否经过身份验证的请求。如果是这样,请在 RP 上登录用户(那部分很好),但如果不是,则只返回用户未通过身份验证的响应,而不要求登录(除非我确实单击登录按钮或尝试访问 [授权]页)。更新:用“request.Mode = 0;”解决了那部分问题
因此,我需要在 RP 上检查每个页面请求是否已针对 PR 进行了身份验证,并且仅在必要时询问密码。所以问题是:
1) 我可以在示例或其他参考资料中找到此代码吗?
2)如果不是,将它放在 MVC3 应用程序上的最佳位置是什么:- httpModule?- 在基本控制器上并覆盖无效初始化?- OnActionExecuting(ActionFilterAttribute)?- 别的地方?
3) 这种方法对 SSO 是否正确(我有 5 个不同的站点/域为一家公司)?
提前致谢!