前 言

  配置SharePoint 2013基于AD的Form认证,主要有三步:

1. 修改管理中心的web.config;

2. 修改STS Application的web.config;

3. 修改Web应用程序的web.config并开启FBA;

  首先,修改CA的web.config,一般在不知道端口号的时候(因为创建CA的时候,即使我们修改了端口号,创建后也会使用默认的那个,但是访问却使用我们填写的那个),我们选择在IIS中找到CA文件路径,如下图:

  通常我们应该先进行web.config的备份,然后进行修改,防止改错以后无法还原;当然如果你有其他SharePoint环境,改错以后覆盖一下也是可以的;

  在</configSections>下面的位置加入如下图节点,如下图:

<connectionStrings>
  <add name="adconnection" connectionString="LDAP://spdev.sp.com.cn/CN=Users,DC=sp,DC=com,DC=cn" />
</connectionStrings>

  在web.config找到如下图<membership>节点,用我们的membership覆盖掉;

修改覆盖为如下图节点,内容附后,方便大家复制/粘贴:

<membership defaultProvider="ADMemberShip">
<providers>
<add name="ADMemberShip"
type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="adconnection" enableSearchMethods="true"
attributeMapUsername="sAMAccountName" />
</providers>
</membership>

  特别要说的是ADMemberShip是将来填写到Web App验证提供程序的,connectionStringName是我们上一步添加的,名字一定不要错!

  管理中心web.config到此修改完毕!

  接下来修改STS Application的web.config,同样我们在IIS中浏览,找到web.config的位置(备份一定要记得,我就不多说了),如下图:

  在如下</system.serviceModel>后面位置,插入连接串(内容同CA),如下图:

  web.config下面没有System.web节点,所以直接在上一个节点下面,加了一个<system.web>,并添加我们的<membership>节点(内容同CA),如下图:

  到此STS Application的web.config也修改完毕,保存即可!

  然后修改web app的web.config,这个我们可以通过IIS找到,也可以直接去找,我就不多说了;修改web.config,添加连接串节点(内容同CA),如下图:

  然后<membership>节点添加不同,因为默认已经有了一个,我们只需要把Add部分加进来即可(截图不完整,具体内容复制CA的部分即可),如下图:

  此时,我们重启一下IIS,如下图:

  然后去管理中心,管理Web应用程序,修改Web app的验证提供程序,如下图:

  在弹出的对话框中,点击默认即可,如果你有多个区域,点击你需要修改的区域即可,如下图:

  勾选启用基于窗体的身份认证(FBA),输入ASP.NET成员身份提供程序名称,其他均为默认选项,如下图:

  然后去CA修改该网站集管理员,将我们ADForm账号的一个用户添加进去,好进行登录测试,如下图:

  选中我们要修改的网站集(刚刚修改过web.config web app下面的网站集),点击人员选择器的控件,我们查找一下人员;

  进行人员筛选,查找linyu,发现一个AD账号,一个表单验证账号,说明配置成功了,如下图:

  鼠标悬浮在linyu的名字上面,会有一个提示,提示的是该用户的完整名字,是我们配置的ADForm账号!

  进行登录测试,发现跟单独的Windows认证不同了,需要选择登录方式了,我们选择表单认证即可,如下图:

  进入Form认证的登陆页面,输入linyu(刚刚加入到网站集管理员的账号)和相应的密码,点击登录即可,如下图;

  稍等片刻,发现登陆成功,右上角为linyu了,我们点击linyu这个用户名,会有下拉框,点击我的设置,查看用户具体信息;

  进入用户信息,发现账户的完整格式,是我们配置的ADForm认证的账号!至此,ADForm认证配置成功!

  特别的,据说没有打sp1补丁的环境,如果FBA不是创建web app的时候就勾选,后来才修改的,需要执行一下PowerShell命令开启,如下图:

  我这里已经打了sp1补丁,没办法测试,所以有需要的自己测试一下吧,命令文本附后,方便大家复制。

$w = Get-SPWebApplication "http://<server>/"
$w.UseClaimsAuthentication = "True";
$w.Update()
$w.ProvisionGlobally()

总 结

  对于roleManager,我看到一些博客配置ADForm认证的时候,会修改这个配置,我觉得默认我们使用SharePoint自带的一套roleManager,所以不需要配置。关于roleManager,我在博客最后附了一下他的作用,大家有兴趣,自己了解一下吧。

  当然,如果是基于SQL的Form认证,我们为了方便管理,可能会自定义一套roleManager,那时我们就需要单独配置了。

  最后,没有什么特别想说的,本文是参照SharePoint 2010基于AD的Form认证配置的,其实在2007中,就已经很方便的进行配置了。

  配置 过程中,我尽量把完整的过程截图表示出来,大家有需要,就参考一下吧。

附 录

了解角色管理

https://msdn.microsoft.com/zh-cn/library/5k850zwb(v=vs.80).aspx

最新文章

  1. UISwitch(开关控件)、UISegmentedControl(分段控件)
  2. awk命令
  3. 3DTouch-ShortcutItem - iOS9 - xcode7
  4. Socket 广播
  5. IO流02_文件过滤器
  6. CSS随手记
  7. a标签中的href=&quot;#&quot;与href=&quot;javascript:void(0)&quot;区别
  8. Delphi 动态改变Rzsplitter的Orientation(方向)属性
  9. svn恢复到之前某个版本号
  10. JAVA的反射机制学习笔记(二)
  11. 不是技术牛人,如何拿到国内IT巨头的Offer(转)
  12. SpringMVC+Mybatis+MySQL配置Redis缓存
  13. LINUX 笔记-文件隐藏属性
  14. JDK1.7源码分析01-Collection
  15. Leaflet客户端学习笔记
  16. 【Spring】application.xml文件配置
  17. 最佳sql server 分页查询
  18. 循环列表最后一条不显示borderBottom
  19. 关于servelt的相关介绍
  20. OLED屏幕那些次像素有趣的排列方式

热门文章

  1. 《Selenium2自动化测试实战--基于Python语言》 --即将面市
  2. SQL Server安全(1/11):SQL Server安全概述
  3. 实现jquery.ajax及原生的XMLHttpRequest调用WCF服务的方法
  4. Spring MVC 原理介绍(执行流程)
  5. ASP.NET MVC+EF在服务端分页使用jqGrid以及jquery Datatables的注意事项
  6. C#对图片文件的压缩、裁剪操作初探
  7. jQuery Ajax实现下拉框无刷新联动
  8. 基于MVC4+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录
  9. Ext.NET 4.1 系统框架的搭建(后台) 附源码
  10. js页面用定时任务通过AJAX获取后台数据,但是从这个页面跳转到其他页面后,定时任务仍然在定时请求后台