这是本系列第四篇了,终于轮到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. hdu1086

    #include <iostream>#include <stdio.h>#include <string.h>#include <stack>#inc ...

  2. Ping++中的AlipaySDK和AlicloudUTDID冲突解决方案

    今天维护一个老项目发现阿里框架冲突 问题截图: 解决方案: 去阿里文档中心 https://docs.open.alipay.com/54/104509 重新下载没有UTDID冲突的库 下载SDK解压 ...

  3. 【service调用dao层传参的三种方式】

    第一种方案:默认数组角标: service Public User selectUser(String name,String area); mapper: <select id="s ...

  4. 【mybatis 的foreach的用法】

    foreach一共有三种类型,分别为List,[](array),Map三种. foreach属性 属性 描述 item 循环体中的具体对象.支持属性的点路径访问,如item.age,item.inf ...

  5. [CentOS7] 增加yum源

    下载最新rpm文件:http://fedoraproject.org/wiki/EPEL 通过源文件rpm来增加: rpm -ivh epel-release-latest-7.noarch.rpm

  6. Java中的变量传递机制以及JS中的参数传递机制

    JAVA: 传递基本类型是 就是基本的值传递 不会影响值本身. package com.wuqi.p1; public class ValuePassTest { public static void ...

  7. 【转载】GlusterFS六大卷模式說明

    本文转载自翱翔的水滴<GlusterFS六大卷模式說明> GlusterFS六大卷說明 第一,分佈卷 在分布式卷文件被随机地分布在整个砖的体积.使用分布式卷,你需要扩展存储,冗余是重要或提 ...

  8. centos 基础设置

    centos 6 关闭防火墙 查看防火墙是否开启 service iptables status 停止防火墙 service iptables stop 禁止开机自启动防火墙 chkconfig ip ...

  9. [USACO08JAN]跑步Running dp

    题目描述 The cows are trying to become better athletes, so Bessie is running on a track for exactly N (1 ...

  10. maven项目跳转页面报空指针错误 Servlet.service() for servlet 异常

    Servlet.service() for servlet jsp threw exceptionjava.lang.NullPointerExceptionat org.jaronsource.ms ...