在silverlight应用程序中使用Windows集成身份验证和SqlRoleProvider
我正在开发一个web应用程序,它要求将用户放入角色中,并根据其角色授予不同的权限。这可以通过使用表单身份验证和SqlRoleProvider轻松完成。但是,应用程序将在企业内部网内部使用,表单身份验证强制用户在每次使用应用程序时手动登录,使用Windows集成的autenthification看起来更加优雅,因为用户已经登录到企业域。但是这里的角色有一个问题,默认情况下,集成身份验证使用用户windows帐户中内置的角色(组成员身份等)。我的应用程序要求我将用户设置为自定义角色。因此,就角色而言,拥有数据库i控制是更有利的解决方案。在silverlight应用程序中使用Windows集成身份验证和SqlRoleProvider,windows,silverlight,iis-7,wcf-ria-services,Windows,Silverlight,Iis 7,Wcf Ria Services,我正在开发一个web应用程序,它要求将用户放入角色中,并根据其角色授予不同的权限。这可以通过使用表单身份验证和SqlRoleProvider轻松完成。但是,应用程序将在企业内部网内部使用,表单身份验证强制用户在每次使用应用程序时手动登录,使用Windows集成的autenthification看起来更加优雅,因为用户已经登录到企业域。但是这里的角色有一个问题,默认情况下,集成身份验证使用用户windows帐户中内置的角色(组成员身份等)。我的应用程序要求我将用户设置为自定义角色。因此,就角色而言
有没有一种方法可以将Windows集成身份验证(用于身份验证)与SqlRoleProvider(用于角色和用户管理)一起使用?我们在应用程序中已经做到了这一点,您必须创建自己的RoleProvider,然后在web.config中指定它。然后,您可以从您喜欢的任何来源加载您的角色
<roleManager enabled="true" defaultProvider="MyRoleProvider">
<providers>
<clear />
<add name="MyRoleProvider" type="MyCompany.MyRoleProvider, MyAssembly" />
</providers>
</roleManager>
BenCr是对的。但我希望避免创建自己的角色提供程序,并希望能够轻松地添加用户(通过Visual Studio内置的ASP.NET配置工具)
所以我在网上找到了这个,它很有效。结果比我想象的要简单得多。
您只需启用web配置文件中的角色,以及Windows集成身份验证。复制本地mdf文件(并将其附加到sql server),它就可以工作了
我认为这属于StackOverflow而不是这里。你是对的,没有必要创建自己的提供者,因为他所做的与Fault SqlRoleProvider所做的差不多。感谢chare te link这篇伟大的文章!没错,但正如grabah指出的那样,如果您想在SQL Server中存储角色信息,可以使用默认的SQLRoleProvider;)