如何在 SharePoint Server 2010 中配置 AD FS v 2.0

 

适用于: SharePoint Foundation 2010, SharePoint Server 2010

上一次修改主题: 2016-12-08

本文中的过程介绍了如何在 Microsoft SharePoint Server 2010 中配置 Active Directory 联合身份验证服务版本 2.0 (AD FS)。

您可将 Active Directory 联合身份验证服务 (AD FS) 2.0 与 Windows Server 2008 操作系统一起使用,构建一个联合身份管理解决方案,从而将分布式标识、身份验证和授权服务跨过组织和平台边界扩展到基于 Web 的应用程序。通过部署 AD FS 2.0,可将组织的现有身份管理功能扩展到 Internet。

在本文中,AD FS v2 是我们的身份提供程序,也称为“IP-STS”(Security Token Service)。AD FS 将提供基于声明的身份验证。开始时,需要使用有关信赖方(在本例中为 SharePoint Server 2010)的信息来配置 AD FS。从 Microsoft SharePoint 2010 产品 的角度来看,需要将 AD FS 配置为信任发送基于声明的映射的 IP-STS。最后,创建将使用基于声明的身份验证级别的 Web 应用程序和网站集。

备注

在执行本文中的过程之前,您必须安装和配置运行 Active Directory 联合身份验证服务 (AD FS) 2.0 的服务器。有关配置服务器以运行 AD FS 2.0 的信息,请参阅 AD FS 2.0 部署指南(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=191723&clcid=0x804)(该链接可能指向英文页面)。

以下视频将介绍在 Microsoft SharePoint Server 2010 中配置 Active Directory 联合身份验证服务版本 2.0 (AD FS) 的分步过程。

针对 SharePoint Server 2010 配置 AD FS

运行时间:9:43

播放视频 观看“使用 AD FS 受信任声明配置 SharePoint Server 2010”视频(该链接可能指向英文页面)

下载视频为了获得最佳观看体验,请下载“使用 AD FS 受信任声明配置 SharePoint Server 2010”视频(该链接可能指向英文页面)

右键单击该链接并单击“目标另存为”以下载副本。单击该链接将会在默认视频查看器中打开一个 .wmv 文件进行高分辨率查看。

本文内容:

  • 配置信赖方

  • 配置声明规则

  • 导出令牌签名证书

  • 导出多个父证书

  • 通过使用 Windows PowerShell 导入令牌签名证书

  • 使用 Windows PowerShell 为声明映射定义唯一标识符

  • 新建身份验证提供程序

  • 将 Web 应用程序与受信任的身份提供程序关联

  • 创建网站集

备注

必须按顺序完成本文中列出的步骤。

配置信赖方

可使用本节中的过程配置信赖方。信赖方将定义 AD FS 识别信赖方并为其颁发声明的方式。

