6

与 ASP.NET MVC 控制器一起使用的 [Authorize] 属性是否仅适用于已实现 MembershipProvider 的站点?

4

3 回答 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 回答