我正在创建需要Windows身份验证的Intranet网站。我已经设置了一切,或者我认为我确实使用了在数据库中管理的Windows身份验证和角色。这很重要,因为我无法使用Active Directory组和角色。ASP.net使用自定义数据库的Windows身份验证
它的工作原理。当我进入网站时,它会显示我的Windows用户名,并可通过User.Identity.Name
访问。我可以使用User.IsInRole("roleName")
验证角色,它也可以工作。
现在我遇到的问题是,当我使用Membership.GetUser
和Membership.GetAllUsers
我总是得到空和一个空的集合。
我RoleManager提供商是:
<add
name="SqlRoleManager"
type="System.Web.Security.SqlRoleProvider"
connectionStringName="ApplicationServices"
applicationName="/appName"
/>
我的成员资格提供这样一个:
<add
name="AspNetSqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="ApplicationServices"
applicationName="/appName"
/>
我缺少的东西或我的配置是错误的? 谢谢!
您是否设置了默认的成员资格提供者? –
我相信有一个/太多内部应用程序名称 –
检查此链接的更多详细信息:http://msdn.microsoft.com/en-us/library/system.web.security.sqlmembershipprovider.aspx –