一。进管理中心,创建一个应用程序,配置如下:

  

二。填端口号,和选择form身份认证,以及填写成员和角色,其他都默认就可以了

三。使用SharePoint 2010 Management Shell在里面填写下面的代码

$webApp = Get-SPWebApplication "http://cd-isbunet:82"
$webApp.UseClaimsAuthentication = 1;
$webApp.Update()
$webApp.ProvisionGlobally()
$webApp = Get-SPWebApplication "http://cd-isbunet:82"
$webApp.MigrateUsers($True)

http://cd-isbunet:82 是我刚才创建的应用程序,你需要改成你自己的

四。最重要的一步,修改管理中心,我们创建的应用程序,还有Web服务里面的SecurityTokenServiceApplication(2007是不需要配置这个的)这个3个地方的web.config

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

这里先解释下里面的代码,你只需要替换

server="cd-isbunet.ncs.corp.int-ads"   //域控的地址
userContainer="CN=Users,DC=ncs,DC=corp,DC=int-ads"   //Users不用换 DC为你域的信息

groupContainer="DC=ncs,DC=corp,DC=int-ads"

connectionUsername="XXX/jiangly"  //换成自己的域管理员
connectionPassword="123456" />

<membership defaultProvider="AspNetSqlMembershipProvider">

<providers>

<!-- ADMembership-->

<add name="ADMembership"

type="Microsoft.Office.Server.Security.LdapMembershipProvider, Microsoft.Office.Server, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"

server="cd-isbunet.ncs.corp.int-ads"

port="389"

useSSL="false"

userDNAttribute="distinguishedName"

userNameAttribute="sAMAccountName"

userContainer="CN=Users,DC=ncs,DC=corp,DC=int-ads"

userObjectClass="person"

userFilter="(&amp;(ObjectClass=person))"

scope="Subtree"

otherRequiredUserAttributes="sn,givenname,cn"

connectionUsername="XXX/jiangly"

connectionPassword="123456" />

<!-- ADMembership-->

</providers>

</membership >

<roleManager defaultProvider="AspNetWindowsTokenRoleProvider" enabled ="true">

<providers>

<add name="roleManager"

type="Microsoft.Office.Server.Security.LdapRoleProvider, Microsoft.Office.Server, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"

server="cd-isbunet.ncs.corp.int-ads"

port="389"

useSSL="false"

groupContainer="DC=ncs,DC=corp,DC=int-ads"

groupNameAttribute="cn"

groupNameAlternateSearchAttribute="samAccountName"

groupMemberAttribute="member"

userNameAttribute="sAMAccountName"

dnAttribute="distinguishedName"

groupFilter="(&amp;(ObjectClass=group))"

userFilter="(&amp;(ObjectClass=person))"

scope="Subtree"

connectionUsername="XXX/jiangly"

connectionPassword="123456" />

</providers>

</roleManager>

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

<machineKey validationKey="D35D48269B8B92E8A7D86FB64FBFCC4B2B4F1E3A0BFC43FB" decryptionKey="FEA7B512E6E390C18283E0D2E0542564F1E47E1F0A80F335" validation="SHA1" />
<membership defaultProvider="i">

<providers>

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

<!-- ADMembership-->

<add name="ADMembership" type="Microsoft.Office.Server.Security.LdapMembershipProvider, Microsoft.Office.Server, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"

server="cd-isbunet.ncs.corp.int-ads"

port="389" useSSL="false"

userDNAttribute="distinguishedName"

userNameAttribute="sAMAccountName"

userContainer="CN=Users,DC=ncs,DC=corp,DC=int-ads"

userObjectClass="person"

userFilter="(&amp;(ObjectClass=person))"

scope="Subtree"

otherRequiredUserAttributes="sn,givenname,cn"

connectionUsername="XXX/jiangly"

connectionPassword="123456" />

<!-- ADMembership-->

</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" />

<!-- ADMembership-->

<add name="roleManager" type="Microsoft.Office.Server.Security.LdapRoleProvider, Microsoft.Office.Server, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"

