将服务器到服务器身份验证证书分配给 Skype for Business Server
总结: 为 Skype for Business Server 分配服务器到服务器的身份验证证书。
若要确定是否将服务器到服务器身份验证证书分配给 Skype for Business Server,请从 Skype for Business Server 命令行管理程序运行以下命令:
Get-CsCertificate -Type OAuthTokenIssuer
如果未返回证书信息,则必须分配令牌颁发者证书,然后才能使用服务器到服务器身份验证。 一般情况下,任何 Skype for Business Server 证书都可以用作 OAuthTokenIssuer 证书;例如,Skype for Business Server 默认证书也可以用作 OAuthTokenIssuer 证书。 (OAUthTokenIssuer 证书也可以是包含“主题”字段中 SIP 域名称的任何 Web 服务器证书。) 用于服务器到服务器身份验证的证书的主要两项要求是:1) 必须在所有前端服务器上将同一证书配置为 OAuthTokenIssuer 证书;和,2) 证书必须至少为 2048 位。
如果没有可用于服务器到服务器身份验证的证书,则可以获取新证书,导入新证书,然后将该证书用于服务器到服务器身份验证。 请求并获取新证书后,可以登录任何一个前端服务器,并使用类似于以下版本的 Windows PowerShell 命令导入并分配该证书:
Import-CsCertificate -Identity global -Type OAuthTokenIssuer -Path C:\Certificates\ServerToServerAuth.pfx -Password "P@ssw0rd"
在上述命令中,Path 参数表示证书文件的完整路径,Password 参数表示分配给该证书的密码。 此过程应只运行一次:Skype for Business Server 复制服务会自动创建一组计划任务,用于解密证书并将其部署到所有前端服务器。
您也可以使用现有证书作为服务器到服务器身份验证证书。 (如前所述,默认证书可用作服务器到服务器的身份验证证书。) 以下 Windows PowerShell 命令对检索默认证书的 Thumbprint 属性的值,然后使用该值将默认证书设置为服务器到服务器的身份验证证书:
$x = (Get-CsCertificate -Type Default).Thumbprint
Set-CsCertificate -Identity global -Type OAuthTokenIssuer -Thumbprint $x
在前面的命令中,检索的证书配置为充当全局服务器到服务器的身份验证证书;这意味着证书将复制到所有前端服务器,并由其使用。 同样,此命令只应运行一次,并且只能在其中一台前端服务器上运行。 尽管所有前端服务器都必须使用相同的证书,但不应在每个前端服务器上配置 OAuthTokenIssuer 证书。 请改为配置证书一次,然后让 Skype for Business Server 复制服务器负责将该证书复制到每个服务器。
Set-CsCertificate cmdlet 获取有问题的证书,并立即将该证书配置为充当当前 OAuthTokenIssuer 证书。 (Skype for Business Server 保留证书类型的两个副本:当前证书和上一个证书。) 如果需要新证书立即开始充当 OAuthTokenIssuer 证书,则应使用 Set-CsCertificate cmdlet。
您还可以使用 Set-CsCertificate cmdlet“滚动”新证书。 “滚动”证书仅意味着在指定时间点将新证书配置为成为当前 OAuthTokenIssuer 证书。 例如,以下命令将检索默认证书,然后将该证书配置为从 2015 年 7 月 1 日起成为当前 OAuthTokenIssuer 证书:
$x = (Get-CsCertificate -Type Default).Thumbprint
Set-CsCertificate -Identity global -Type OAuthTokenIssuer -Thumbprint $x -EffectiveDate "7/1/2015" -Roll
2015 年 7 月 1 日,新证书将配置为当前 OAuthTokenIssuer 证书,“旧”OAuthTokenIssuer 证书将配置为以前的证书。
如果不想使用 Windows PowerShell,还可以使用证书 MMC 控制台从一台前端服务器导出证书,然后将该证书导入所有其他前端服务器上。 如果执行此操作,请确保将私钥连同证书本身一起导出。
谨慎
在这种情况下,必须在每个前端服务器上执行该过程。 以这种方式导出和导入证书时,Skype for Business Server 不会将证书复制到每个前端服务器。
将证书导入到所有前端服务器后,可以使用 Skype for Business Server 部署向导(而不是 Windows PowerShell)分配该证书。 若要使用部署向导分配证书,请在安装了部署向导的计算机上完成以下步骤:
依次选择“开始”、“所有程序”、“ Skype for Business Server”、“ Skype for Business Server 部署向导”。
在部署向导中,单击“ 安装或更新 Skype for Business Server 系统”。
在“Skype for Business Server”页上,单击“步骤 3:请求、安装或分配证书”标题下的“运行”按钮。 (注意:如果已在此计算机上安装证书,则 “运行 ”按钮将标记为“ 再次运行”。)
在证书向导中,选择 OAuthTokenIssuer 证书,然后单击“分配”。
在证书分配向导的“证书分配”页上,单击“下一步”。
在“证书存储”页上,选择要用于服务器到服务器身份验证的证书,然后单击“下一步”。
在“证书分配摘要”页上,单击“下一步”。
在“正在执行命令”页上,单击“完成”。
关闭证书向导和部署向导。