这是本系列第四篇了,终于轮到SharePoint上场了,但是本文不会过多讲解SharePoint安装等话题,而是直入主题,讲解如何进行配置,让其于ADFS配合完成SSO的工作。

注意:本文使用的SharePoint为2013版。

本系列导航

实战:ADFS3.0单点登录系列-总览

实战:ADFS3.0单点登录系列-前置准备

实战:ADFS3.0单点登录系列-ADFS3.0安装配置

实战:ADFS3.0单点登录系列-集成SharePoint

实战:ADFS3.0单点登录系列-集成MVC

实战:ADFS3.0单点登录系列-集成Exchange

实战:ADFS3.0单点登录系列-自定义ADFS样式

实战:ADFS3.0单点登录系列-问题汇总

一 SharePoint端的配置

1.在ADFS服务器,打开ADFS管理工具,定位到证书,将令牌签名证书导出。并拷贝到SharePoint服务器。

2.打开SharePoint命令行管理工具,并非是windows的的powershell

3.执行如下命令

$cert = New-Object System.Security.Cryptography.x509Certificates.x509Certificate2 ("c:\ADFS.cer")

New-SPTrustedRootAuthority -Name "Token Signing Cert" -Certificate $cert (Name可以随意)

$upnClaimMap = New-SPClaimTypeMapping -IncomingClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn" -IncomingClaimTypeDisplayName "UPN" -SameAsIncoming(定义UPN声明类型)

$emailClaimMap= New-SPClaimTypeMapping -IncomingClaimType "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"-IncomingClaimTypeDisplayName "EmailAddress" –SameAsIncoming(定义Email声明类型)

$realm = "urn:sharepoint:ql" (设置标识符,sharepoint提供给ADFS的唯一身份认证)

$signInURL = "https://xtcs-validate.test.com/adfs/ls" (adfs登录地址)

$ap = New-SPTrustedIdentityTokenIssuer -Name "TCSCD Provider for SharePoint" -description “SAML secured SharePoint" -realm $realm -ImportTrustCertificate $cert -ClaimsMappings $emailClaimMap, $upnClaimMap -SignInURL $signInURL -IdentifierClaim $upnClaimMap.InputClaimType

(Name可以随意命名,描述也可随意命名)

注意:

l  如果需要修改证书信任,则先删除
Remove-SPTrustedRootAuthority -Identity " Token Signing Cert"
l  如果需要修改tokenissuer:则先删除
 Remove-SPTrustedIdentityTokenIssuer -Identity " TCSCD Provider for SharePoint "

否则会出现如下错误:

“ADFS new-sptrustedIdentityTokenIssuer:the trust provider certificate already exist”

二 ADFS配置

1.在ADFS服务器,打开ADFS管理控制台,并定位到信任关系->信赖方信任

2.点击“添加信赖方信任”

3.选择“手动输入有关信赖方的数据"

4.输入名称和描述

5.选择“ADFS配置文件”,下面的是ADFS1.0和2.0使用的配置文件。

6.配置证书,默认即可,后面会讲解如何对证书进行单独的修改。

7.选择“启用对ws-federation的被动协议支持”,URL必须是https://sharepoint应用程序地址/_trust/的形式。例如:https://sso-sp.tt.com/_trust/

8.配置标识符,格式“urn:xxx:xx”,和1.3中的$realm设置相同

9.立即启用多重身份验证,保持默认

10.选择授权规则,选择“允许所有用户访问此信赖方”

11.完成并打开”编辑声明规则“对话框

12.添加声明规则,以声明形式发送LDAP特性

13.填入名称,并选择UPN和Email和之前SharePoint命令行工具中设置的声明相对应

14.完成

三 配置SharePoint使用前面创建的自定义STS

1.Sharepoint管理中心>应用程序管理>管理web应用程序>选中需要配置的web应用程序>身份验证提供程序

2.修改身份提供程序:点击默认->编辑验证>选中信任的身份提供程序>选中之前注册的信任的身份验证提供程序->保存,本例中为

TSCCD Provider for SharePoint

3.修改SharePoint网站集管理员为UPN格式:Sharepoint管理中心>应用程序管理>网站集>修改网站集管理员

四 验证

直接在浏览器输入SharePoint应用程序地址,检查是否跳转至ADFS登录页面

至此,sharepoint成功与ADFS结合,并且使用ADFS的登录替换掉了SharePoint自带的弹出框身份认证。

注意:本例中SharePoint需要配置为使用SSL的形式。

