TeamViewer Single Sign-On (SSO) zielt darauf ab, den Aufwand für die Benutzerverwaltung in großen Unternehmen zu verringern, indem TeamViewer mit Identitätsanbietern und Benutzerverzeichnissen verbunden wird.

Dieser Artikel richtet sich an alle mit einer Enterprise/Tensor Lizenz.

Anforderungen

Um TeamViewer Single Sign-On zu verwenden, benötigen Sie

  • eine TeamViewer Version 13.2.1080 oder neuer
  • einen SAML 2.0-kompatiblen Identitätsanbieter (IdP)*
  • ein TeamViewer Konto für den Zugriff auf Management Console und das Hinzufügen von Domains
  • Zugriff auf die DNS-Verwaltung Ihrer Domain, um die Eigentümerschaft der Domain zu überprüfen
  • eine TeamViewer Tensor Lizenz.

TeamViewer Konfiguration

Single Sign-On (SSO) wird auf Domainebene für alle TeamViewer -Konten aktiviert, die eine E-Mail-Adresse mit dieser Domain verwenden. Nach der Aktivierung werden alle Benutzer, die sich bei einem entsprechenden TeamViewer -Konto anmelden, zum Identitätsanbieter umgeleitet, der für die Domain konfiguriert wurde.

Aus Sicherheitsgründen und um Missbrauch vorzubeugen, ist es erforderlich, die Domaininhaberschaft zu überprüfen, bevor die Funktion aktiviert wird.

Eine neue Domain hinzufügen

Um SSO zu aktivieren, melden Sie sich auf Management Console an, wählen Sie Unternehmensverwaltung und dann den Menüeintrag Single Sign-On. Klicken Sie auf Domain hinzufügen und geben Sie die Domain ein, für die Sie SSO aktivieren möchten.

Sie müssen auch die Metadaten Ihres Identitätsanbieters angeben. Hierfür stehen Ihnen drei Optionen zur Verfügung:

  • via URL: Geben Sie die URL Ihrer IdP-Metadaten in das entsprechende Feld ein
  • über XML: Wählen Sie Ihre XML-Metadaten aus und laden Sie sie hoch
  • Manuelle Konfiguration: Geben Sie alle erforderlichen Informationen manuell ein. Bitte beachten Sie, dass der öffentliche Schlüssel ein Base64-kodierter String sein muss.

Klicken Sie anschließend auf Weiter.

Wählen Sie nun die E-Mail-Adressen oder Benutzergruppen aus, die Sie von SSO ausschließen möchten, und klicken Sie auf Domain hinzufügen.

Kunden ID erstellen

Nachdem die Domain hinzugefügt wurde, kann der Kunden ID generiert werden. Diese Kunden ID wird nicht von TeamViewer gespeichert, sondern für die Erstkonfiguration von SSO verwendet. Er darf zu keinem Zeitpunkt geändert werden, da sonst Single Sign-On nicht mehr funktioniert und eine Neueinrichtung erforderlich ist. Als Kunden ID kann eine beliebige Zeichenfolge verwendet werden. Diese Zeichenfolge wird später für die Konfiguration des IDP benötigt. Um die benutzerdefinierte Kunden ID zu generieren, klicken Sie auf Generieren.

Verifizieren Sie die Domain-Zugehörigkeit

Nachdem eine Domain erfolgreich hinzugefügt wurde, müssen Sie die Zugehörigkeit der Domain verifizieren.

Single Sign-On wird erst aktiviert, wenn die Verifizierung der Domain-Zugehörigkeit abgeschlossen ist.

Um die Domain zu verifizieren, erstellen Sie bitte einen neuen TXT-Eintrag für Ihre Domain mit den auf der Verifizierungsseite angegebenen Werten.

📌 Hinweis: Der Verifizierungsprozess kann aufgrund des DNS-Systems mehrere Stunden dauern.

📌 Hinweis: Abhängig von Ihrem Domainverwaltungssystem kann die Beschreibung der Eingabefelder variieren.

Nachdem Sie den neuen TXT-Datensatz erstellt haben, starten Sie den Verifizierungsprozess, indem Sie auf die Schaltfläche Verifizierung starten klicken.

Bitte beachten Sie, dass der Verifizierungsprozess aufgrund des DNS-Systems mehrere Stunden dauern kann.

💡 Tipp: TeamViewer sucht 24 Stunden lang nach dem Start der Überprüfung nach dem TXT-Datensatz. Wenn wir den TXT-Datensatz nicht innerhalb von 24 Stunden finden können, schlägt die Überprüfung fehl, und der Status wird entsprechend aktualisiert. In diesem Fall müssen Sie die Überprüfung über dieses Dialogfeld neu starten.