server="cd-isbunet.ncs.corp.int-ads"

port="389"

useSSL="false"

groupContainer="DC=ncs,DC=corp,DC=int-ads"

groupNameAttribute="cn"

groupNameAlternateSearchAttribute="samAccountName"

groupMemberAttribute="member"

userNameAttribute="sAMAccountName"

dnAttribute="distinguishedName"

groupFilter="(&amp;(ObjectClass=group))"

userFilter="(&amp;(ObjectClass=person))"

scope="Subtree"

connectionUsername="XXX/jiangly"

connectionPassword="123456" />

<!-- ADMembership-->

</providers>

</roleManager>

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

<system.web>
<!-- ADMembership-->

<membership>

<providers>

<!-- ADMembership-->

<add name="ADMembership"

type="Microsoft.Office.Server.Security.LdapMembershipProvider, Microsoft.Office.Server, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"

server="cd-isbunet.ncs.corp.int-ads"

port="389"

useSSL="false"

userDNAttribute="distinguishedName"

userNameAttribute="sAMAccountName"

userContainer="CN=Users,DC=ncs,DC=corp,DC=int-ads"

userObjectClass="person"

userFilter="(&amp;(ObjectClass=person))"

scope="Subtree"

otherRequiredUserAttributes="sn,givenname,cn"

connectionUsername="XXX/jiangly"

connectionPassword="123456" />

<!-- ADMembership-->

</providers>

</membership>

<roleManager enabled ="true" >

<providers>

<!-- ADMembership-->

<add name="roleManager"

type="Microsoft.Office.Server.Security.LdapRoleProvider, Microsoft.Office.Server, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"

server="cd-isbunet.ncs.corp.int-ads"

port="389"

useSSL="false"

groupContainer="DC=ncs,DC=corp,DC=int-ads"

groupNameAttribute="cn"

groupNameAlternateSearchAttribute="samAccountName"

groupMemberAttribute="member"

userNameAttribute="sAMAccountName"

dnAttribute="distinguishedName"

groupFilter="(&amp;(ObjectClass=group))"

userFilter="(&amp;(ObjectClass=person))"

scope="Subtree"

connectionUsername="XXX/jiangly"

connectionPassword="123456" />

<!-- ADMembership-->

</providers>

</roleManager>

</system.web>

五。我们进管理中心-》应用程序管理-》打开用户策略-》添加域中的用户(如果没有找到,说明你的web.config里要修改的参数不对)

六。创建网站集,然后打开站点登陆,如果一切正常就能进入站点了

祝你成功!

这里特别感谢foley!

参考资料:

(1)http://www.microsofttranslator.com/bv.aspx?ref=Internal&from=en&to=zh-CHS&a=http%3a%2f%2fblogs.msdn.com%2fb%2frussmax%2farchive%2f2009%2f12%2f31%2fconfiguring-forms-based-authentication-for-claims-based-web-applications.aspx

(2)http://isharebook.com/forums/showthread.php/2649-Claims-Based-Identity-in-SharePoint-2010.html

(3)http://blogs.technet.com/b/speschka/archive/2009/11/05/configuring-forms-based-authentication-in-sharepoint-2010.aspx

(4)http://xiangzhangjun2006.blog.163.com/blog/static/44140966201061334818612/

转自http://www.cnblogs.com/jlydboy/articles/1792112.html

