Sharepoint 2010 Form 身份认证的实现(基于SQL)

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,独享型 2核4GB
简介: 废话不说了,我们来看看怎么实现的吧:1:创建一个基于身份认证的应用程序(具体参见上篇基于AD)SQL-MembershipProvider 成员SQL-RoleManager 角色  2:修改...

废话不说了,我们来看看怎么实现的吧:

1:创建一个基于身份认证的应用程序(具体参见上篇基于AD)



 
 
SQL-MembershipProvider 成员
SQL-RoleManager 角色

 

 



2:修改管理中心,我们创建的应用程序,还有Web服务里面的SecurityTokenServiceApplication 这个3个地方的web.config

每个地方都要加连接数据库的字符串(最好自己新建的账户访问数据库,不然可能访问不到数据)



 
 
< connectionStrings >
< add name ="SQLConnectionString" connectionString ="Data Source=jiangly;Initial Catalog=SQL-Auth;User ID=jly;password=P@ssw0rd" />
</ connectionStrings >

 

 

找到管理中心的<system.web></system.web>,配置如下:

 



代码
 
  
< roleManager defaultProvider ="AspNetWindowsTokenRoleProvider" enabled ="true" cacheRolesInCookie ="false" >

< providers >

< add connectionStringName ="SQLConnectionString" applicationName ="/" description ="Stores and retrieves roles from SQL Server" name ="SQL-RoleManager" type ="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

</ providers >

</ roleManager >

< membership defaultProvider ="SQL-MembershipProvider" >

< providers >

< add connectionStringName ="SQLConnectionString" passwordAttemptWindow ="5" enablePasswordRetrieval ="false" enablePasswordReset ="false" requiresQuestionAndAnswer ="true" applicationName ="/" requiresUniqueEmail ="true" passwordFormat ="Hashed" description ="Stores and Retrieves membership data from SQL Server" name ="SQL-MembershipProvider" type ="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

</ providers >

</ membership >

 

 

 找到应用程序的<system.web></system.web>,配置如下

代码
 
  
< membership defaultProvider ="i" >

< providers >

< add name ="i" type ="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />

< add connectionStringName ="SQLConnectionString" passwordAttemptWindow ="5" enablePasswordRetrieval ="false" enablePasswordReset ="false" requiresQuestionAndAnswer ="true" applicationName ="/" requiresUniqueEmail ="true" passwordFormat ="Hashed" description ="Stores and Retrieves membership data from SQL Server" name ="SQL-MembershipProvider" type ="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

</ providers >

</ membership >

< roleManager defaultProvider ="c" enabled ="true" cacheRolesInCookie ="false" >

< providers >

< add name ="c" type ="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />

< add connectionStringName ="SQLConnectionString" applicationName ="/" description ="Stores and retrieves roles from SQL Server" name ="SQL-RoleManager" type ="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

</ providers >

</ roleManager >

找到SecurityTokenServiceApplication站台web.config,它里面没有<system.web></system.web>,你需要自己添加

 

 3 改好后,自己创建一个用户(这个太简单了,我就不讲了哈),加入站点集里,完了。用这个账号去测试吧,哈哈

 

参考资料:

http://www.sharepointchick.com/archive/2010/05/07/configuring-claims-and-forms-based-authentication-for-use-with-a.aspx

http://social.technet.microsoft.com/Forums/en/sharepoint2010setup/thread/41e5fea7-a2e5-4965-aa5c-78d76be3f4f0

http://devmeat.com/show/5739564

http://blogs.technet.com/b/mahesm/archive/2010/04/07/configure-forms-based-authentication-fba-with-sharepoint-2010.aspx

 

 

 

代码
 
  
< system.web >

< roleManager defaultProvider ="c" enabled ="true" cacheRolesInCookie ="false" >

< providers >

< add name ="c" type ="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />

< add connectionStringName ="SQLConnectionString" applicationName ="/" description ="Stores and retrieves roles from SQL Server" name ="SQL-RoleManager" type ="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

</ providers >

</ roleManager >

< membership defaultProvider ="i" >

< providers >

< add name ="i" type ="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />

< add connectionStringName ="SQLConnectionString" passwordAttemptWindow ="5" enablePasswordRetrieval ="false" enablePasswordReset ="false" requiresQuestionAndAnswer ="true" applicationName ="/" requiresUniqueEmail ="true" passwordFormat ="Hashed" description ="Stores and Retrieves membership data from SQL Server" name ="SQL-MembershipProvider" type ="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

</ providers >

</ membership >
相关文章
|
SQL XML Oracle
Mybatis动态SQL语句查询,实现一个参数 可查询多个字段。
Mybatis动态SQL语句查询,实现一个参数 可查询多个字段。
407 0
Mybatis动态SQL语句查询,实现一个参数 可查询多个字段。
|
XML SQL Java
Mybatis-Plus中实现使用xml文件来写复杂sql
Mybatis-Plus中实现使用xml文件来写复杂sql
1568 0
|
SQL Java 数据库连接
Mybatis中sql拦截增强-AOP+interceptor实现分页和排序
基于interceptor可以实现sql的完整打印,除了实现打印之外。其实还可以实现分页和排序,下面的分页和排序基于aop+mybatis的interceptor实现。其本质还是对mappedStament的boundSql进行增强。 下面的项目来源于github,通过这个我们可以很好的学习mybatis中插件interceptor的使用。
779 0
Mybatis中sql拦截增强-AOP+interceptor实现分页和排序
|
SQL 前端开发 关系型数据库
mysql实现一次将多条不同sql查询结果并封装到一个结果集
最近遇到一个统计查询需求,要求一次性查询多个统计信息,其中两个查询信息不在一个表中,也没有业务关联,表中也没有做连接处理。不考虑产品设计是否合理,完全是实际需求如此,需要一次性查询出来返回给前端进行展示,对于这种“非常规”的统计查询平常肯定会遇见,感觉有点代表性,所以简单记录一下。希望对有相同需求的同学可以作为参考。
mysql实现一次将多条不同sql查询结果并封装到一个结果集
|
SQL 存储 druid
MyCat - 架构剖析 - 核心技术之 SQL 路由实现 | 学习笔记
快速学习 MyCat - 架构剖析 - 核心技术之 SQL 路由实现
166 0
MyCat - 架构剖析 - 核心技术之 SQL 路由实现 | 学习笔记
|
SQL 大数据 UED
电商项目之支付类指标统计表 SQL 实现|学习笔记
快速学习电商项目之支付类指标统计表 SQL 实现
204 0
电商项目之支付类指标统计表 SQL 实现|学习笔记
|
SQL 大数据 开发者
电商项目之用户指标类统计表 SQL 实现|学习笔记
快速学习电商项目之用户指标类统计表 SQL 实现
110 0
电商项目之用户指标类统计表 SQL 实现|学习笔记
|
SQL 大数据 开发者
电商项目之用户浏览 DWS 表 SQL 实现|学习笔记
快速学习电商项目之用户浏览 DWS 表 SQL 实现
68 0
电商项目之用户浏览 DWS 表 SQL 实现|学习笔记
|
SQL 大数据 数据处理
电商项目之用户交易宽表 SQL 实现|学习笔记
快速学习电商项目之用户交易宽表 SQL 实现
168 0
电商项目之用户交易宽表 SQL 实现|学习笔记
|
SQL 大数据 开发者
电商项目之商家用户交互记录宽表 SQL 实现|学习笔记
快速学习电商项目之商家用户交互记录宽表 SQL 实现
108 0
电商项目之商家用户交互记录宽表 SQL 实现|学习笔记