重要
Microsoft强烈建议迁移到 Microsoft Entra ID,而不是升级到最新版本的 AD FS。 有关详细信息,请参阅关于停用 AD FS 的资源
注释
只有在计划好明确的完成时间范围后才开始升级。 建议不要让 AD FS 长时间处于混合模式状态,因为让 AD FS 保持在混合模式状态可能会导致场出现问题。
将 Windows Server 2012 R2 AD FS 场移动到 Windows Server 2016 AD FS 场
本文介绍如何在 Windows Server 2016 中将 AD FS Windows Server 2012 R2 场升级到 AD FS。 将 SQL Server 用于 AD FS 数据库时,这些步骤适用。
将 AD FS 升级到 Windows Server 2016 FBL
适用于 Windows Server 2016 的 AD FS 中的新增功能是场行为级别功能(FBL)。 此功能适用于场,确定了 AD FS 场可使用的功能。 默认情况下,Windows Server 2012 R2 AD FS 场中的 FBL 位于 Windows Server 2012 R2 FBL。
可以将 Windows Server 2016 AD FS 服务器添加到 Windows Server 2012 R2 场,它会以与 Windows Server 2012 R2 相同的 FBL 运行。 对于以这种方式运行的 Windows Server 2016 AD FS 服务器,则表示服务器场是“混合”场。但是,在将 FBL 提升到 Windows Server 2016 之前,新的 Windows Server 2016 功能不可用。
在混合农场工作时的一些显著特点:
管理员可以将新的 Windows Server 2016 联合服务器添加到现有的 Windows Server 2012 R2 场。 因此,服务器场处于“混合模式”,并运行 Windows Server 2012 R2 服务器场行为级别。 为了确保服务器场中的一致行为,无法在此模式下配置或使用新的 Windows Server 2016 功能。
管理员可以从混合模式场中删除所有 Windows Server 2012 R2 联合服务器。 在此方案中,新的 Windows Serve 2016 联合服务器之一将提升为主节点的角色。 然后,管理员可以将 FBL 从 Windows Server 2012 R2 提升到 Windows Server 2016。 因此,可以配置和使用任何新的 AD FS Windows Server 2016 功能。
要升级到 Windows Server 2016 的 AD FS Windows Server 2012 R2 组织无需部署全新的场或导出和导入配置数据。 相反,他们可以在现有场处于联机状态时将 Windows Server 2016 节点添加到现有场,并且仅在 FBL 提升时导致相对短暂的停机时间。
在混合场模式下,AD FS 场无法使用 Windows Server 2016 的 AD FS 中引入的任何新特性或功能。 想要试用新功能的组织可以在 FBL 提升之后开始试用。 如果你的组织希望在引发 FBL 之前测试新功能,则需要部署单独的服务器场。
本文的其余部分提供了将 Windows Server 2016 联合服务器添加到 Windows Server 2012 R2 环境的步骤。 这些步骤是在以下体系结构关系图概述的测试环境中执行的。
注释
在 Windows Server 2016 FBL 中移动到 AD FS 之前,必须删除所有 Windows 2012 R2 节点。 无法将 Windows Server 2012 R2 OS 升级到 Windows Server 2016,并使其自动成为 2016 节点。 需要将其删除,并将其替换为新的 2016 节点。
如果在 AD FS 中配置 AlwaysOnAvailability 组或合并复制,请先删除所有 AD FS 数据库的所有复制,然后再升级并将所有节点指向主 SQL 数据库。 完成这些任务后,按照说明进行农场升级。 完成升级后,将 AlwaysOnAvailability 组或合并复制添加到新数据库。
以下体系结构关系图显示了用于验证和记录以下步骤的设置。
将 Windows 2016 AD FS 服务器加入 AD FS 场
在 服务器管理器中,在 Windows Server 2016 上安装 Active Directory 联合身份验证服务角色。
在 AD FS 配置向导中,将新的 Windows Server 2016 服务器加入现有 AD FS 场。
在 “欢迎 ”屏幕上,选择“ 将联合服务器添加到联合服务器场”,然后选择“ 下一步”。
在 “连接到 Active Directory 域服务 ”屏幕上,指定有权执行联合身份验证服务配置的 管理员帐户 ,然后选择“ 下一步”。
在指定农场屏幕上,输入 SQL Server 和实例的名称,然后选择下一步。
在 “指定 SSL 证书 ”屏幕上,指定证书,然后选择“ 下一步”。
在 “指定服务帐户 ”屏幕上,指定服务帐户,然后选择“ 下一步”。
在 “审阅选项” 屏幕上,查看选项并选择“ 下一步”。
在 “先决条件检查 ”屏幕上,确保所有先决条件检查都通过,然后选择“ 配置”。
在 “结果 ”屏幕上,确保服务器已成功配置,然后选择“ 关闭”。
删除 Windows Server 2012 R2 AD FS 服务器
以下步骤删除 Windows Server 2012 R2 AD FS 服务器。
注释
使用 SQL 作为数据库时,无需使用 Set-AdfsSyncProperties -Role
命令设置主 AD FS 服务器。 所有节点都被视为此配置中的主节点。
在 服务器管理器中,转到 Windows Server 2012 R2 AD FS 服务器。 在“ 管理”下,选择“ 删除角色和功能”
在 “开始之前 ”屏幕上,选择“ 下一步”,然后在 “服务器选择 ”屏幕上,选择“ 下一步”。
在 “服务器角色 ”屏幕上,取消选中 “Active Directory 联合身份验证服务 ”选项,然后选择“ 下一步”。
在 “功能 ”屏幕上,选择“ 下一步”。
在 “确认 ”屏幕上,选择“ 删除”。
功能删除完成后,重启服务器。
提高服务器场行为级别 (FBL)
以下步骤将引发服务器的 FBL。
重要
在继续执行本部分中的过程之前,请查看以下先决条件:
确保在 Active Directory 环境中完成林和域的准备过程,并且 Active Directory 具有 Windows Server 2016 架构。 本文中所述的过程基于从 Windows 2016 域控制器开始的体系结构。 示例体系结构不需要本部分中的步骤,因为 AD 安装过程包含这些任务。
通过 从“设置”运行 Windows 更新,确保 Windows Server 2016 是最新的。 继续更新过程,直到不需要进一步更新。
确保 AD FS 服务帐户对 SQL Server 和 ADFS 场中的每个服务器具有管理权限。
在 Windows Server 2016 Server 上,打开 PowerShell 并运行以下命令:
$cred = Get-Credential
在 SQL Server 上输入具有管理员权限的凭据。
在 PowerShell 中,输入以下命令:
Invoke-AdfsFarmBehaviorLevelRaise -Credential $cred
在提示符下,选择 Y (是)开始提升级别。 该操作完成后,已成功引发 FBL。
如果转到 AD FS 管理,则会看到新节点。
可以使用 PowerShell cmdlet
Get-AdfsFarmInformation
显示当前的 FBL:
升级现有 WAP 服务器的配置版本
在每个 Web 应用程序代理上,通过在提升的权限窗口中执行以下 PowerShell 命令来重新配置 WAP:
$trustcred = Get-Credential -Message "Enter Domain Administrator credentials" Install-WebApplicationProxy -CertificateThumbprint {SSLCert} -fsname fsname -FederationServiceTrustCredential $trustcred
运行以下命令,从群集中删除旧服务器,并仅保留运行最新服务器版本的 WAP 服务器(之前重新配置):
Set-WebApplicationProxyConfiguration -ConnectedServersName WAPServerName1, WAPServerName2
运行以下命令来检查 WAP 配置。
ConnectedServersName
值反映了通过前面的命令运行的服务器。Get-WebApplicationProxyConfiguration
若要升级
ConfigurationVersion
WAP 服务器,请运行以下 PowerShell 命令:Set-WebApplicationProxyConfiguration -UpgradeConfigurationVersion
Get-WebApplicationProxyConfiguration
再次运行该命令并验证ConfigurationVersion
是否已升级。