
Authentification SAML
Authentification SAML
Qu'est-ce que l'authentification SAML ?
Le langage SAML (Security Assertion Markup Language) est une méthode standard pour indiquer aux applications et services externes qu'un utilisateur est la même personne qu'il prétend être. Avec SAML, l'authentification unique (SSO) est possible car elle fournit un moyen d'authentifier l'utilisateur une fois et communique cette authentification à plusieurs autres applications. La dernière version de SAML est SAML 2.0.
Pour comprendre avec un exemple simple. Vous venez de rejoindre une nouvelle société, ABC. L'entreprise vous a donné une adresse e-mail professionnelle et un accès à un tableau de bord. Lorsque vous vous connectez à ce tableau de bord avec vos informations d'identification, vous voyez toutes les icônes des services externes que l'entreprise utilise dans le tableau de bord : Google Apps, AWS, Salesforce, Azure Office 365, Jira, etc.
Il vous suffit de cliquer sur l'icône AWS et vous êtes connecté à AWS sans jamais saisir d'informations d'identification. Waouh magique !!
C'est là que le SAML entre en action, et les utilisateurs n'ont pas à s'authentifier à chaque fois.
SAML est une norme ouverte basée sur XML pour le transfert de données d'identité entre un fournisseur d'identité (IdP) et un fournisseur de services (SP).
Fournisseur d'identité — Fournit l' authentification et transmet l'identité et le niveau d'autorisation de l'utilisateur au fournisseur de services.
Fournisseur de services — Fait confiance au fournisseur d'identité et autorise l'utilisateur à accéder à la ressource demandée.
Dans l'exemple ci-dessus, le fournisseur d'identité serait l'IdP que la société ABC utilise, c'est-à-dire WebADM de RCDevs. Le fournisseur de services serait AWS.
Flux de travail d'authentification SAML
Plongeons dans la technicité du fonctionnement de SAML. Pour l'authentification utilisant le protocole SAML, généralement, l'utilisateur suit la procédure ci-dessous :
1) L'utilisateur, via un navigateur Web, demande l'accès à l'application/SP sécurisé.
2) Le fournisseur de services redirige vers un fournisseur d'identité spécifique (enregistré auprès du fournisseur de services) pour l'authentification avec la demande d'authentification SAML.
3) Le navigateur fait des demandes d'authentification au fournisseur d'identité enregistré. L'IdP valide la demande SAML et fournit à l'utilisateur/navigateur un formulaire de connexion.
4) Une fois la vérification des informations d'identification/ou l'authentification réussie, le fournisseur d'identité générera une assertion XML vérifiant l'identité de l'utilisateur et la relaiera au navigateur.
5) Le navigateur transmet l'insertion XML au fournisseur de services, en configurant des cookies dans le navigateur.
6) L'utilisateur/navigateur obtient l'accès puisqu'il est maintenant authentifié.
5 avantages de l'authentification unique (SSO) SAML dans l'entreprise
1) Plateforme impartiale
Le schéma standard SAML est développé pour interagir avec n'importe quel système indépendant de l'exécution. Il fait abstraction du cadre de sécurité de l'architecture de la plate-forme et de toute approche de fournisseur spécifique. C'est donc une approche plus ouverte de l'architecture et de la fédération des identités.
2) Meilleure sécurité
SAML fournit un point d'authentification unique qui a lieu chez le fournisseur d'identité. Il garantit que les informations d'identification sont uniquement envoyées à l'IdP directement depuis le fournisseur de services.
3) Expérience utilisateur améliorée
Les individus doivent simplement se connecter une fois pour avoir accès à plusieurs fournisseurs de services. Cela permet un processus d'authentification beaucoup plus rapide et beaucoup moins d'attentes de l'utilisateur pour se souvenir de plusieurs identifiants de connexion pour chaque application. Dans le scénario ci-dessus, cet utilisateur aurait pu cliquer sur l'une des différentes icônes de son tableau de bord et être immédiatement connecté sans saisir d'informations d'identification supplémentaires.
4) Coûts réduits pour les fournisseurs de services
Avec SAML, vous n'avez pas à gérer les informations de compte sur plusieurs services. Le fournisseur d'identité supporte cette charge.
5) Libre couplage des répertoires
SAML n'a pas besoin que les données utilisateur soient conservées et synchronisées entre les répertoires.
Authentification SAML avec la solution de sécurité RCDevs
Lorsqu'il s'agit d'implémenter SAML, le WebADM de RCDevs est le Fournisseur d'identité (IDP), qui fonctionne avec différents fournisseurs de services (SP) dans OpenOTP pour les processus d'authentification.
Télécharger et configurez WebADM gratuitement.
L'installation de SAML IdP est simple et consiste uniquement à exécuter l'auto-installateur et à configurer l'application dans WebADM.
Tout d'abord, les clients SAML (fournisseurs de services) doivent connaître les points de terminaison SAML IdP. La plupart des clients accepteront la configuration automatique avec une URL de métadonnées basée sur XML.
Vous trouverez des configurations client telles que :
- L'identificateur d'entité SAML de l'IdP.
- Le certificat du serveur SAML.
- L'URL SingleSignOnService.
- L'URL du service de déconnexion unique.
L'image suivante montre une liste des fournisseurs de services pris en charge par RCDevs mais ce n'est pas une liste exhaustive, toutes les applications prenant en charge l'authentification SAML 2 sont prises en charge par RCDevs IDP. Vous avez également la possibilité de configurer un fournisseur de services personnalisé dans le tableau de bord.
Par exemple, configurons WebADM pour gérer les authentifications avec Amazon Web Service (AWS), mais vous pouvez suivre avec n'importe quel SP de votre choix.
Authentification SAML sur AWS
Dans la console AWS, nous ajoutons WebADM c'est-à-dire l'IdP.
Ensuite, nous créons des rôles et sélectionnons notre fournisseur SAML
Nous sélectionnons une politique d'autorisation et ajoutons des noms pour créer des rôles.
Une fois cela fait, nous devons activer l'authentification initiée par l'IdP pour AWS.
Configurer WebADM IDP pour AWS
Nous ouvrons la configuration dans l'interface graphique WebADM et activons l'application SSO et AmazonWS.
Nous sélectionnons l'utilisateur test et cliquons sur les paramètres WebADM. Nous sélectionnons OpenID, ajoutons des noms de rôle AWS et appliquons. Nous pouvons également ajouter le rôle AWS à un ou plusieurs groupes LDAP afin de permettre aux utilisateurs d'appartenir à des groupes spécifiques d'accéder au rôle AWS.
Essai
Pour tester, ouvrez l'application Web et connectez-vous avec l'utilisateur :
Sélectionnez Application SSO, cliquez sur Amazon AWS.
Ça y est, nous sommes maintenant connectés à AWS.
Par rapport aux autres implémentations SAML, la solution SSO de RCDevs est très simple à mettre en œuvre : à condition d'avoir déjà un serveur WebADM fonctionnel avec OpenOTP et/ou TiQR, la configuration consiste simplement à ajouter la WebApp OpenID/SAML dans WebADM.
Vérifiez les RCDev's Documentation pour plus de détails.
Plus de configuration SAML de RCDevs :
Authentification SAML initiée par le SP
Authentification SAML pour Apache Guacamole
Authentification SAML pour GitLab
Authentification SAML pour MS Office 365/Azure