我想使用AuthorizeAttribute来控制哪些用户可以访问我的操作。我只是想澄清一下我的逻辑是否正确。
- 我创建了自己的IPrincipal实现。
- 我将用户的凭据提交给安全控制器的登录操作。
- 我使用一个UserService类验证凭据,并将从UserService类返回的IPrincipal分配给HttpContext.User。
- 我的WebAuthorizeAttribute,继承自AuthorizeAttribute,检查当前HttpContext.User.Identity.IsAuthenticated和HttpContext.User.IsInRole以确定用户是否有权访问该操作。
这是正常的流程吗?我知道我可以继承MembershipProvider,但我不需要那里面的所有功能,只需要能够使用两个不同角色进行登录的功能。