SimpleMembershipProvider与WebSecurity

时间:2013-04-17 20:46:05

标签: asp.net-mvc-3 authentication asp.net-web-api security

我有一个带有Repository层的WebAPI项目。对于与帐户相关的方法,我不确定在这里使用哪种方法:

public class RepositoryService : IRepositoryService
    {
        private readonly SimpleMembershipProvider _membership;
        public RepositoryService()
          {
            _membership = (SimpleMembershipProvider)Membership.Provider;
          }

检查用户是否存在:

    public bool UserExists(string userName)
    {
        return WebSecurity.UserExists(userName);
    }

OR

public bool UserExists(string userName)
{
    return _membership.GetUser(userName, true) != null;
}

我想知道,因为在其他地方我认为我必须使用_membership(例如,获取特定用户):

public MembershipUser GetUser(string userName)
    {
        return _membership.GetUser(userName, false);
    }

但是我必须使用_membership和WebSecurity似乎很奇怪。使用两者有什么“臭”吗?

1 个答案:

答案 0 :(得分:0)

以下似乎表明你没事:

来自WebSecurity class上的MSDN文档http://msdn.microsoft.com/en-us/library/gg547905%28v=vs.111%29.aspx

  

在幕后,WebSecurity类与ASP.NET交互   会员提供者反过来执行较低级别的工作   执行安全任务所必需的。默认会员资格   ASP.NET Web Pages中的提供程序是SimpleMembershipProvider类。