Configurare l'integrazione e OAuth tra Skype for Business Online e Exchange Server

La configurazione dell'integrazione tra Exchange Server e Skype for Business Online abilita le caratteristiche di integrazione di Skype for Business ed Exchange descritte in Supporto delle caratteristiche.

Questo argomento si applica all'integrazione con Exchange Server 2013-2019.

Cosa c'è da sapere prima di iniziare?

Configurare l'integrazione tra Exchange Server e Office 365

Passaggio 1: Configurare l'autenticazione OAuth tra Exchange Server e Office 365

Eseguire i passaggi descritti nell'articolo seguente:

Configurare l'autenticazione OAuth tra Exchange e le organizzazioni Exchange Online

Passaggio 2: Creare un nuovo account utente di posta elettronica per l'applicazione partner di Skype for Business Online

Questo passaggio viene eseguito sul server Exchange. Creerà un utente di posta elettronica e gli assegnerà i diritti di ruolo di gestione appropriati. L'account verrà quindi usato nel passaggio successivo.

Specificare un dominio verificato per l'organizzazione di Exchange. Questo dominio deve essere lo stesso usato come dominio SMTP primario usato per gli account di Exchange locale. Questo dominio è definito <dominio> verificato nella procedura seguente. Inoltre, domainControllerFQDN <> deve essere l'FQDN di un controller di dominio.

$user = New-MailUser -Name SfBOnline-ApplicationAccount -ExternalEmailAddress SfBOnline-ApplicationAccount@<your Verified Domain> -DomainController <DomainControllerFQDN>

Questo comando nasconde il nuovo utente di posta elettronica dagli elenchi di indirizzi.

Set-MailUser -Identity $user.Identity -HiddenFromAddressListsEnabled $True -DomainController <DomainControllerFQDN>

Questi due comandi successivi assegneranno il ruolo di gestione UserApplication e ArchiveApplication a questo nuovo account.

New-ManagementRoleAssignment -Role UserApplication -User $user.Identity -DomainController <DomainControllerFQDN>
New-ManagementRoleAssignment -Role ArchiveApplication -User $user.Identity -DomainController <DomainControllerFQDN>

Passaggio 3: Creare e abilitare un'applicazione partner per Skype for Business Online

Creare una nuova applicazione partner e usare l'account appena creato. Eseguire il comando seguente in Exchange PowerShell nell'organizzazione di Exchange locale.

New-PartnerApplication -Name SfBOnline -ApplicationIdentifier 00000004-0000-0ff1-ce00-000000000000 -Enabled $True -LinkedAccount $user.Identity

Passaggio 4: Esportare il certificato di autorizzazione locale

Eseguire uno script di PowerShell per esportare il certificato di autorizzazione locale, che verrà importato nell'organizzazione di Skype for Business Online nel passaggio successivo.

Salvare il testo seguente in un file di script di PowerShell denominato, ad esempio, ExportAuthCert.ps1.

$thumbprint = (Get-AuthConfig).CurrentCertificateThumbprint
if((test-path $env:SYSTEMDRIVE\OAuthConfig) -eq $false) {
    md $env:SYSTEMDRIVE\OAuthConfig
}
cd $env:SYSTEMDRIVE\OAuthConfig
$oAuthCert = (dir Cert:\LocalMachine\My) | where {$_.Thumbprint -match $thumbprint}
$certType = [System.Security.Cryptography.X509Certificates.X509ContentType]::Cert
$certBytes = $oAuthCert.Export($certType)
$CertFile = "$env:SYSTEMDRIVE\OAuthConfig\OAuthCert.cer"
[System.IO.File]::WriteAllBytes($CertFile, $certBytes)

In Exchange PowerShell nell'organizzazione di Exchange locale eseguire lo script di PowerShell appena creato. Ad esempio: .\ExportAuthCert.ps1

Passaggio 5: Caricare il certificato di autorizzazione locale in Microsoft Entra ACS

