1
我想使用MVC3创建自定义身份验证。使用MVC进行自定义身份验证
Scenerio ::用户将有一个登录表单,在那里他将输入userId和密码。 然后根据我的业务逻辑对这些凭据进行验证。我不能使用默认过程,如从用户表中验证它,然后分配角色等。
我的业务逻辑将为我提供一个可靠的值IsValidUser和UserRole。
问题::我需要做两件事:
1.使用由AuthoriseAttribute过滤器中的业务逻辑返回的这些值。这样我就可以限制用户访问某个控制器的任何特定动作(我曾尝试将这些值放在Session变量中,但无法在授权过滤器中使用它们。)
2.如何使用Formsauthentication.Setauthcookie来完成这个任务。
所以它是这样的,我得保存在session变量这些值,然后通过这些付诸行动网络滤池?这是正确的方式吗?因为我需要找到该用户在许多其他控制器中进行身份验证。 – Moody
是的,你必须在你的商业逻辑中将用户ID存储到会话中。你可以从ActionFilter中的会话中检索它。 另一个参数是RoleID,您可以根据需要将其存储到枚举类或数据库中。 –
我们无法在ActionFilter中访问Session变量:) – Moody