Pré. | Proc. |
Configurer OpenID
Cette fonctionnalité est disponible à partir de la version 14.1 Enterprise Architect .
Pour permettre aux utilisateurs de log connecter avec un compte OpenID, un serveur OpenID supporte la norme « OpenID Connect » doit être disponible.
Ces paramètres seront utilisés par Enterprise Architect , Pro Cloud Server et WebEA .
Accéder
Ruban |
Paramètres > Sécurité > Utilisateurs > Accepter l'authentification OpenID Paramètres > Sécurité > Utilisateurs > Configurer OpenID |
Paramètres
URL OpenID |
Saisissez le chemin complet vers l'URL de découverte du serveur OpenID, moins le " /.well-known/openid-configuration " standard (celui-ci sera ajouté automatiquement). Incluez le protocole (http:// ou https://) et le port s'il est exécuté sur un port non standard (c'est-à-dire pas 80 ou 443). Vous devriez pouvoir copier l'adresse avec le " /.well-known/openid-configuration » ajouté et l'ouvrir dans un navigateur et voir une réponse textuelle. Appuyez maintenant sur le bouton Test et cliquez sur « Se connecter avec OpenID » pour ouvrir un navigateur à l'adresse correcte. Si l'URL est incorrecte ou si OpenID renvoie une réponse de configuration mal formée, un message d'erreur s'affiche. |
ID client |
OpenID doit être configuré avec un client pour permettre à Enterprise Architect d'utiliser ses services. Saisissez l' ID client ici. Les fournisseurs OpenID vous permettront d'ajouter un nouveau client. Il est recommandé de le nommer « Enterprise Architect » ou « WebEA » ou similaire pour permettre une identification facile. Après avoir créé un client, le fournisseur OpenID vous fournira l' ID client ou vous permettra d'en spécifier un. |
Secret client - (facultatif) |
Certains clients OpenID nécessitent un secret client pour sécuriser davantage les requêtes. Si le client nécessite un secret, saisissez-le ici. Il sera enregistré sous forme de valeur chiffrée. |
Portée |
Saisissez les portées OpenID requises pour renvoyer une réponse avec les informations requises. Une portée de « openid » est obligatoire selon la norme. D'autres portées courantes incluent « profil » ou « e-mail ». |
Prétention à correspondre à un utilisateur local |
Saisissez la revendication qui sera renvoyée lors de l'interrogation de l'OpenID « user_info » qui sera utilisé pour faire correspondre l'utilisateur OpenID à une connexion utilisateur de modèle existante. Les « revendications » sont des champs d'informations que le serveur OpenID déclare être vrais à propos de l'utilisateur authentifié. La plupart des serveurs OpenID permettent de personnaliser ce champ afin qu'il puisse être configuré pour renvoyer un champ de revendication spécifiquement destiné à être utilisé avec Enterprise Architect , si vous le souhaitez. Note : la seule revendication qui est garantie d'être unique pour un utilisateur est « sub ». Il s'agit du « sujet » de la revendication. Pour les nouveaux modèles, ce serait un bon paramètre par défaut dans le champ de revendication. Pour les modèles existants dans lesquels il existe déjà des utilisateurs qui doivent être associés à OpenID, il est recommandé d'utiliser un champ « nom d'utilisateur » quelconque. Dans cette situation, il serait judicieux d'utiliser le champ standard « prefer_username », « email » (si l'e-mail est utilisé, il est recommandé d'activer la validation par e-mail) ou un « nom d'utilisateur EA » personnalisé. Si vous utilisez une revendication autre que « sub », il appartient au responsable du serveur OpenID de s'assurer que la revendication est unique et sécurisée, et de garantir que la revendication ne peut pas être modifiée par l'utilisateur. |
Prétention à correspondre à des groupes locaux |
Cette option est utilisée si le paramètre supplémentaire « Créer ou modifier automatiquement les utilisateurs Windows ou OpenID » est activé. Elle n'est pas utilisée dans les autres cas. Consultez la rubrique d'aide Options d'authentification unique (SSO) . Saisissez la revendication qui sera renvoyée lors de l'interrogation de l'OpenID « id_token » ou « user_info » qui sera utilisé pour faire correspondre les groupes d'utilisateurs OpenID aux groupes de modèles existants. Les « revendications » sont des champs d'informations que le serveur OpenID déclare être vrais à propos de l'utilisateur authentifié. La plupart des serveurs OpenID permettent de personnaliser ce champ afin qu'il puisse être configuré pour renvoyer un champ de revendication spécifiquement destiné à être utilisé avec Enterprise Architect , si vous le souhaitez. La norme OpenID ne spécifie rien concernant les groupes d'utilisateurs. Certains serveurs OpenID ont cette fonctionnalité intégrée, mais elle doit quand même être activée pour que les groupes puissent être renvoyés dans « id_token » ou « user_info ». Les groupes renvoyés peuvent être soit un seul champ JSON, soit un tableau JSON contenant plusieurs noms de groupe. |
Connexion Tester
Une fois tous les champs complétés, cliquez sur le bouton Test . Une fenêtre apparaîtra avec un bouton « Se connecter à OpenID ». Cliquez sur le bouton pour ouvrir un navigateur Web sur la page d'authentification du serveur OpenID.
Fournissez des informations d'identification valides et autorisez Enterprise Architect à accéder au compte du serveur OpenID (cela peut ou non être nécessaire selon l'environnement OpenID).
En cas de succès, le navigateur devrait se fermer automatiquement et Enterprise Architect affichera une fenêtre de réussite avec les détails de l'utilisateur OpenID, y compris tous les groupes renvoyés et les groupes de modèles auxquels ils sont liés.
Note que les navigateurs Web mettent souvent en cache les sessions ou les informations d'identification des utilisateurs, de sorte qu'ils peuvent ne pas prompt de connexion lors des tentatives ultérieures.
Exemple d'une réponse « user_info » valide
Ceci est un exemple de réponse pour un serveur OpenID « KeyCloak ».
Revendication de correspondance avec l'utilisateur local : nom d'utilisateur
Revendication de correspondance avec des groupes locaux : groupes
{
"sub": "6da812c4-8f2c-400f-b602-13bab1d4605e",
"adresse": {},
"nom": "Exemple de personne",
« groupes » : [
« Utilisateurs spéciaux EA »,
« Administrateurs EA »
],
"given_name": "Exemple",
"family_name": "Personne",
"email": "[email protected]",
"nom d'utilisateur": "eperson"
}