『SharePoint 2010』Sharepoint 2010 Form 身份认证的实现(基于AD)的更多相关文章

  1. asp.net form身份认证不定时认证失败的问题 排查

    1.网站出现form认证不定时认证失败.登陆过后 每隔一会儿就需要重新登陆.首先检查的是form身份认证票据设置的时间(正常) 然后检查加密后的身份认证信息写入的cookie的失效时间(正常) 2.这 ...

  2. 『SharePoint 2010』Sharepoint 2010 Form 身份认证的实现(基于SQL)

    1:创建一个基于身份认证的应用程序(具体参见上篇基于AD) SQL-MembershipProvider 成员SQL-RoleManager 角色 2:修改管理中心,我们创建的应用程序,还有Web服务 ...

  3. 简单的ASP.NET Forms身份认证

    读了几篇牛人的此方面的文章,自己也动手做了一下,就想有必要总结一下.当然我的文章质量自然不能与人家相比,只是写给从没有接触过这个知识点的朋友. 网站的身份认证我以前只知道session,偶然发现一些牛 ...

  4. asp.net身份认证

    在网上看到几篇比较好的文章很详细讲解了Form.Membership.以及Identity身份认证 Form身份认证: http://www.cnblogs.com/fish-li/archive/2 ...

  5. 关于ASP.Net Core Web及API身份认证的解决方案

    6月15日,在端午节前的最后一个工作日,想起有段日子没有写过文章了,倒有些荒疏了.今借夏日蒸蒸之气,偷得浮生半日悠闲.闲话就说到这里吧,提前祝大家端午愉快(屈原听了该不高兴了:))!.NetCore自 ...

  6. 在ASP.NET Core中实现一个Token base的身份认证

    注:本文提到的代码示例下载地址> How to achieve a bearer token authentication and authorization in ASP.NET Core 在 ...

  7. [转]NET Core中实现一个Token base的身份认证

    本文转自:http://www.cnblogs.com/Leo_wl/p/6077203.html 注:本文提到的代码示例下载地址> How to achieve a bearer token ...

  8. NET Core中实现一个Token base的身份认证

    NET Core中实现一个Token base的身份认证 注:本文提到的代码示例下载地址> How to achieve a bearer token authentication and au ...

  9. 基于Token的身份认证 与 基于服务器的身份认证

    基于Token的身份认证 与 基于服务器的身份认证 基于服务器的身份认证 在讨论基于Token的身份认证是如何工作的以及它的好处之前,我们先来看一下以前我们是怎么做的: HTTP协议是无状态的,也就是 ...

随机推荐

  1. 修改host简化远程访问

    问题描述: 使用本机登陆服务器时,需要经常输入IP地址,在局域网下和非局域网下输入的IP又不一样,十分麻烦,如果可以给IP命名一个简单的名字,岂不是很方便? 解决方法: 修改host文件: vim / ...

  2. [Jobdu] 题目1384:二维数组中的查找

    题目描述: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 输入: 输入可能包含 ...

  3. 关于TimeSpan

    一秒是1000万个tick TimeSpan ts = * ); Console.WriteLine(ts); Console.Read(); //print 00:00:01 并且在TimeSpan ...

  4. 使用jvisualvm进行远程监控

    1. 描述 jvisualvm是JDK自带的监控工具,位于JDK bin目录下面. 默认jvisualvm不能监控远程的JVM进程,需要进行一些配置. 2. 单独在应用上配置JVM启动参数 在Java ...

  5. PCH简单介绍

    https://wenku.baidu.com/view/3c9c5f190a4e767f5acfa1c7aa00b52acfc79cb0.html

  6. jQuery元素操作1

    元素操作 1.2.1 高度和宽度 $(“div”).height(); // 高度 $(“div”).width(); // 宽度 .height()方法和.css(“height”)的区别: 1. ...

  7. filebeat+kafka失败

    filebeat端配置 #----------------------------- Kafka output -------------------------------- output.kafk ...

  8. Linux系统下Shell命令行快捷键实用技巧

    # Ctrl + A# Ctrl + E切到命令行开始|结尾 # esc+f往右跳一个词# esc+b往左跳一个词 # Ctrl + W清除光标之前一个单词# esc + d 删除光标后的一个词 # ...

  9. Java得到GET和POST请求URL和参数列表

    一 获取URL:getRequestURL() 二 获取参数列表: 1.getQueryString() 只适用于GET,比如客户端发送http://localhost/testServlet?a=b ...

  10. xcode6 dyld_sim is not owned by root

    如果运行复制过来的xcode可能会这个提示,xcode6 dyld_sim is not owned by root解决方法打开终端 输入sudo xcode-select -switch /Appl ...