Arborescence des pages

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.

Sommaire

Préambule

Il est possible de modifier le serveur CAS afin de générer un fichier de logs supplémentaire qui sera alimenté a chaque authentification pour un service. Le fichier généré au final aura la forme suivante :

Info
[DATE][IP:IP-CLIENT][ID:IDENTIFIANT-UTILISATEUR][TICKET:VALUER-TICKET-SERVICE-CAS][SERVICE:URL-SERVICE-ACCEDE][USER-AGENT:NAVIGATEUR-CLIENT]
[Wed Mar 18 11:45:31 CET 2015] [IP:XXX.XXX.XXX.X] [ID:dupont53][TICKET:ST-1-E5rdtcdOHsDneNgYl4ES-cas][SERVICE:http://ent.univ.fr/p/cms] [USER-AGENT:Mozilla/5.0 (Windows NT6.1; WOW64; rv:36.0) Gecko/20100101 Firefox/36.0]

Installation dans le serveur CAS

Mon serveur CAS est il compatible ?

Tout d'abord la dernière version (V4) du serveur CAS (cas-toolbox) génère ce fichier nativement : https://github.com/EsupPortail/cas-toolbox-new

...

Votre serveur CAS est compatible pour générer ce fichier si vous trouver un fichier nommé ServiceAuditTrailManager.java quelques part dans les sources.

Rendre mon serveur compatible

La modification comporte 3 étapes :

  • Ajout d'un FileAppender et d'un logger dans la gestion de log log4j
  • Ajout d'une classe Java qui implémente AuditTrailManager (classe ServiceAuditTrailManager)
  • Modification de auditTrailContext.xml pour brancher la classe java ServiceAuditTrailManager

CAS Version 4 ou 3.4.X (GIT)

Vous pouvez utiliser ce pull request : https://github.com/EsupPortail/cas-toolbox-new/pull/3

et donc les fichier lister dans le PR : https://github.com/EsupPortail/cas-toolbox-new/pull/3/files

CAS en version 3.4.X (GIT)

Vous pouvez utiliser ce pull request : https://github.com/EsupPortail/cas-toolbox-new/pull/3

...

Bloc de code
....

<bean class="org.esupportail.cas.audit.support.ServiceAuditTrailManager"/>

....
 

 

CAS en version 4.2.2

  • Dans le dossier cas-overlay-template récupérer le fichier auditTrailContext.xml et placez le dans src/main/webapp/WEB-INF/spring-configuration/

 

Bloc de code
# wget -O src/main/webapp/WEB-INF/spring-configuration/auditTrailContext.xml https://raw.githubusercontent.com/apereo/cas/v4.2.2/cas-server-webapp/src/main/webapp/WEB-INF/spring-configuration/auditTrailContext.xml

 


  • Dans le bean avec l'id auditTrailManagementAspect remplacez le constructeur

 

Bloc de code
c:auditTrailManagers-ref="auditTrailManager"

 

par

 

Bloc de code
c:auditTrailManagers-ref="auditTrailManagers"

 

 

en dessous de ce bean rajoutez ceci

 

Bloc de code
titleauditTrailContext.xml
    <bean id="serviceAuditTrailManager" class="org.esupportail.cas.audit.support.ServiceAuditTrailManager"/>
 
    <util:list id="auditTrailManagers" value-type="java.lang.String">
        <ref bean="serviceAuditTrailManager"/>
        <ref bean="auditTrailManager"/>
    </util:list>


  • Dans le dossier cas-overlay-template créez le dossier suivant:

 

Bloc de code
# mkdir src/main/java/org/esupportail/cas/audit/support/

 

Insérez le fichier ServiceAuditTrailManager.java dans ce dossier

  • Éditez le fichier /etc/cas/log4j2.xml

...

Bloc de code
titlelog4j2.xml
        <AsyncLogger name="org.esupportail.cas.audit.support.ServiceAuditTrailManager" level="info" additivity="false" includeLocation="true">
           <AppenderRef ref="console"/>
           <AppenderRef ref="serviceStatsAppender" />
        </AsyncLogger>

 

Injection dans Agimus-NG (Logstash)

Vous pouvez utiliser le fichier logstash-casrequest.conf :  https://github.com/EsupPortail/agimus-ng/blob/master/logstash/logstash-casrequest.conf

Pour lire et injecter dans Agmius-NG le fichier résultant du CAS

Tableau de bord CAS

A venir :

  • service
  • agent
  • 'eduPersonPrimaryAffiliation', 'supannEntiteAffectationPrincipale', 'supannEtuCursusAnnee', 'supannEtuSecteurDisciplinaire'