我可以使用SQL CE在WPF桌面应用程序中提供成员身份功能吗?

时间:2011-11-28 20:51:37

标签: sql wpf synchronization sql-server-ce

我正在编写一个桌面WPF应用程序,它使用SQL CE作为其数据存储,并通过Web服务同步到远程SQL Server数据库。桌面应用程序提供与我编写的ASP.NET Web应用程序相同的功能,但在没有可用连接时为用户提供功能。

SQL Server数据库还为应用程序的Web版本提供成员资格功能。

我的问题是这样的......当WPF应用程序处于“断开连接”模式时,如何为其提供用户登录功能?我希望用户具有与通过Web应用程序登录时相同的登录功能。我知道如何同步necesarry aspnet_Membership表(用户,角色等),但是,如何为WPF创建成员资格提供程序?我找不到例子。

(WPF应用程序不需要创建或删除用户,但编辑功能会很好......应用程序允许用户登录并检查与主数据库同步的密码是非常重要的,因此,我不确定加密/解密是如何工作的。)

感谢您提出的任何建议

1 个答案:

答案 0 :(得分:1)

成员资格是作为ASP.NET功能构建的。我看到使用本地成员身份方法的风险现在是那些带有密码的表位于本地计算机上并且可以被黑客攻击。用户必须在本地计算机上登录,以便验证Windows主体。您可能最好将Windows登录映射到角色和组,以提供没有MembershipService的成员资格类型功能。您可以在.NET中迭代用户,角色和组,但速度很慢。直接解密Membership SQL表并构建查询以获取该信息并不是很难,而且速度要快得多。您甚至可以将MembershipProvider映射到IIS中的域,但是您无法使用TSQL来获取用户,角色和组。