設定商務用 Skype Server 混合式環境的伺服器對伺服器驗證。
總結: 設定商務用 Skype Server 混合式環境的伺服器對伺服器驗證。
在混合式設定中,您的部分使用者會使用商務用Skype Server的內部部署安裝。 其他用戶則位於 Microsoft 365 或 Office 365 版的商務用 Skype Server 上。 若要在混合式環境中設定伺服器對伺服器驗證,您必須先設定商務用 Skype Server 的內部部署安裝,以信任授權伺服器。 執行下列商務用 Skype Server 管理命令介面腳本,即可執行此程式的初始步驟:
$TenantID = (Get-CsTenant -Filter {DisplayName -eq "Fabrikam.com"}).TenantId
$sts = Get-CsOAuthServer microsoft.sts -ErrorAction SilentlyContinue
if ($sts -eq $null)
{
New-CsOAuthServer microsoft.sts -MetadataUrl "https://accounts.accesscontrol.windows.net/$TenantId/metadata/json/1"
}
else
{
if ($sts.MetadataUrl -ne "https://accounts.accesscontrol.windows.net/$TenantId/metadata/json/1")
{
Remove-CsOAuthServer microsoft.sts
New-CsOAuthServer microsoft.sts -MetadataUrl "https://accounts.accesscontrol.windows.net/$TenantId/metadata/json/1"
}
}
$exch = Get-CsPartnerApplication microsoft.exchange -ErrorAction SilentlyContinue
if ($exch -eq $null)
{
New-CsPartnerApplication -Identity microsoft.exchange -ApplicationIdentifier 00000002-0000-0ff1-ce00-000000000000 -ApplicationTrustLevel Full -UseOAuthServer
}
else
{
if ($exch.ApplicationIdentifier -ne "00000002-0000-0ff1-ce00-000000000000")
{
Remove-CsPartnerApplication microsoft.exchange
New-CsPartnerApplication -Identity microsoft.exchange -ApplicationIdentifier 00000002-0000-0ff1-ce00-000000000000 -ApplicationTrustLevel Full -UseOAuthServer
}
else
{
Set-CsPartnerApplication -Identity microsoft.exchange -ApplicationTrustLevel Full -UseOAuthServer
}
}
Set-CsOAuthConfiguration -ServiceName 00000004-0000-0ff1-ce00-000000000000
請記住,租用戶的領域名稱通常與組織名稱不同;事實上,領域名稱幾乎一律與租用戶標識符相同。 因此,腳本中的第一行會用來傳回指定租使用者 (的 TenantId 屬性值,在此情況下,fabrikam.com) 然后将该名称指派给变量$TenantId:
$TenantID = (Get-CsTenant -Filter {DisplayName -eq "Fabrikam.com"}).TenantId
若要執行此腳本,您必須已安裝商務用 Skype Online PowerShell 模組,並使用此模組連線到您的租使用者。 如果您尚未安裝這些 Cmdlet,您的腳本將會失敗,因為無法使用 Get-CsTenant Cmdlet。 腳本完成後,您必須設定商務用 Skype Server 與授權伺服器之間的信任關係,以及 Exchange 2013/2016 與授權伺服器之間的第二個信任關係。 這只能使用 Microsoft Online Services Cmdlet 來完成。
注意事項
如果您尚未安裝 Microsoft Online Services Cmdlet,您將需要從 PowerShell 存放庫安裝 Cmdlet install-module MSOnline
。 您可以在 Microsoft 365 網站上找到安裝和使用 Microsoft Online Services 模組的詳細資訊。 這些指示也會告訴您如何在 Microsoft 365 或 Office 365 和 Active Directory 之間設定單一登錄、同盟和同步處理。
在您設定 Microsoft 365 或 Office 365 之後,以及在您建立商務用 Skype Server 和 Exchange 2013 的 Microsoft 365 或 Office 365 服務主體之後,您需要向這些服務主體註冊認證。 若要註冊認證,您必須先取得儲存為的 X.509 Base64 憑證。CER 檔案。 然後將此憑證套用至 Microsoft 365 或 Office 365 服務主體。
注意事項
Azure AD Powershell 預計於 2024 年 3 月 30 日停用。 若要深入瞭解,請閱讀 即將停用的更新。
我們建議您移轉至 Microsoft Graph PowerShell ,以 (舊稱 Azure AD) 與 Microsoft Entra ID 互動。 Microsoft Graph PowerShell 可存取所有 Microsoft Graph API,而且可在 PowerShell 7 上使用。 如需常見移轉查詢的解答,請參閱 移轉常見問題。
當您取得 X.509 憑證時,請開啟 PowerShell 主機並匯入 Microsoft Online Windows PowerShell 模組,其中包含可用於管理服務主體的 Cmdlet:
Import-Module MSOnline
匯入模組后,輸入下列命令,然後按 ENTER:
Connect-MsolService
按下 ENTER 之後,就會出現一個 [認證] 對話方塊。 在對話框中輸入您的 Microsoft 365 或 Office 365 使用者名稱和密碼,然後選取 [確定]。
連線到 Microsoft 365 或 Office 365 后,您就可以執行下列命令,以傳回服務主體的相關信息:
Get-MsolServicePrincipal
您應該為所有服務主體取得類似資訊:
ExtensionData : System.Runtime.Serialization.ExtensionDataObject AccountEnabled : True Addresses : {} AppPrincipalId : 00000004-0000-0ff1-ce00-000000000000 DisplayName : Skype for Business Server ObjectId : aada5fbd-c0ae-442a-8c0b-36fec40602e2 ServicePrincipalName : SkypeForBusinessServer/litwareinc.com TrustedForDelegation : True
下一個步驟是匯入、編碼及指派 X.509 憑證。 若要匯入及編碼憑證,請使用下列 Windows PowerShell 命令,務必指定完整的檔案路徑給您的 。當您呼叫匯入方法時,CER 檔案:
$certificate = New-Object System.Security.Cryptography.X509Certificates.X509Certificate
$certificate.Import("C:\Certificates\Office365.cer")
$binaryValue = $certificate.GetRawCertData()
$credentialsValue = [System.Convert]::ToBase64String($binaryValue)
在憑證匯入並編碼之後,您就可以將憑證指派給您的 Microsoft 365 或 Office 365 服務主體。 若要這麼做,請先使用 Get-MsolServicePrincipal 擷取商務用 Skype Server 和 Microsoft Exchange 服務主體的 AppPrincipalId 屬性值;AppPrincipalId 屬性的值將用來識別獲派憑證的服務主體。 當商務用 Skype Server 有 AppPrincipalId 屬性值時,請使用下列命令將憑證指派給商務用 Skype Online 版本:
New-MsolServicePrincipalCredential -AppPrincipalId 00000004-0000-0ff1-ce00-000000000000 -Type Asymmetric -Usage Verify -Value $credentialsValue
接著您應該重複此命令,這次使用 Exchange 2013 的 AppPrincipalId 屬性值。
如果您之後需要刪除該憑證,例如,如果憑證已過期,您可以先擷取憑證的 KeyId:
Get-MsolServicePrincipalCredential -AppPrincipalId 00000004-0000-0ff1-ce00-000000000000
該命令會傳回如下所示的數據:
Type : Asymmetric Value : KeyId : bc2795f3-2387-4543-a95d-f92c85c7a1b0 StartDate : 6/1/2012 8:00:00 AM EndDate : 5/31/2013 8:00:00 AM Usage : Verify
接著,您可以使用類似以下的命令來刪除憑證:
Remove-MsolServicePrincipalCredential -AppPrincipalId 00000004-0000-0ff1-ce00-000000000000 -KeyId bc2795f3-2387-4543-a95d-f92c85c7a1b0
除了指派憑證之外,您還必須設定 Exchange Online 服務主體,並將您的內部部署版商務用 Skype Server 外部 Web 服務 URL 設定為 Microsoft 365 或 Office 365 服務主體。 您可以執行下列兩個命令來完成這項作業。
在下列範例中,Pool1ExternalWebFQDN.contoso.com 是商務用 Skype Server 集區的外部 Web 服務 URL。 您應該重複這些步驟,在部署中新增所有外部 Web 服務 URL。
Set-MSOLServicePrincipal -AppPrincipalID 00000002-0000-0ff1-ce00-000000000000 -AccountEnabled $true
$lyncSP = Get-MSOLServicePrincipal -AppPrincipalID 00000004-0000-0ff1-ce00-000000000000
$lyncSP.ServicePrincipalNames.Add("00000004-0000-0ff1-ce00-000000000000/Pool1ExternalWebFQDN.contoso.com")
Set-MSOLServicePrincipal -AppPrincipalID 00000004-0000-0ff1-ce00-000000000000 -ServicePrincipalNames $lyncSP.ServicePrincipalNames