設定 商務用 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,以與 Microsoft Entra ID (舊稱 Azure AD) 互動。 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