实战:ADFS3.0单点登录系列-集成SharePoint的更多相关文章

  1. 实战:ADFS3.0单点登录系列-集成MVC

    本文将讲解如何让MVC应用程序与ADFS集成,完成认证的过程. 目录: 实战:ADFS3.0单点登录系列-总览 实战:ADFS3.0单点登录系列-前置准备 实战:ADFS3.0单点登录系列-ADFS3 ...

  2. 实战:ADFS3.0单点登录系列-集成Exchange

    本文将介绍如何将Exchange与ADFS集成,从而实现对于Exchange的SSO. 目录: 实战:ADFS3.0单点登录系列-总览 实战:ADFS3.0单点登录系列-前置准备 实战:ADFS3.0 ...

  3. 实战:ADFS3.0单点登录系列-总览

    本系列将以一个实际项目为背景,介绍如何使用ADFS3.0实现SSO.其中包括SharePoint,MVC,Exchange等应用程序的SSO集成. 整个系列将会由如下几个部分构成: 实战:ADFS3. ...

  4. 实战:ADFS3.0单点登录系列-前置准备

    本文为本系列第二篇,主要分为两部分进行介绍, 一.网络拓扑 二.证书制作 还是将本系列目录贴出来,方便导航 实战:ADFS3.0单点登录系列-总览 实战:ADFS3.0单点登录系列-前置准备 实战:A ...

  5. 实战:ADFS3.0单点登录系列-ADFS3.0安装配置

    本文为系列第三章,主要讲下ADFS3.0的安装和配置.本文和前面的文章是一个系列,因此有些地方是有前后关联,比如本文中使用的通配符证书就是第二篇讲解的,因此需要连贯的进行阅读. 全文目录如下: 实战: ...

  6. cas sso单点登录系列4_cas-server登录页面自定义修改过程(jsp页面修改)

    转:http://blog.csdn.net/ae6623/article/details/8861065 SSO单点登录系列4:cas-server登录页面自定义修改过程,全新DIY. 目标:    ...

  7. Office 365实现单点登录系列(1)—域环境搭建

    Hello 小伙伴们, 2018新年快乐,作为2018年首篇文章,怎么能不给大家带来点干货呢?这篇文章其实我9月底的时候已经在MSDN上发布过了,为表诚意,我更新了这篇文章,并把它组成了一个系列,2. ...

  8. SSO单点登录系列4:cas-server登录页面自定义修改过程(jsp页面修改)

    落雨 cas 单点登录 SSO单点登录系列4:cas-server登录页面自定义修改过程,全新DIY. 目标:    下面是正文: 打开cas的默认首页,映入眼帘的是满眼的中文and英文混杂体,作为一 ...

  9. Office 365实现单点登录系列(5)—配置单点登录

    这是单点登录系列的最后一篇文章,前面4篇文章其实都是在为这篇文章的内容做准备,我把这四篇文章的链接放在下面,如果大家有需要,可以参考我以下的链接: Office 365实现单点登录系列(1)—域环境搭 ...

随机推荐

  1. unity 查找游戏中隐藏的物体

    在Hierarchy 有时会隐藏一些游戏物体,我们需要在游戏的时候将其激活状态变为true 我们发现通过  GameObject.Find("隐藏物体名字") 是查找不到隐藏对象的 ...

  2. SQL Server 练习

    use master if exists(select * from sys.databases where name='db_Test') drop database db_Test go crea ...

  3. php用百度地图API进行逆地址解析

    <?php /** * 根据地理坐标获取国家.省份.城市,及周边数据类(利用百度Geocoding API实现) * 百度密钥获取方法:http://lbsyun.baidu.com/apico ...

  4. sourcetree 不停的让输入密码,报 password required

    sourcetree 不停的让输入密码,报 password required sourcetree 不停的让输入密码,报 password required1.在终端(terminal)打开你的工程 ...

  5. c++第五次实验

    part 1 两个问题: 1.派生类中出现与基类同名成员,通过对象名.成员名的方式,即代码中base2.display(),访问的成员是派生类中的成员 2.通过基类指针访问派生类对象时,在ex1_1. ...

  6. C#报算术运算导致溢出的错误

    如果是在fill datatable时报这个错,是因为所查询的数据中有在数据库中为NUMBER类型的字段,这种类型C#中不能识别,需TO_CHAR转换成字符型,就不会再报这个错了. e.g. SELE ...

  7. 【转至hejinde的专栏】Axure RP 8最新激活码(可用注册码)

    Licensee:米 业成 (STUDENT)Key:nFmqBBvEqdvbiUjy8NZiyWiRSg3yO+PtZ8c9wdwxWse4WprphvSu9sohAdpNnJK5 亲测可用

  8. sap smartform 打印乱码问题

    在smartforms打印的时候会遇到中英文结合的form 有时候系统会处理时出现乱码   有时不会  不知道是系统的事情还是配置的事情 现在是我的解决办法  因为是中英文结合 在中文环境建立form ...

  9. winform中的Datagridview控件与List同步修改

    Winform的datagridview是个很强大的控件,可用datatable, List等型的数据与之绑定显示. 可惜的是,绑定的LIst不能同步更新. 估计是为了改进List不能同步更新的问题, ...

  10. 黑马SSM项目练习中的Oracle操作