Konfigurieren von Integration und OAuth zwischen Skype for Business Online und Exchange Server

Das Konfigurieren der Integration zwischen Exchange-Server und Skype for Business Online ermöglicht die in der Featureunterstützung beschriebenen Funktionen für die Skype for Business - und Exchange-Integration.

Dieses Thema bezieht sich auf die Integration in Exchange Server 2013 bis 2019.

Was sollten Sie wissen, bevor Sie beginnen?

Konfigurieren der Integration zwischen Exchange Server und O365

Schritt 1: Konfigurieren der OAuth-Authentifizierung zwischen Exchange Server und O365

Führen Sie die Schritte im folgenden Artikel aus:

Konfigurieren der OAuth-Authentifizierung zwischen Exchange- und Exchange Online-Organisationen

Schritt 2: Erstellen eines neuen Mail-Benutzerkontos für die Skype for Business Online-Partneranwendung

Dieser Schritt wird auf dem Exchange-Server ausgeführt. Es erstellt einen E-Mail-Benutzer und weist ihm die entsprechenden Verwaltungsrollenrechte zu. Dieses Konto wird dann im nächsten Schritt verwendet.

Geben Sie eine überprüfte Domäne für Ihre Exchange-Organisation an. Diese Domäne sollte dieselbe Domäne sein wie die primäre SMTP-Domäne, die für die lokalen Exchange-Konten verwendet wird. Diese Domäne wird im folgenden Verfahren genannt <your Verified Domain> . Außerdem sollte dies <DomainControllerFQDN> der FQDN eines Domänencontrollers sein.

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

Mit diesem Befehl wird der neue E-Mail-Benutzer in Adresslisten ausgeblendet.

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

Diese beiden nächsten Befehle weisen diesem neuen Konto die Verwaltungsrolle "UserApplication" und "ArchiveApplication" zu.

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

Schritt 3: Erstellen und Aktivieren einer Partneranwendung für Skype for Business Online

Erstellen Sie eine neue Partneranwendung, und verwenden Sie das soeben erstellte Konto. Führen Sie den folgenden Befehl in der Exchange PowerShell in Ihrer lokalen Exchange-Organisation aus.

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

Schritt 4: Exportieren des lokalen Autorisierungszertifikats

Führen Sie ein PowerShell-Skript aus, um das lokale Autorisierungszertifikat zu exportieren, das Sie im nächsten Schritt in Ihre Skype for Business Online-Organisation importieren.

Speichern Sie den folgenden Text in einer PowerShell-Skriptdatei, die etwa ExportAuthCert.ps1 benannt werden kann.

$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)

Führen Sie in Exchange PowerShell in Ihrer lokalen Exchange-Organisation das PowerShell-Skript aus, das Sie soeben erstellt haben. Beispiel: .\ExportAuthCert.ps1

Schritt 5: Hochladen des lokalen Autorisierungszertifikats in Azure Active Directory ACS

Verwenden Sie als Nächstes Windows PowerShell, um das lokale Autorisierungszertifikat hochzuladen, das Sie im vorherigen Schritt in Azure Active Directory Access Control Services (ACS) exportiert haben. Dazu muss das Azure Active Directory-Modul für Windows PowerShell-Cmdlets bereits installiert sein. Sollten diese noch nicht installiert sein, navigieren Sie zu https://aka.ms/aadposh, um das Azure Active Directory-Modul für Windows PowerShell zu installieren. Führen Sie die folgenden Schritte aus, nachdem Sie das Azure Active Directory-Modul für Windows PowerShell installiert haben.

  1. Klicken Sie auf die Verknüpfung Azure Active Directory-Modul für Windows PowerShell, um einen Windows PowerShell-Arbeitsbereich zu öffnen, in dem die Azure AD-Cmdlets installiert sind. Alle Befehle in diesem Schritt werden unter Verwendung der Windows PowerShell für die Azure Active Directory-Konsole ausgeführt.

  2. Speichern Sie den folgenden Text in einer PowerShell-Skriptdatei mit dem Namen , z. B UploadAuthCert.ps1. .

    Connect-MsolService
    Import-Module MSOnline
    $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-MsolServicePrincipal -ServicePrincipalName $ServiceName
    New-MsolServicePrincipalCredential -AppPrincipalId $p.AppPrincipalId -Type asymmetric -Usage Verify -Value $credValue
    
  3. Führen Sie das PowerShell-Skript aus, welches Sie im vorherigen Schritt erstellt haben. Beispiel: .\UploadAuthCert.ps1

  4. Nachdem Sie das Skript gestartet haben, wird ein Dialogfeld für Anmeldeinformationen angezeigt. Geben Sie die Anmeldeinformationen für das Mandantenadministratorkonto Ihrer Microsoft Online Azure AD-Organisation ein. Lassen Sie Windows PowerShell nach der Ausführung des Skripts für die Azure AD-Sitzung geöffnet. Sie werden diese zum Ausführen eines PowerShell-Skripts im nächsten Schritt erneut nutzen.