Einrichtung des Identitätsanbieters für Active Directory Federation Services (ADFS)

Die folgenden Schritte beschreiben das Setup-Verfahren für Active Directory Federation Services (ADFS). Die Anweisungen und Befehle wurden von einem Computer mit Windows Server 2016 Standard (Version 1607) übernommen.

Die Konfiguration besteht im Wesentlichen aus den folgenden zwei Schritten:

1) Fügen Sie einen ADFS Relying Party Trust für den TeamViewer Single Sign-On-Dienst hinzu. In diesem Schritt müssen die Metadaten des TeamViewer SSO-Dienstes eingegeben werden. Dies kann auf eine der folgenden Arten geschehen:

  • Automatisch: Hierfür muss lediglich eine URL zur XML-Metadaten-Datei eingegeben werden. Die Datei wird von ADFS heruntergeladen und alle erforderlichen Felder des Vertrauensverhältnisses werden automatisch ausgefüllt. Dazu muss der ADFS-Server Zugang zum Internet haben.
  • Halb-automatisch: Wie die automatische Methode, aber anstatt eine URL zu den Metadaten zu liefern, wird die Datei selbst vorher heruntergeladen und als XML-Datei an ADFS übergeben. Dies kann nützlich sein, wenn der ADFS-Server keinen Internetzugang hat.
  • Manuell: Wenn keine der oben genannten Methoden anwendbar ist, können die Metadaten manuell in ADFS eingegeben werden.

2) Fügen Sie eine Transformationsregel in die Claim Issuance Policy des neuen Relying Party Trusts ein.

In den folgenden Abschnitten wird die Konfiguration für alle drei Szenarien mithilfe der PowerShell-Eingabeaufforderung und der grafischen Benutzeroberfläche von ADFS Management beschrieben.

Automatische Konfiguration mit PowerShell

Öffnen Sie ein neues PowerShell-Befehlsfenster und geben Sie die folgenden Befehle ein, um ADFS eine neue Vertrauensstellung mit einer Standardrichtlinie für die Ausstellung von Ansprüchen hinzuzufügen:

