我需要类似功能的一些门户网站,在请求中PARAM将indentify门户网站建立一个网站。像这样http:/域/控制器/行动/门户
现在我的问题是,如果一个门户网站不存在必须重定向到其他网站/页面和用户可以登录到一个门户网站,但如果用户来到其他门户网站时,用户必须重定向到该门户网站的登录页面。
我现在有一些工作,但我觉得在管道中必须有一个中心位置来处理这个问题。我当前的解决方案使用自定义操作筛选器来检查门户参数,并查看门户是否存在,并检查用户是否登录该门户(用户登录的门户位于身份验证cookie中)。我在application_postauthentication事件中创建自己的IIndentiy和IPrincipal。
我有2个问题,我目前的做法:
1:这不是真正的执行,我必须将属性添加到所有控制器和/或行动。
2:对用户进行身份验证并不真正有效,我希望能够正常工作。但为此,当我创建我的IPrincipal/IIndenty时,我需要访问路线的参数,我似乎无法找到正确的位置来执行此操作。
希望有人能给我一些指点, 理查德。
它的一个选项,这就是我现在正在做的。但我认为它不是正确的方法,因为它实际上是一个应用程序范围广泛的事物,而不是控制器级别的。换句话说,我认为应用程序必须执行规则,如果门户不存在重定向,甚至不打算尝试去某个控制器。它应该更像是路由不存在,并且没有去哪里但重定向。对于用户身份也是如此,如果他要去一个他没有登录的门户,它不应该被授权给漏洞应用程序。 – Richard 2010-05-26 12:40:08