SecurityGuard与数据库的连接

时间:2013-12-12 19:10:02

标签: c# asp.net-mvc-4 sql-server-2012

我正在将SecurityGuard集成到我的C#MS-MVC4项目中。 (SG link:https://github.com/kahanu/Security-Guard)我们正在使用数据库优先方法,并且已经建立了用户表。

我已将connectionString设置为指向项目数据库,并在需要它的地方复制了连接名称。

但是,我没有找到有关如何连接数据库的文档。我发现的最多的是“运行MVC安装程序”,但这就是这个:

`创建角色时出错:提供程序未返回ProviderManifestToken字符串。

那么我如何链接SecurityGuard和项目?

另外,我想知道要将哪些字段放入SG使用的Role表中。我再次找不到关于此的文档。

1 个答案:

答案 0 :(得分:0)

我(或MVC安装程序)在web.config<system.web>内添加了以下设置:

<profile defaultProvider="DefaultProfileProvider">
  <providers>
    <add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="MembershipConnection" applicationName="(Application)" />
  </providers>
</profile>
<membership defaultProvider="DefaultMembershipProvider">
  <providers>
    <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="MembershipConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="true" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="(Application)" />
  </providers>
</membership>
<roleManager enabled="true" defaultProvider="DefaultRoleProvider">
  <providers>
    <add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="MembershipConnection" applicationName="(Application)" />
  </providers>
</roleManager>

然后我将connectionStringName设置为我想要的连接。然后,代码优先模式创建了标准的Membership provider表。