配置信赖方

  1. 确认执行此过程的用户帐户是本地计算机上的 Administrators 组的成员。有关帐户和组成员身份的其他信息,请参阅Local and Domain Default Groups

  2. 打开 Active Directory 联合身份验证服务 (AD FS) 2.0 管理控制台。

  3. 在左侧窗格中展开“信任关系”,然后双击“信赖方信任”文件夹。

  4. 在右侧窗格中单击“添加信赖方信任”。这将打开 Active Directory 联合身份验证服务 (AD FS) 2.0 配置向导。

  5. 在“欢迎使用添加信赖方信任向导”页上,单击“开始”。

  6. 选择“手动输入有关信赖方的数据”,然后单击“下一步”。

  7. 键入信赖方名称,然后单击“下一步”。

  8. 确保选中“Active Directory 联合身份验证服务(AD FS) 2.0 配置文件”,然后单击“下一步”。

  9. 不要使用加密证书。单击“下一步”。

  10. 单击以选中“启用 WS 联合身份验证被动协议”复选框。

  11. 在“WS 联合身份验证被动协议 URL”字段中,键入 Web 应用程序 URL 的名称,并追加 /_trust/(例如,https://WebAppName/_trust/)。单击“下一步”。

    备注

    URL 的名称必须使用安全套接字层 (SSL)。

  12. 键入信赖方信任标识符的名称(例如,urn:sharepoint:WebAppName),并单击“添加”。单击“下一步”。

  13. 选择“允许所有用户访问此信赖方”。单击“下一步”。

  14. 在“已准备好添加信任”页上,无需执行任何操作,直接单击“下一步”。

  15. 在“完成”页上单击“关闭”。这将打开“规则编辑器管理”控制台。使用此控制台将声明的映射从 LDAP Web 应用程序配置到 SharePoint Server 2010。

配置声明规则

使用此步骤中的过程将轻型目录访问协议 (LDAP) 属性的值作为声明进行发送,并指定属性将映射到传出声明类型的方式。

配置声明规则

  1. 确认执行此过程的用户帐户是本地计算机上的 Administrators 组的成员。有关帐户和组成员身份的其他信息,请参阅Local and Domain Default Groups

  2. 在“颁发转换规则”选项卡上,单击“添加规则”。

  3. 在“选择规则模板”页上,选择“将 LDAP 属性作为声明进行发送”。单击“下一步”。

  4. 在“配置规则”页上,在“声明规则名称”字段中键入声明规则的名称。

  5. 从“属性存储”下拉列表中选择“Active Directory”。

  6. 在“将 LDAP 属性映射到传出声明类型”部分的“LDAP 属性”下,选择“电子邮件地址”。

  7. 在“传出声明类型”下,选择“电子邮件地址”。

  8. 在“LDAP 属性”下,选择“未限定令牌组的名称”。

  9. 在“传出声明类型”下,选择“角色”。

  10. 单击“完成”,然后单击“确定”。

导出令牌签名证书

可使用本节中的过程导出您要用来建立信任关系的 AD FS 服务器的令牌签名证书,然后将该证书复制到 SharePoint Server 2010 能够访问的位置。

导出令牌签名证书

  1. 确认执行此过程的用户帐户是本地计算机上的 Administrators 组的成员。有关帐户和组成员身份的其他信息,请参阅Local and Domain Default Groups

  2. 打开 Active Directory 联合身份验证服务 (AD FS) 2.0 管理控制台。

  3. 在左侧窗格中单击以展开“服务”,然后单击“证书”文件夹。

  4. 在“令牌签名”下,单击“主要”列中指示的主要令牌证书。

  5. 在右侧窗格中单击“查看证书链接”。这将显示证书的属性。

  6. 单击“详细信息”选项卡。

  7. 单击“复制到文件”。这将启动“证书导出向导”。

  8. 在“欢迎使用证书导出向导”页上,单击“下一步”。

  9. 在“导出私钥”页上,单击“否,不要导出私钥”,然后单击“下一步”。

  10. 在“导出文件格式”页上,选择“DER 编码二进制 X.509 (.CER)”,然后单击“下一步”。

  11. 在“要导出的文件”页上,键入您要导出的文件的名称和位置,然后单击“下一步”。例如,输入 C:\ADFS.cer

  12. 在“正在完成证书导出向导”页上,单击“完成”。

导出多个父证书

若要完成 AD FS 服务器的配置,请将 .CER 文件复制到运行 AD FS 的计算机。

令牌签名证书可能会在其证书链中包含一个或多个父证书。如果是这样,则需要将链中的每个证书添加到受信任的根证书颁发机构的 SharePoint Server 列表。

若要确定是否存在一个或多个父证书,可使用以下步骤。

备注

除非已将所有证书导出到根证书颁发机构,否则应重复这些步骤。

导出多个父证书

  1. 确认执行此过程的用户帐户是本地计算机上的 Administrators 组的成员。有关帐户和组成员身份的其他信息,请参阅Local and Domain Default Groups

  2. 打开 Active Directory 联合身份验证服务 (AD FS) 2.0 管理控制台。

  3. 在左侧窗格中单击以展开“服务”,然后单击“证书”文件夹。

  4. 在“令牌签名”下,单击“主要”列中指示的主要令牌证书。

  5. 在右侧窗格中单击“查看证书链接”。这将显示证书的属性。

  6. 单击“证书”选项卡。

    这将显示链中的任何其他证书。

  7. 单击“详细信息”选项卡。

  8. 单击“复制到文件”。这将启动“证书导出向导”。

  9. 在“欢迎使用证书导出向导”页上,单击“下一步”。

  10. 在“导出私钥”页上,单击“否,不要导出私钥”,然后单击“下一步”。

  11. 在“导出文件格式”页上,选择“DER 编码二进制 X.509 (.CER)”,然后单击“下一步”。

  12. 在“要导出的文件”页上,键入您要导出的文件的名称和位置,然后单击“下一步”。例如,输入 C:\ADFS.cer

  13. 在“正在完成证书导出向导”页上,单击“完成”。

通过使用 Windows PowerShell 导入令牌签名证书

可使用这一部分将令牌签名证书导入到驻留在 SharePoint 服务器上的受信任根证书颁发机构列表。必须针对链中的每个令牌签名证书重复此步骤,直至到达根证书颁发机构。

通过使用 Windows PowerShell 导入令牌签名证书

  1. 确认您满足以下最低要求:请参阅 Add-SPShellAdmin

  2. 在“开始”菜单上,单击“所有程序”。

  3. 单击“Microsoft SharePoint 2010 产品”。

  4. 单击“SharePoint 2010 Management Shell”。

  5. 从 Windows PowerShell 命令提示符处,导入令牌签名证书的父证书(即,根证书颁发机构证书),如以下语法中所示:

    $root = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("C:\adfsParent.cer")
    
    New-SPTrustedRootAuthority -Name "Token Signing Cert Parent" -Certificate $root
    
  6. 从 Windows PowerShell 命令提示符处,导入从 AD FS 服务器复制的令牌签名证书,如以下语法中所示:

    $cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("C:\adfs.cer ")
    
    New-SPTrustedRootAuthority -Name "Token Signing Cert" -Certificate $cert
    

有关 New-SPTrustedRootAuthority cmdlet 的其他信息,请参阅 New-SPTrustedRootAuthority

使用 Windows PowerShell 为声明映射定义唯一标识符

可使用本节中的过程定义声明映射的唯一标识符。通常,此信息采用电子邮件地址的格式,并且受信任 STS 的管理员必须提供此信息,因为只有 STS 的所有者才知道始终对每个用户唯一的声明类型。

使用 Windows PowerShell 定义声明映射的唯一标识符

  1. 确认您满足以下最低要求:请参阅 Add-SPShellAdmin

  2. 在“开始”菜单上,单击“所有程序”。

  3. 单击“Microsoft SharePoint 2010 产品”。

  4. 单击“SharePoint 2010 Management Shell”。

  5. 从 Windows PowerShell 命令提示符处,创建一个标识声明映射,如以下语法中所示:

    $map = New-SPClaimTypeMapping -IncomingClaimType "https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress" -IncomingClaimTypeDisplayName "EmailAddress" -SameAsIncoming
    
  6. 从 Windows PowerShell 命令提示符处,创建角色声明映射,如以下语法中所示:

    $map2 = New-SPClaimTypeMapping -IncomingClaimType "https://schemas.microsoft.com/ws/2008/06/identity/claims/role" -IncomingClaimTypeDisplayName "Role" -SameAsIncoming
    

有关 New-SPClaimTypeMapping cmdlet 的其他信息,请参阅 New-SPClaimTypeMapping

新建身份验证提供程序

可使用本节中的过程创建一个新的 SPTrustedIdentityTokenIssuer。

使用 Windows PowerShell 创建新的身份验证提供程序

  1. 确认您满足以下最低要求:请参阅 Add-SPShellAdmin

  2. 在“开始”菜单上,单击“所有程序”。

  3. 单击“Microsoft SharePoint 2010 产品”。

  4. 单击“SharePoint 2010 Management Shell”。

  5. 从 Windows PowerShell 命令提示符处,创建一个新的身份验证提供程序,如以下语法中所示。

    备注

    $realm 变量定义标识某个特定的 SharePoint 服务器场的受信任的 STS。$cert 变量是“使用 Windows PowerShell 导入令牌签名证书”一节中使用的变量。SignInUrl 参数用于 AD FS 服务器。

    $realm = "urn:sharepoint:WebAppName"
    
    $ap = New-SPTrustedIdentityTokenIssuer -Name "SAML Provider" -Description "SharePoint secured by SAML" -realm $realm -ImportTrustCertificate $cert -ClaimsMappings $map,$map2 -SignInUrl "https://congen1.contoso.local/adfs/ls" -IdentifierClaim "https://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"
    

有关 New-SPTrustedIdentityTokenIssuer cmdlet 的其他信息,请参阅 New-SPTrustedIdentityTokenIssuer

将 Web 应用程序与受信任的身份提供程序关联

若要将现有的 Web 应用程序配置为使用 SAML 登录,则需要修改声明身份验证类型部分中的可信身份提供程序。

将现有的 Web 应用程序配置为使用 SAML 提供程序

  1. 确认执行此过程的用户帐户是 SharePoint 组“Farm Administrators”的成员。

  2. 在管理中心主页上,单击“应用程序管理”。

  3. 在“应用程序管理”页上的“Web 应用程序”部分,单击“管理 Web 应用程序”。

  4. 单击以选择适当的 Web 应用程序。

  5. 从功能区中单击“身份验证提供程序”。

  6. 在“区域”下单击区域的名称,例如 Default。

  7. 在“编辑验证”页上的“声明身份验证类型”部分,单击以选中“新建信任的身份提供程序名称”复选框。

如果您需要创建一个 Web 应用程序并将其配置为使用 SAML 登录,请参阅创建新的 SharePoint Web 应用程序并将其配置为使用 SAML 登录

创建网站集

最后一步是,创建 SharePoint 网站集并分配所有者。请记住,当添加网站集管理员时,您必须以标识声明的格式输入名称。例如,在本文中,标识声明为电子邮件地址。有关详细信息,请参阅创建网站集 (SharePoint Server 2010)