Le Single Sign-On (SSO ou authentification unique) de TeamViewer vise à réduire les efforts de gestion des utilisateurs pour les grandes entreprises en connectant TeamViewer aux fournisseurs d'identité et aux répertoires d'utilisateurs.
Cet article s'applique aux clients de TeamViewer possédant une licence Tensor.
Pour utiliser lauthentification unique de TeamViewer, vous devez disposer de :
L'authentification unique (SSO) est activée au niveau du domaine pour tous les comptes TeamViewer utilisant une adresse électronique avec ce domaine. Une fois activé, tous les utilisateurs qui se connectent à un compte TeamViewer correspondant sont redirigés vers le fournisseur d'identité qui a été configuré pour le domaine.
Pour des raisons de sécurité et pour éviter les abus, il est nécessaire de vérifier la propriété du domaine avant d'activer la fonction.
Pour activer le SSO, connectez-vous à la Management Console et sélectionnez le menu Authentification Unique. Cliquez sur Ajouter un domaine et saisissez le domaine pour lequel vous souhaitez activer l'authentification unique.
Vous devez également fournir les métadonnées de votre fournisseur d'identité. Trois options sont disponibles pour ce faire :
Après l'ajout du domaine, l'identifiant personnalisé peut être généré. Cet identifiant personnalisé n'est pas stocké par TeamViewer, mais est utilisé pour la configuration initiale du SSO. Il ne doit être modifié à aucun moment, car cela briserait l'authentification unique et une nouvelle configuration serait nécessaire. Toute chaîne aléatoire peut être utilisée comme identifiant du client. Cette chaîne est ensuite requise pour la configuration de l'IdP.
Une fois qu'un domaine a été ajouté avec succès, vous devez vérifier la propriété du domaine. L'authentification unique ne sera pas activée avant que la vérification du domaine ne soit terminée.
Pour vérifier le domaine, veuillez créer un nouvel enregistrement TXT pour votre domaine avec les valeurs indiquées sur la page de vérification.
📌Note : Le processus de vérification peut prendre plusieurs heures en raison du système DNS.
La fenêtre permettant d'ajouter un enregistrement TXT peut ressembler à celui-ci :
📌Note : La description des champs de saisie peut varier en fonction de votre système de gestion des domaines.
Après avoir créé le nouvel enregistrement TXT, lancez le processus de vérification en cliquant sur le bouton "Démarrer la vérification".
Veuillez noter que le processus de vérification peut prendre plusieurs heures en raison du système DNS.
💡Astuce : TeamViewer recherchera l'enregistrement de vérification TXT pendant 24 heures après le début de la vérification. Si nous ne trouvons pas l'enregistrement TXT dans les 24 heures, la vérification échoue et le statut est mis à jour en conséquence. Dans ce cas, vous devez relancer la vérification par le biais de cette boîte de dialogue.
💡Astuce : Lorsque vous ajoutez un domaine pour l'authentification unique, il est recommandé d'ajouter le compte propriétaire à la liste d'exclusion. La raison en est un scénario de repli selon lequel vous conservez l'accès à la configuration du domaine même si l'IdP ne fonctionne pas.
Exemple : Le compte TeamViewer "[email protected]" ajoute le domaine "example.com" pour l'identification unique. Après avoir ajouté le domaine, l'adresse électronique "[email protected]" doit être ajoutée à la liste d'exclusion. Cela est nécessaire pour apporter des modifications à la configuration du SSO, même lorsque l'identification unique ne fonctionne pas en raison d'une mauvaise configuration.
💡Astuce : Lorsque vous ajoutez un domaine pour l'authentification unique, il est recommandé d'ajouter des propriétaires supplémentaires au domaine du SSO, car la propriété du SSO n'est pas héritée au sein de votre entreprise.
Exemple : Après que le compte TeamViewer "[email protected]" ait ajouté le domaine "example.com" pour l'authentification unique, il ajoute plusieurs administrateurs de l'entreprise (par exemple "[email protected]") comme propriétaires du domaine, afin qu'ils puissent également gérer le domaine et ses paramètres SSO.
Les étapes suivantes décrivent la procédure de configuration des services de fédération Active Directory (ADFS). Les instructions et les commandes ont été prises sur une machine fonctionnant sous Windows Server 2016 Standard (Version 1607).
La configuration comprend essentiellement les deux étapes suivantes :
1) Ajouter un ADFS Relying Party Trust pour le service TeamViewer Single Sign-On. Cette étape nécessite la saisie des métadonnées du service SSO TeamViewer. Cela peut être fait de l'une des manières suivantes :
2) Ajouter une règle de transformation à la politique d'émission des demandes de la nouvelle fiducie de la partie dépendante.
Les sections suivantes décrivent la configuration pour les trois scénarios en utilisant l'invite de commande PowerShell et l'interface utilisateur de l'ADFS Management.
Ouvrez une nouvelle fenêtre de commande PowerShell et entrez les commandes suivantes pour ajouter à l'ADFS une nouvelle fiducie de partie dépendante avec une politique d'émission de réclamation par défaut :
$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
Adaptez la valeur du paramètre "-Name" (ligne 13) à vos besoins. Il s'agit du nom affiché dans l'interface graphique de l'ADFS. De plus, le nom de la politique de contrôle d'accès (ligne 16) peut différer sur votre système.
Tous les paramètres peuvent être modifiés ultérieurement via PowerShell ou l'interface utilisateur graphique de l'ADFS.
Cette méthode est très similaire à la méthode "automatique" décrite ci-dessus. Elle nécessite de télécharger au préalable le fichier XML de métadonnées et de le copier sur le serveur ADFS. Le fichier de métadonnées peut être téléchargé à partir de l'URL suivant :
https://sso.teamviewer.com/saml/metadata.xml
Les commandes suivantes supposent que le fichier XML de métadonnées est disponible dans le répertoire actuel de l'invite de commande de PowerShell sous le nom "metadata.xml".
$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
La principale différence avec la méthode "automatique" est l'utilisation du paramètre "-MetadataFile" (au lieu de "-MetadataUrl" - ligne 14). Les paramètres "-AutoUpdateEnabled" et "-MonitoringEnabled" ont été omis, car tous deux nécessitent l'indication d'une URL de métadonnées valide.
La configuration manuelle nécessite de télécharger et d'extraire la clé publique du certificat de signature/cryptage du fournisseur de services TeamViewer SAML.
Exécutez les commandes suivantes dans une invite de commande PowerShell pour ajouter manuellement une confiance de la partie dépendante :
$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
Veuillez également consulter la documentation officielle du commandlet PowerShell "Add-AdfsRelyingPartyTrust" : https://technet.microsoft.com/en-us/library/ee892322.aspx
1) Lancez les outils de gestion de l'ADFS à partir du Server Manager.
2) Naviguez jusqu'à ADFS ➜ Relying Party Trusts et cliquez sur Add Relying Party Trust... dans le panneau de navigation à droite
3) Sélectionnez Claims aware et démarrez l'assistant en cliquant sur le bouton Start
4) Selon que vous souhaitez avoir la variante automatique ou semi-automatique, sélectionnez
importer les métadonnées via l'URL
5) Choisissez un nom pour le trust de la partie dépendante, comme TeamViewer ou sso.teamviewer.com ou choisissez le nom pré-rempli le cas échéant
6) Sélectionnez la stratégie de contrôle d'accès pour la partie qui fait confiance. Par exemple, choisissez permit everyone
7) Cliquez sur Next dans l'écran récapitulatif pour ajouter la confiance de la partie dépendante
Ensuite, la stratégie d'émission des demandes doit être configurée pour le nouveau trust de la partie dépendante.
1) Sélectionnez la fiducie de la partie dépendante et cliquez sur Edit Claim Issuance Policy... dans le volet de navigation à droite.
2) Cliquez sur Add Rule et choisissez Send LDAP Attributes as Claims
3) Entrez un nom pour la règle de transformation, par exemple TeamViewer Login
4) Sélectionnez Active Directory comme attributs.
5) Ajoutez les deux mappings suivants :
6) Cliquez sur Finish.
7) Ajoutez une deuxième règle de réclamation en ajoutant à nouveau Add Rule et sélectionnez Send Claims Using a Custom Rule.
8) Entrez un nom pour la règle de réclamation personnalisée, par exemple TeamViewer Customer ID
9) Veuillez vous assurer d'ajouter au champ de valeur votre propre identifiant client généré.
=> issue(Type = "http://sso.teamviewer.com/saml/claims/customeridentifier", Value = "Your Generated Customer Identifier");
Saisissez la règle personnalisée suivante et réglez la valeur sur votre identifiant client généré :
10) Cliquez sur Finish
La configuration manuelle nécessite de télécharger et d'extraire la clé publique du certificat de signature/cryptage du fournisseur de services TeamViewer SAML.
Veuillez consulter la section Informations techniques ci-dessous pour savoir comment obtenir le certificat.
1) Démarrez les outils de gestion ADFS à partir du Server Manager
2) Naviguez vers ADFS - Relying Party Trusts et cliquez sur Add Relying Party Trust... dans le volet de navigation à droite
3) Sélectionnez Claims aware et démarrez l'assistant en cliquant sur le bouton Start
4) Sélectionnez pour entrer les données manuellement (troisième point)
5) Choisissez un nom pour le trust de la partie dépendante, comme TeamViewer ou sso.teamviewer.com ou choisissez le nom pré-rempli le cas échéant
6) Naviguer vers le fichier de certificat
7) Cochez la case Enable support for the SAML 2.0 WebSSO protocol et entrez l'URL du service suivant : https://sso.teamviewer.com/saml/acs
8) Sur la page Configure Identifiers, ajoutez https://sso.teamviewer.com/saml/metadata comme identifiant
9) Confirmez l'ajout de la confiance de la partie dépendante.
10) Configurez la politique d'émission des créances comme décrit pour la procédure automatique ci-dessus.
11) Ensuite, configurez le certificat de signature de la fiducie de la partie dépendante. Ouvrez donc les propriétés (double-clic) et naviguez jusqu'à l'onglet Signature. Naviguez jusqu'au même fichier de certificat que celui mentionné ci-dessous
En option, ajoutez un deuxième point de terminaison SAML à la confiance de la partie qui se fie à vous. Accédez à l'onglet Endpoints et cliquez sur Add SAML endpoint
TeamViewer est compatible avec l'authentification unique à partir de la version 13.2.1080.
Les versions précédentes ne supportent pas l'authentification unique et ne peuvent pas rediriger les utilisateurs vers votre fournisseur d'identité lors de la connexion. La configuration du client est optionnelle, mais permet de changer le navigateur utilisé pour la connexion au SSO de l'IdP.
Le client TeamViewer utilisera par défaut un navigateur intégré pour l'authentification du fournisseur d'identité. Si vous préférez utiliser le navigateur par défaut du système d'exploitation, vous pouvez modifier ce comportement via la clé de registre suivante :
HKEY_CURRENT_USER\Software\TeamViewer\SsoUseEmbeddedBrowser = 0 (DWORD)
defaults write com.teamviewer.teamviewer.preferences SsoUseEmbeddedBrowser -int 0
📌 Note : Vous devez redémarrer le client TeamViewer après avoir créé ou modifié le registre.