Pages enfant
  • MFA Esup OTP

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

Cette page permet de mettre en place le projet MFA Esup OTP afin que les utilisateurs puissent avoir à disposition un système de MFA personnalisable en fonction de leur attente. Ce projet permet aussi de proposer une interface admin afin de gérer les personnalisations et les révocations d’accès.

Ce projet est composé de :


Une présentation de 5 min (Lightning Talk) dédiée à ce projet a été donnée dans le cadre d'Open Apereo 21 : elle est disponible ICI.

 

Voir Configuration Multifactor Authentication (MFA) pour le mettre en place.

Bloc de code
languagegroovy
title$home/cas/build.gradle
dependencies {  
  compile "org.apereo.cas:cas-server-webapp:${project.'cas.version'}@war"
  // A cause d'un bug, cette ligne doit être mis en tête des dépendances dans la liste
  compile 'com.github.EsupPortail:cas-server-support-esupotp:v0.1'
  ...
}

 

La config minimal:

Bloc de code
title$home/etc/cas/config/cas.properties
...  
# MFA - google authenticator
cas.authn.mfa.globalProviderId=mfa-esupotp
 
##
# Esup Otp Authentication
#
cas.mfa.esupotp.rank =0
cas.mfa.esupotp.urlApi=https://localhost/esupopt-api
cas.mfa.esupotp.usersSecret=changeit
cas.mfa.esupotp.apiPassword=changeit
 
cas.messageBundle.baseNames=classpath:custom_messages,classpath:messages,classpath:esupotp_message


Bloc de code
languagejs
title$home/cas/src/main/resources/services/mfaesupotp.json
{
  "@class" : "org.apereo.cas.services.RegexRegisteredService",
  "serviceId" : "^(https|imaps)://.*",
  "name" : "pam",
  "id" : 9999,
  "description" : "Mfa esup otp",
  "evaluationOrder" : 9999,
  "multifactorPolicy" : {
    "@class" : "org.apereo.cas.services.DefaultRegisteredServiceMultifactorPolicy",
    "multifactorAuthenticationProviders" : [ "java.util.LinkedHashSet", [ "mfa-esupotp" ] ]
  }
}

 

Attention: Il sera nécessaire de mettre en place aussi l'API et l'interface web d'administration. De plus une application téléphone en association avec ESUP-otp est disponible afin de recevoir les notifications.