与 ASP.NET MVC 控制器一起使用的 [Authorize] 属性是否仅适用于已实现 MembershipProvider 的站点?
问问题
1947 次
3 回答
8
简短的回答是否定的。它只是检查是否有 IPrincipal,如何到达那里取决于您。
我有自己的登录逻辑,而不是 Membership 提供程序,一旦我验证了用户,我只需调用 FormsAuthentication.SetAuthCookie 方法。完成后,您可以使用 [Authenticate] 属性。
于 2009-06-11T07:08:57.193 回答
1
该[Authorize]
属性是一个动作过滤器。它将获取IPrincipal
并检查用户是否已通过身份验证,或者您是否使用该属性指定角色和/或用户,它将与这些匹配。
可以通过多种方式对 Web 请求进行身份验证。从 Open ID 到 Windows 身份验证的一切。查看此问题以获取 OpenID 示例以及以这种方式实现身份验证的更多链接:StackOverflow Question 961468
于 2009-06-11T03:14:26.263 回答
0
我很确定确实如此。我想您可以扮演自己的角色并实现类似的身份验证/授权方式。
于 2009-06-11T03:07:40.270 回答