$customerId = 'Your Generated Customer Identifier'
$claimRules = @'
 @RuleTemplate = "LdapClaims"
 @RuleName = "TeamViewer Login"
 c:[Type ==
 "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
 Issuer == "AD AUTHORITY"]
 => issue(store = "Active Directory", types =
 ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier",
 "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"), query =
 ";objectGUID,mail;{0}", param = c.Value);
 @RuleName = "TeamViewer Customer ID"
 => issue(Type = "http://sso.teamviewer.com/saml/claims/customeridentifier",
 Value = "
'@ + $customerId + '");'
Add-AdfsRelyingPartyTrust `
 -Name TeamViewer `
 -MetadataUrl https://sso.teamviewer.com/saml/metadata.xml `
 -IssuanceTransformRules $claimRules `
 -AccessControlPolicyName "Permit everyone" `
 -AutoUpdateEnabled $true `
 -MonitoringEnabled $true `
 -Enabled $true

Passen Sie den Wert des Parameters "-Name" (Zeile 13) an Ihre Bedürfnisse an. Dies ist der Name, der in der grafischen Benutzeroberfläche von ADFS angezeigt wird. Auch der Name der Zugriffskontrollrichtlinie (Zeile 16) kann sich auf Ihrem System unterscheiden.

Alle Einstellungen können später über PowerShell oder die grafische Benutzeroberfläche von ADFS geändert werden.

Halbautomatische Konfiguration mit PowerShell

Diese Methode ist der oben beschriebenen "automatischen" Methode sehr ähnlich. Sie erfordert das vorherige Herunterladen der Metadaten-XML-Datei und das Kopieren dieser Datei auf den ADFS-Server.

Die Metadaten-Datei kann von der folgenden URL heruntergeladen werden:

https://sso.teamviewer.com/saml/metadata.xml

Bei den folgenden Befehlen wird davon ausgegangen, dass die Metadaten-XML-Datei im aktuellen Verzeichnis der PowerShell-Eingabeaufforderung als "metadata.xml" verfügbar ist.

$customerId = 'Your Generated Customer Identifier'
$claimRules = @'
 @RuleTemplate = "LdapClaims"
 @RuleName = "TeamViewer Login"
 c:[Type ==
 "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
 Issuer == "AD AUTHORITY"]
 => issue(store = "Active Directory", types =
 ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier",
 "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"), query =
 ";objectGUID,mail;{0}", param = c.Value);
 @RuleName = "TeamViewer Customer ID"
 => issue(Type = "http://sso.teamviewer.com/saml/claims/customeridentifier",
 Value = "
'@ + $customerId + '");'
Add-AdfsRelyingPartyTrust `
 -Name TeamViewer `
 -MetadataFile metadata.xml `
 -IssuanceTransformRules $claimRules `
 -AccessControlPolicyName "Permit everyone" `
 -Enabled $true

Der Hauptunterschied zur "automatischen" Methode ist die Verwendung des Parameters "-MetadataFile" (anstelle von "-MetadataUrl" - Zeile 14). Die Parameter "-AutoUpdateEnabled" und "-MonitoringEnabled" wurden weggelassen, da beide die Angabe einer gültigen Metadaten-URL erfordern.

Manuelle Konfiguration mit Powershell

Die manuelle Konfiguration erfordert das Herunterladen und Extrahieren des öffentlichen Schlüssels des Signatur-/Verschlüsselungszertifikats des TeamViewer SAML Service Providers.

Führen Sie die folgenden Befehle in einer PowerShell-Eingabeaufforderung aus, um eine vertrauenswürdige Partei manuell hinzuzufügen:

$customerId = 'Your Generated Customer Identifier'
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2(".\sso.teamviewer.com - saml.cer", "")
$claimRules = @'
 @RuleTemplate = "LdapClaims"
 @RuleName = "TeamViewer Login"
 c:[Type ==
 "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname",
 Issuer == "AD AUTHORITY"]
 => issue(store = "Active Directory", types =
 ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier",
 "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"), query =
 ";objectGUID,mail;{0}", param = c.Value);
 @RuleName = "TeamViewer Customer ID"
 => issue(Type = "http://sso.teamviewer.com/saml/claims/customeridentifier",
 Value = "
'@ + $customerId + '");'
$samlEndpoints = @(
 (New-AdfsSamlEndpoint -Binding POST -Protocol SAMLAssertionConsumer -Uri https://sso.teamviewer.com/saml/acs -Index 0),
 (New-AdfsSamlEndpoint -Binding Redirect -Protocol SAMLAssertionConsumer -Uri https://sso.teamviewer.com/saml/acs -Index 1)
)
Add-AdfsRelyingPartyTrust `
 -Name "TeamViewer" `
 -Identifier "https://sso.teamviewer.com/saml/metadata" `
 -RequestSigningCertificate $cert `
 -EncryptionCertificate $cert `
 -SamlEndpoint $samlEndpoints `
 -IssuanceTransformRules $claimRules `
 -AccessControlPolicyName "Permit everyone" `
 -Enabled $true

Bitte schauen Sie sich auch die offizielle Dokumentation des PowerShell-Befehls "Add-AdfsRelyingPartyTrust" an: https://technet.microsoft.com/en-us/library/ee892322.aspx

Halbautomatische Konfiguration mit ADFS-Verwaltungstools (grafisch)

1. Starten Sie die ADFS-Verwaltungstools über den Server Manager.

2. Navigieren Sie zu ADFS --> Relying Party Trusts und klicken Sie auf Add Relying Party Trust... im Navigationsbereich auf der rechten Seite

3. Wählen Sie Claims aware und starten Sie den Assistenten, indem Sie auf die Schaltfläche Start klicken.

4. Je nachdem, ob Sie die oder die Variante haben wollen, wählen Sie zu

  • Import der Metadaten über die URL
  • Geben Sie die Metadaten-URL ein: https://sso.teamviewer.com/saml/metadata.xml importieren Sie die Metadaten per Datei. Navigieren Sie zu der heruntergeladenen XML-Metadaten-Datei. Die Datei kann von der oben genannten URL heruntergeladen werden.

5. Wählen Sie einen Namen für das Vertrauen der vertrauenden Partei, z. B. TeamViewer oder sso.teamviewer.com, oder wählen Sie den vorausgefüllten Namen, falls zutreffend.

6. Wählen Sie die Zugriffskontrollpolitik für das Vertrauen der vertrauenden Partei. Wählen Sie z. B. Jeder darf

7. Klicken Sie auf dem Übersichtsbildschirm auf Weiter, um das Vertrauen der vertrauenden Partei hinzuzufügen.

Als Nächstes muss die Claim Issuance Policy für die neue vertrauenswürdige Partei konfiguriert werden.

  1. Wählen Sie das Vertrauen der vertrauenden Partei aus und klicken Sie auf "Edit Claim Issuance Policy..." im Navigationsbereich auf der rechten Seite.
  2. Klicken Sie auf Regel hinzufügen und wählen Sie LDAP-Attribute als Ansprüche senden
  3. Geben Sie einen Namen für die Transformationsregel ein, z. B. TeamViewer Login
  4. Wählen Sie Active Directory als Attributspeicher.
  5. Fügen Sie die folgenden zwei Zuordnungen hinzu:
LDAP Attribute Outgoing Claim Type Remarks

objectGUID

user.email

Geben Sie den Wert des Feldes LDAP Attribut manuell ein.

Möglicherweise müssen Sie zuerst auf den Dropdown-Pfeil klicken, bevor Sie mit der Eingabe beginnen.

customeridentifier

"Your Generated Customer ID"

-

6. Klicken Sie auf Fertigstellen.

7. Fügen Sie eine zweite Anspruchsregel hinzu, indem Sie erneut Regel hinzufügen hinzufügen und Ansprüche mit einer benutzerdefinierten Regel senden auswählen.

8. Geben Sie einen Namen für die benutzerdefinierte Antragsregel ein, z. B. TeamViewer Customer ID

9. Geben Sie die folgende benutzerdefinierte Regel ein und setzen Sie den Wert auf die von Ihnen erstellte Kundenkennung:

=> issue(Type = "http://sso.teamviewer.com/saml/claims/customeridentifier", Value = "Your Generated Customer Identifier");

Bitte stellen Sie sicher, dass Sie dem Wertfeld Ihre eigene Kundenkennung hinzufügen.

10. Klicken Sie auf Fertigstellen

Manuelle Konfiguration mit den ADFS-Verwaltungstools (grafisch)

Die manuelle Konfiguration erfordert das Herunterladen und Extrahieren des öffentlichen Schlüssels des Signatur-/Verschlüsselungszertifikats des TeamViewer SAML Service Providers.

Wie Sie das Zertifikat erhalten, erfahren Sie im Abschnitt "Technische Informationen" weiter unten.

1. Starten Sie die ADFS-Verwaltungstools über den Server Manager

2. Navigieren Sie zu ADFS - Relying Party Trusts und klicken Sie auf Add Relying Party Trust... im Navigationsbereich auf der rechten Seite

3. Wählen Sie Claims aware und starten Sie den Assistenten, indem Sie auf die Schaltfläche Start klicken.

4. Wählen Sie die manuelle Eingabe der Daten (dritter Aufzählungspunkt)

5. Wählen Sie einen Namen für das Vertrauen der vertrauenden Partei, z. B. TeamViewer oder sso.teamviewer.com, oder wählen Sie den vorausgefüllten Namen, falls zutreffend.

6. Suchen Sie nach der Zertifikatsdatei (siehe Kommentar oben)

7. Aktivieren Sie das Kontrollkästchen Unterstützung für das SAML 2.0 WebSSO-Protokoll aktivieren und geben Sie die folgende Service-URL ein: https://sso.teamviewer.com/saml/acs

8. Fügen Sie auf der Seite "Configure Identifiers" https://sso.teamviewer.com/saml/metadata als Bezeichner hinzu.

9. Bestätigen Sie das Hinzufügen des Vertrauens der vertrauenden Partei.

10. Konfigurieren Sie die Richtlinien für die Ausstellung von Anträgen wie oben für das automatische Verfahren beschrieben.

11. Als Nächstes konfigurieren Sie das Signaturzertifikat der vertrauenden Partei. Öffnen Sie dazu die Eigenschaften (Doppelklick) und navigieren Sie zur Registerkarte Signatur . Navigieren Sie zu derselben Zertifikatsdatei wie oben beschrieben

12. Fügen Sie optional einen zweiten SAML-Endpunkt zum Vertrauen der vertrauenden Partei hinzu. Navigieren Sie zur Registerkarte Endpunkte und klicken Sie auf SAML-Endpunkt hinzufügen

  • SAML Assertion Consumer als Endpunkttyp auswählen
  • Wählen Sie Umleitung als Bindung
  • Setzen Sie den Index auf 1
  • Setzen Sie die vertrauenswürdige URL auf https://sso.teamviewer.com/saml/acs

TeamViewer Client-Konfiguration

TeamViewer ist kompatibel mit Single Sign-On ab Version 13.2.1080.

Frühere Versionen unterstützen kein Single Sign-On und können die Benutzer bei der Anmeldung nicht zu Ihrem Identitätsanbieter umleiten. Die Client-Konfiguration ist optional, erlaubt aber die Änderung des verwendeten Browsers für die SSO-Anmeldung beim IdP.

Der TeamViewer Client verwendet standardmäßig einen eingebetteten Browser für die Authentifizierung beim Identitätsanbieter. Wenn Sie es vorziehen, den Standardbrowser des Betriebssystems zu verwenden, können Sie dieses Verhalten ändern:

Windows:

HKEY_CURRENT_USER\Software\TeamViewer\SsoUseEmbeddedBrowser = 0 (DWORD)

macOS:

defaults write com.teamviewer.teamviewer.preferences SsoUseEmbeddedBrowser -int 0

📌 Hinweis: Nach dem Erstellen oder Ändern der Registrierung müssen Sie den TeamViewer Client neu starten.