2012-02-01 51 views
0

我为客户端构建了一个内部数据库。它的C#与MS-SQL数据库。我已经集成了ASP网站SQL Server和内部SQL Server以使用一个数据库。网站和内部数据库都在工作。内部数据库 - 创建用户的ASP.NET自动网站注册

我希望能够自动注册客户端,使其在我的内部数据库中成为客户端后使用该网页。使用ASP(我仍在学习)我看到有一个会员供应商,它似乎做了所有的验证等。密码都处理和加密等。

什么是将用户添加到SQL表,但保持安全等最好的方法?在添加客户端并使用它创建客户端登录到网页时,我可以在我的数据库客户端中创建成员资格提供者吗?

我在VS 2010中使用了默认的ASP .NET Web应用程序模板。ASP站点是模板中的所有标准配置。

谢谢!

回答

1

您应该调用成员资格提供程序上的方法。不要深入了解成员资格提供者如何工作的细节,提供者模型的重点在于您可以将默认的SQL替换为其他任何实现。

如果你看一下MembershipProvider基类(http://msdn.microsoft.com/en-us/library/system.web.security.membershipprovider.aspx),你可以看到,它提供的方法列表。您需要拨打Membership.CreateUser()作为您的自定义注册过程的一部分,它有几个过载可供选择。

+0

是的我同意,以Chris Pels为例,我可以调用Membership.CreateUser,它调用Stored程序在数据库中创建用户。我正在考虑创建一个SQL链接表,并将ID设置为匹配内部数据库中的客户端。例如,我的表格可能如下所示:[客户端ID] [用户ID],然后我可以在我的网站上显示正确登录信息。 – 2012-02-05 05:24:15

+0

你能告诉我,默认的成员资格提供程序中的默认密码加密格式是什么?我看到那里有盐,但有不止一个?谢谢! – 2012-02-05 05:36:02

+0

如果您查看Chris Pels的初始化方法(靠近顶部),您可以看到一行检查配置的值,如果无法从配置中检索值,则使用散列格式。所有的默认值都被设置在那里,以及一些其他的东西。虽然很丑陋!最下面是EncodePassword方法,如果你想知道加密是如何工作的,那么它就是实际发生的地方。 – RichardW1001 2012-02-05 13:18:02

0

查看默认SQL配置和存储的过程,我们可以使用这些。

请参阅this

Chris Pels的示例代码非常适合用于解决此问题。谢谢克里斯!

相关问题