SQLMembershipProvider - 向现有数据库添加成员资格。设置权限

时间:2008-11-12 10:53:08

标签: .net sql-server authentication web-config sqlmembershipprovider

我在those instructions之后将与会员相关的模式添加到现有数据库(让我们称之为myDatabase)。

结果是在myDatabase中创建了表,视图和存储过程的数量。

下一步是修改web.config以使应用程序使用CustomizedMembershipProvider

<membership defaultProvider="CustomizedMembershipProvider">
      <providers>
         <add name="CustomizedMembershipProvider"
              type="System.Web.Security.SqlMembershipProvider"
              connectionStringName="MyDBConnectionString" />
      </providers>
    </membership>

然后我们还需要指定连接字符串,如:

<connectionStrings>
     <add name="MyDB" MyDBConnectionString ="..." />
  </connectionStrings>

以下是我的问题:

  1. 我应该使用与应用程序使用的连接字符串不同的连接字符串吗?因为是否需要在数据库中创建一个具有与成员资格对象相关的权限的新用户?
  2. 使用用户ID等指定连接字符串后,是否需要为该新用户授予该用户的权限?那只是存储过程还是表和视图?
  3. 修改 我注意到数据库中创建了一组角色以及成员资格对象。因此,需要将用户分配给适当的角色。角色类似于

    aspnet_Membership_FullAccess
    aspnet_Personalization_FullAccess
    etc...
    

    所以问题的第一部分仍然存在。那么创建一个新的数据库用户是有意义的(所以单独的数据库连接)

4 个答案:

答案 0 :(得分:2)

答案 1 :(得分:2)

我查了一下,

  1. 可以使用标准连接
  2. 就权限而言,它看起来 喜欢这是分配的问题 数据库用户到 aspnet_Membership_FullAccess角色(other roles if you require privileges related to them

答案 2 :(得分:0)

  1. 使用与您的应用程序相同的用户/数据库是完全可以的。
  2. 我不知道,对不起。

答案 3 :(得分:0)

出于性能原因,我建议使用相同的连接字符串。使用与应用程序相同的连接字符串将允许更有效的连接池。