Usare quindi Windows PowerShell per caricare il certificato di autorizzazione locale esportato nel passaggio precedente in servizi di Microsoft Entra Controllo di accesso. A questo scopo, è necessario che il modulo di Azure Active Directory per Windows PowerShell cmdlet sia già installato. Se non è installato, passare a https://aka.ms/aadposh installare il modulo di Azure Active Directory per Windows PowerShell. Completare la procedura seguente dopo aver installato il modulo di Azure Active Directory per Windows PowerShell.

  1. Fare clic sul collegamento modulo di Azure Active Directory per Windows PowerShell per aprire un'area di lavoro di Windows PowerShell in cui sono installati i cmdlet Microsoft Entra. Tutti i comandi di questo passaggio verranno eseguiti usando il Windows PowerShell per Microsoft Entra console ID.

  2. Salvare il testo seguente in un file di script di PowerShell denominato, ad esempio . UploadAuthCert.ps1

    Connect-MgGraph
    Import-Module Microsoft.Graph
    $CertFile = "$env:SYSTEMDRIVE\OAuthConfig\OAuthCert.cer"
    $objFSO = New-Object -ComObject Scripting.FileSystemObject
    $CertFile = $objFSO.GetAbsolutePathName($CertFile);
    $cer = New-Object System.Security.Cryptography.X509Certificates.X509Certificate
    $cer.Import($CertFile)
    $binCert = $cer.GetRawCertData();
    $credValue = [System.Convert]::ToBase64String($binCert)
    $ServiceName = "00000004-0000-0ff1-ce00-000000000000"
    $p = Get-MgServicePrincipal -ServicePrincipalId $ServicePrincipalNames
    Add-MgServicePrincipalKey -ServicePrincipalId $servicePrincipalId -Type asymmetric -Usage Verify -Value $credValue
    
  3. Eseguire lo script di PowerShell creato nel passaggio precedente. Ad esempio: .\UploadAuthCert.ps1

  4. Dopo aver avviato lo script, viene visualizzata una finestra di dialogo delle credenziali. Immettere le credenziali per l'account amministratore tenant dell'organizzazione microsoft online Microsoft Entra. Dopo aver eseguito lo script, lasciare aperta la Windows PowerShell per Microsoft Entra sessione. Verrà usato per eseguire uno script di PowerShell nel passaggio successivo.

Passaggio 6: Verificare che il certificato sia stato caricato nell'entità servizio di Skype for Business

  1. In PowerShell aperto e autenticato con ID Microsoft Entra, eseguire le operazioni seguenti

    Get-MgServicePrincipal -ServicePrincipalId 00000004-0000-0ff1-ce00-000000000000
    
  2. Premere INVIO quando viene richiesto di restituire ReturnKeyValues

  3. Verificare che sia elencata una chiave con i dati di inizio e di fine corrispondenti alle date di inizio e di fine del certificato Oauth di Exchange

Verifica il tuo successo

Verifica che la configurazione sia corretta verificando che alcune delle funzionalità funzionino correttamente.

  1. Verificare che Skype for Business gli utenti con Cloud Voicemail servizio, in un'organizzazione con una configurazione di Exchange Server ibrida, possano modificare correttamente il messaggio di saluto della segreteria telefonica.

  2. Verificare che la cronologia delle conversazioni per i client mobili sia visibile nella cartella Cronologia conversazioni di Outlook.

  3. Verificare che i messaggi di chat archiviati vengano depositati nella cassetta postale locale dell'utente nella cartella Purges utilizzando EWSEditor.

In alternativa, controlla il traffico. Il traffico in un handshake OAuth è molto distintivo (e non ha l'aspetto dell'autenticazione di base), in particolare nelle aree di autenticazione, dove inizierai a vedere il traffico dell'emittente simile al seguente: 00000004-0000-0ff1-ce00-00000000000@ (a volte con un / prima del segno @), nei token che vengono passati. Non verrà visualizzato un nome utente o una password, che è il punto di OAuth. Ma vedrai l'emittente di "Office", in questo caso "4" è Skype for Business, e l'area di autenticazione del tuo abbonamento.

Se vuoi essere certo di usare correttamente OAuth, assicurati di sapere cosa aspettarsi e di sapere quale dovrebbe essere l'aspetto del traffico. Ecco cosa aspettarsi.

Ecco un esempio di configurazione, ma è possibile utilizzare qualsiasi strumento di traccia di rete che si desidera intraprendere questo processo.

Configurare l'autenticazione OAuth tra Exchange e le organizzazioni Exchange Online