一步一步SharePoint 2007之十九:解决实现注册用户后,自动具备访问网站的权限的问题(1)——配置Provider

摘要
  前面的文章中,我们注册一个新用户后,需要手动加到网站的Members用户组中,这个用户才能真正可以访问网站,这点非常不符合我们的习惯,我们希望能够注册后,自动具备访问网站的权限。那么能不能实现这点呢?
  本篇文章将介绍如何解决实现注册用户后,自动具备访问网站的权限的问题。
正文
  考虑到实现注册用户后,自动具备访问网站的权限的文章共有近20幅截图,截图总大小近2M,为了尽量减少打开网页的时间,本篇文章将被分割成几个小的部分。因此而给大家带来的阅读不便,就请海涵了:)
  解决这个问题,实际上有两种解决思路。
  一种是用户注册后,用代码模拟一个管理员的权限,然后将用户加入到网站的Members用户组中。
  另一种是采用Role技术,即预先创建一个Role,并将该Role手动加入到网站的Members用户组中,用户注册后,用代码将该用户加入到该Role中。
  考虑到前一种方法因为要实现模拟管理员的权限,这点比较困难,也不是很主流的方案,笔者在这里就只实现第二种方案。

  下面将记录每一步的实现过程。
  1、首先按照图中显示的路径找到存放我们在本系列文章四中创建的Site的设置文件的文件夹。
请单击查看原始尺寸的图片。

  2、找到并打开web.config文件,在其中的<system.web>……</system.web>节中加入如下内容:

     1          <roleManager enabled="true">

     2              <providers>

     3                  <clear />

     4                  <add name="AspNetSqlRoleProvider"

     5                     connectionStringName="LocalSqlServer"

     6                     type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

     7              </providers>

     8          </roleManager>

     9

    10          <membership>

    11              <providers>

    12                  <clear/>

    13                  <add name="AspNetSqlMembershipProvider"

    14                     connectionStringName="LocalSqlServer"

    15                     minRequiredPasswordLength="4"

    16                     minRequiredNonalphanumericCharacters="0"

    17                     type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

    18              </providers>

    19          </membership>

请单击查看原始尺寸的图片。

  3、找到前面创建的工程并打开web.config文件,同样在其中的<system.web>……</system.web>节中加入上面的内容。
  请注意,在前面实现Form认证时,我们将三个web.config文件给更改了,而这里只更改了两个文件。如果您不小心把三个文件都给更改了,那么后面的操作就无法进行下去了。
请单击查看原始尺寸的图片。

  4、再次打开SharePoint 3.0 Central Administration,然后打开Application Managerment管理页面。
请单击查看原始尺寸的图片。

  5、在Application Managerment管理页面中单击Authentication providers,即进入Authentication Providers页面。
请单击查看原始尺寸的图片。

  6、在Authentication Providers页面中,点击AspNetSqlMembershipProvider,即进入Edit Authentication页面。
  在该页面中,我们需要在Role manager name中填入AspNetSqlRoleProvider。
请单击查看原始尺寸的图片。

  下一篇文章我将记录如何解决实现注册用户后,自动具备访问网站的权限的第二部分。欢迎大家继续关注:)多谢

posted on 2007-10-24 10:47  执法长老  阅读(191)  评论(0编辑  收藏  举报

导航