Schritt 6: Überprüfen, ob das Zertifikat in den Skype for Business-Dienstprinzipal hochgeladen wurde

  1. Führen Sie in der PowerShell, die in Azure Active Directory geöffnet und authentifiziert ist, Folgendes aus:

    Get-MsolServicePrincipalCredential -AppPrincipalId 00000004-0000-0ff1-ce00-000000000000
    
  2. Drücken Sie die EINGABETASTE, wenn Sie zur Eingabe von ReturnKeyValues aufgefordert werden.

  3. Vergewissern Sie sich, dass ein Schlüssel mit Start- und Enddaten aufgeführt ist, der ihrem Start- und Enddatum des Exchange Oauth-Zertifikats entspricht.

Überprüfen Des Erfolgs

Überprüfen Sie, ob die Konfiguration korrekt ist, indem Sie überprüfen, ob einige der Features erfolgreich funktionieren.

  1. Vergewissern Sie sich, dass Skype for Business-Benutzer mit cloudbasiertem Voicemaildienst in einer Organisation mit einer Exchange Server-Hybridkonfiguration ihre Voicemail-Begrüßungen erfolgreich ändern können.

  2. Bestätigen Sie, dass der Unterhaltungsverlauf für mobile Clients im Outlook-Ordner "Aufgezeichnete Unterhaltungen" angezeigt wird.

  3. Vergewissern Sie sich, dass archivierte Chatnachrichten mithilfe von EWSEditor im lokalen Postfach des Benutzers im Ordner "Löschaktionen" abgelegt werden.

Sehen Sie sich alternativ Ihren Datenverkehr an. Der Datenverkehr in einem OAuth-Handshake ist wirklich unverwechselbar (und sieht nicht wie Standardauthentifizierung aus), insbesondere in Bereichen, in denen Sie den Ausstellerdatenverkehr sehen, der wie folgt aussieht: 00000004-0000-0ff1-ce00-00000000000@ (manchmal mit einem / vor dem @-Zeichen), in den Token, die übergeben werden. Es wird kein Benutzername oder Kennwort angezeigt, was der Punkt von OAuth ist. Sie sehen jedoch den "Office"-Aussteller – in diesem Fall ist "4" Skype for Business – und den Bereich Ihres Abonnements.

Wenn Sie sicher sein möchten, dass Sie OAuth erfolgreich verwenden, stellen Sie sicher, dass Sie wissen, was Sie erwarten können, und wissen Sie, wie der Datenverkehr aussehen sollte. Hier ist also das, was Sie erwarten können. Hier ist ein ziemlich standardmäßiges Beispiel für OAuth-Datenverkehr in einer Microsoft-Anwendung (sehr hilfreich zum Lesen, obwohl keine Aktualisierungstoken verwendet werden), und es gibt Fiddler-Erweiterungen, mit denen Sie ihre OAuth-JWT (JSON-Webtoken) untersuchen können.

Hier ist ein Beispiel für die Einrichtung eines Solchen, Aber Sie können jedes Netzwerkablaufverfolgungstool verwenden, das Sie für diesen Prozess verwenden möchten.

Konfigurieren der OAuth-Authentifizierung zwischen Exchange- und Exchange Online-Organisationen