解决“允许使用简单密码注册用户”后出现的问题

SharePoint2007 专栏收录该内容
4 篇文章 0 订阅

按照教程在web.config中添加了如下代码后(具体添加方法见教程) :

 

< membership >
            
< providers >
                
< clear />
                
< add  name ="AspNetSqlMembershipProvider"
                    connectionStringName
="LocalSqlServer"
                    minRequiredPasswordLength
="4"
                    minRequiredNonalphanumericCharacters
="0"
                    type
="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"   />
            
</ providers >
        
</ membership >
        
        
< roleManager  enabled ="true" >
            
< providers >
                
< clear  />
                
< add  name ="AspNetSqlRoleProvider"
                    connectionStringName
="LocalSqlServer"  
                    type
="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"   />
            
</ providers >
        
</ roleManager >

 

      发现在网站的“网站设置 -> 人员与组”中,无法添加新注册的用户。重启IIS后,问题依然存在。怎么办?只好到数据库中找问题了,在数据表aspnet_users中,发现在修改web.config前后,注册的用户信息中,字段ApplicationId的值不同。又到数据表aspnet_Applications中查看后,发现在aspnet_users表中出现的两个ApplicationId分别属于在MOSS上创建的网站和在VS.Net2005中创建的Project的。

      有了这个发现,尝试着将aspnet_users表中,所有的ApplicationId都改成MOSS上的网站ApplicatoinId。再去网站上一试,发现修改了web.config后注册的用户已经可以添加了。

     所有的用户都是用我在VS.Net2005创建的工程中添加的, 究竟是什么原因造成了这种使用两个不同的ApplicationId的情况还没有搞清楚。

    上面的是比较笨的解决办法。在一位仁兄的blog里找到了一个很简单的解决方法,即在web.config中加入该网站/工程应当使用的ApplicationId即可。这样一来,将上面的代码改为如下:

 

< membership >
            
< providers >
                
< clear />
                
< add  name ="AspNetSqlMembershipProvider"
                    applicationName
="/"  
                    connectionStringName
="LocalSqlServer"
                    minRequiredPasswordLength
="4"
                    minRequiredNonalphanumericCharacters
="0"
                    type
="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"   />
            
</ providers >
        
</ membership >
        
        
< roleManager  enabled ="true" >
            
< providers >
                
< clear  />
                
< add  name ="AspNetSqlRoleProvider"
                    applicationName
="/"  
                    connectionStringName
="LocalSqlServer"  
                    type
="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"   />
            
</ providers >
        
</ roleManager >

 

问题就解决了。

    注,applicationName的内容可填写自己需要的内容,不一定是“/”。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

flyzhen

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值