Dans ce guide, nous montrerons à quel point il est facile d'ajouter une authentification à deux facteurs avec un jeton OTP à OTRS. Ceci est fait pour les agents de support afin de protéger les cas de support et les données des clients contre les attaquants et les abus. Néanmoins, cela peut être fait pour les clients de la même manière.
L'authentification ne sera plus vérifiée par OTRS, mais par privacyIDEA. Les utilisateurs sont toujours tirés de la base de données OTRS. De plus, le même mot de passe statique est utilisé que celui utilisé auparavant.
Prérequis
Nous supposons que vous avez une installation en cours d'exécution d'OTRS et de privacyIDEA. Vous avez peut-être suivi le tutoriel précédent pour l'installation de privacyIDEA.
Les utilisateurs dans OTRS
Pour le moment, nous avons quelques agents dans OTRS. Leurs mots de passe se trouvent être "test". Ils peuvent se connecter uniquement avec ce mot de passe.
Définir les utilisateurs dans privacyIDEA
privacyIDEA utilise toujours les magasins d'utilisateurs existants. Il peut s'agir de fichiers plats, d'annuaires LDAP, de services SCIM ou de bases de données SQL. Dans ce scénario, nous dirons à privacyIDEA de rechercher les utilisateurs dans la base de données OTRS.
Allez dans configuration de privacyIDEA -> UserIdResolvers . Cliquez sur le bouton "Nouveau" pour créer un nouveau UserIdResolver. Choisissez "SQL".
Ici, vous pouvez entrer la définition de connexion à la base de données OTRS. Pour simplifier la configuration, il existe un bouton "OTRS", qui définira les valeurs OTRS par défaut dans la "table de base de données" et le "mappage d'attributs". Dans la plupart des cas, vous n'avez pas à le modifier.
Si l'OTRS s'exécute sur la même machine que le serveur privacyIDEA, cela pourrait ressembler à ceci :
Plusieurs résolveurs peuvent être combinés dans un royaume. De même, ce nouveau résolveur unique doit être placé dans un domaine. Si vous enregistrez et fermez la boîte de dialogue du résolveur, privacyIDEA vous amènera automatiquement à la boîte de dialogue du domaine.
Créez un nouveau domaine "otrs" et placez le résolveur que vous venez de créer dans ce domaine. Le résolveur sera surligné en bleu.
Enregistrez le royaume et allez maintenant dans l'onglet userview. Vous verrez maintenant tous les agents de la base de données OTRS.
Inscrire le jeton à l'utilisateur et le tester
Vous pouvez maintenant inscrire ou attribuer le jeton de votre choix aux utilisateurs OTRS. Dans cet exemple, j'inscris un Google Authenticator. Sélectionnez l'utilisateur "jbond" et cliquez sur le bouton s'inscrire. Ensuite, le token à inscrire sera directement attribué à l'utilisateur "jbond".
Choisissez "HMAC event based" et sélectionnez "[x] generade HMAC key". Ensuite, un QR-Code sera généré, qui peut être scanné avec l'application Google Authenticator.
Après avoir inscrit le jeton, vous pouvez définir un code PIN OTP pour ce jeton, je choisis "1234".
Dans la vue des jetons, vous pouvez voir le jeton, maintenant.
Tester l'authentification
Vous pouvez pointer votre navigateur vers http://your.pricacyidea.server/auth/index et essayer de vous authentifier avec l'utilisateur ("jbond") et le mot de passe "1234142371", où "1234" est le code PIN OTP que j'ai défini lors de la inscription et "142371" la valeur OTP affichée par Google Authenticator.
Vous pouvez afficher l'authentification réussie dans le journal d'audit.
Définir la politique d'authentification
Cela ne fonctionne que si vous utilisez le schéma de hachage de mot de passe par défaut dans OTRS, qui au moment de la rédaction semble être le sha256 non salé. Le mot de passe est stocké sous la forme d'une chaîne hexadécimale de 64 caractères
Comme indiqué au début, nous voulons que les utilisateurs utilisent leur mot de passe OTRS et non ce code PIN supplémentaire "1234". L'utilisateur habituel ne peut pas se souvenir de beaucoup de mots de passe difficiles.
Vous pouvez configurer une politique d'authentification pour y parvenir. Allez dans l'onglet "Politique" et créez cette politique :
N'oubliez pas de marquer la politique comme active.
Encore une fois, vous pouvez vérifier l'authentification mais cette fois l'utilisateur "jbond" doit entrer "test281707". "test" étant son mot de passe OTRS d'origine.
Configurer OTRS
privacyIDEA est livré avec un module d'authentification OTRS qui peut être trouvé ici.
Copiez ceci dans votre répertoire OTRS Kernel/System/Auth.
Dans votre Kernel/Config.pm, configurez les éléments suivants :
$Self->{'AuthModule'} ='Kernel::System::Auth::privacyIDEA';
$Self->{'AuthModule::privacyIDEA::URL'} ="http://localhost :5001/validate/simplecheck" ;
Adaptez l'URL en fonction de votre installation privacyIDEA.
Désormais, chaque agent qui se connecte doit se connecter avec son mot de passe OTRS concaténé avec la valeur OTP de son jeton.
Remarque : de plus, [email protected] ne pourra plus se connecter sans jeton.
Bonne authentification et support sécurisé !
Des questions ? Réponses !
Pour toute demande rejoignez le groupe google, visitez github ou la page du projet.