我在web应用程序上工作,该应用程序要求用户被放入角色,并根据他们的角色被赋予不同的权限。这可以通过使用窗体身份验证和SqlRoleProvider轻松完成。但是,应用程序将在企业内部网内部使用,并且表单身份验证迫使用户在每次想要使用应用程序时手动登录,使用Windows集成身份验证看起来要优雅得多,因为用户已经登录到公司域。但这里的角色有一个问题,默认情况下,集成身份验证使用用户windows帐户中内置的角色(组成员身份等)。我的应用程序要求我将用户放入自定义角色中。因此,就角色而言,拥有数据库I控制是更有利的解决方案。有没有办法将Windows集成身份验证(用于身份验证)和SqlRoleProvider (用于角色和用户管理)结合使用?
发布于 2011-02-16 20:38:38
BenCr是对的。但我希望避免创建自己的角色提供程序,并希望能够轻松地添加用户(通过Visual Studio内置的ASP.NET配置工具)
所以我在网上找到了这个,它起作用了。它最终比我想象的要简单得多。您只需在web配置文件中启用角色以及Windows集成身份验证即可。复制本地mdf文件(并将其附加到sql server)即可正常工作。
http://weblogs.asp.net/scottgu/pages/Recipe_3A00_-Implementing-Role_2D00_Based-Security-with-ASP.NET-2.0-using-Windows-Authentication-and-SQL-Server.aspx
发布于 2011-02-15 20:46:44
我们已经在我们的应用程序中做到了这一点,您必须创建自己的RoleProvider,然后在您的web.config中指定它。然后,您可以从任何您喜欢的来源加载您的角色。
<roleManager enabled="true" defaultProvider="MyRoleProvider">
<providers>
<clear />
<add name="MyRoleProvider" type="MyCompany.MyRoleProvider, MyAssembly" />
</providers>
</roleManager>RoleProvider http://msdn.microsoft.com/en-us/library/system.web.security.roleprovider.aspx
https://stackoverflow.com/questions/4946068
复制相似问题