配置用于ASP.Net身份验证的数据库
时间:2020-03-06 14:43:16 来源:igfitidea点击:
我想在我的asp.net mvc网站中使用表单身份验证。
我可以使用一个已经存在的sql db(在远程服务器上)吗?如何配置站点以使用此数据库进行身份验证?我需要/使用哪些表进行身份验证?
解决方案
你可以。检查Windows \ Microsoft.NET \ Framework \ v2.xxx文件夹中的" aspnet_regsql.exe"程序参数,特别是" sqlexportonly"文件夹。
创建所需的表之后,可以进行以下配置:在web.config文件中创建一个连接字符串,然后将MemberShipProvider设置为使用此连接字符串:
<connectionStrings> <add name="MyLocalSQLServer" connectionString="Initial Catalog=aspnetdb;data source=servername;uid=whatever;pwd=whatever;"/> </connectionStrings> <authentication mode="Forms"> <forms name="SqlAuthCookie" timeout="10" loginUrl="Login.aspx"/> </authentication> <authorization> <deny users="?"/> <allow users="*"/> </authorization> <membership defaultProvider="MySqlMembershipProvider"> <providers> <clear/> <add name="MySqlMembershipProvider" connectionStringName="MyLocalSQLServer" applicationName="MyAppName" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> </providers> </membership>
附言:这里有一些关于整个概念的非常好的文章。
最简单的方法是仅将Windows界面用于aspnet_regsql.exe应用程序。
我们可以在c:\ windows \ microsoft.net \ framework \ v2.0.50727文件夹中找到它。
只需输入aspnet_regsql.exe,它将打开一个向导,这样我们就无需记住任何命令行开关。