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.

...

  • d'ajouter un cookie lors de l'authentification
  • de conserver l'association login - cookie dans un fichier

 

Les modifications ci-dessous sont proposées pour un serveur CAS v 3.4.7

Avertissement

Il est possible aussi de modifier son serveur CAS afin de générer un logs applicatif (log contenant la personne et l'accès à une application) : SSO CAS - Logs applicatif

 

Ajout de la classe TraceMeAction.java

Le fichier TraceMeAction.java doit être ajouté dans le dossier custom/source/org/esupportail/cas/web/flow

Modification de log4j.xml

Il faut modifier le fichier  du dossier custom/webpages/WEB-INF/classes pour ajouter les 2 éléments suivants

Bloc de code
languagexml
titlecustom/webpages/WEB-INF/classes/log4j.xml
collapsetrue
<!-- new appender -->
<appender name="trace" class="org.apache.log4j.FileAppender">
	<param name="File" value="@log.dir@/trace.log"/>
	<layout class="org.apache.log4j.PatternLayout">
		<param name="ConversionPattern" value="%m%n"/>
	</layout>
</appender>



<!-- new logger -->
<logger name="org.esupportail.cas.web.flow.TraceMeAction" additivity="false">
	<level value="INFO,trace" />
	<appender-ref ref="trace" />
</logger>

Modification de login-webflow.xml

Il faut modifier le fichier  du dossier custom/webpages/WEB-INF/ pour ajouter les 2 éléments suivants

Bloc de code
languagexml
titlecustom/webpages/WEB-INF/classes/login-webflow.xml
collapsetrue
@@ -60,7 +60,12 @@
     
     <action-state id="sendTicketGrantingTicket">
           <evaluate expression="sendTicketGrantingTicketAction"/>
-        <transition to="serviceCheck"/>
+        <transition on="success" to="putTraceMe"/>
+    </action-state>
+
+    <action-state id="putTraceMe">
+          <evaluate expression="putTraceMeAction" />
+        <transition on="success" to="serviceCheck" />
     </action-state>
 
     <decision-state id="serviceCheck">

Ajout et adaptation du fichier trace-me.xml

Le fichier trace-me.xml doit être ajouté dans le dossier custom/webpages/WEB-INF/spring-configuration/

N'oubliez pas de le modifier pour intégrer votre domaine et éventuellement le nom de cookie que vous souhaitez utiliser.

Redéploiement de CAS

Pour mettre en place Agimus-NG, il est nécessaire de mettre en place la dernière version de la branche 3.4 de cas-toolbox-new (https://github.com/EsupPortail/cas-toolbox-new/tree/v3.4.x).
A l'heure d'écriture de cette page, la dernière version date du et l'identifiant du dernier commit est 7dd1e92ecc66b240f3812f6f2c07e8f3d9ce314d.

Le pull request concernant cette modification est décrit ici : https://github.com/EsupPortail/cas-toolbox-new/pull/5

Récupération basique de CAS depuis le dépôt git

 

Bloc de code
root@cas # git clone https://github.com/EsupPortail/cas-toolbox-new.git
Clonage dans 'cas-toolbox-new'...
remote: Counting objects: 1049, done.
remote: Total 1049 (delta 0), reused 0 (delta 0), pack-reused 1049
Réception d'objets: 100% (1049/1049), 376.66 KiB | 0 bytes/s, fait.
Résolution des deltas: 100% (390/390), fait.
Vérification de la connectivité... fait.
root@cas # cd cas-toolbox-new/
root@cas # git checkout v3.4.x
La branche v3.4.x est paramétrée pour suivre la branche distante v3.4.x depuis origin.
Basculement sur la nouvelle branche 'v3.4.x'
root@cas # git status
Sur la branche v3.4.x
Votre branche est à jour avec 'origin/v3.4.x'.
rien à valider, la copie de travail est propre
root@cas # ls
cas-toolbox-core  cas-toolbox-custom  config.sample.properties  etc  LICENSE  pom.xml
root@cas # 

Paramétrage de la partie TraceMe

Le paramétrage s'effectue dans le fichier config.properties à la racine.

Pour activer les "traceMe" :
trace.enabled=true

Pour configurer les "traceMe" :
trace.cookieMaxAge=432000
trace.cookieName=CASTRACEME
trace.cookiePath=/
trace.cookieDomain=.univ.fr

Le fichier contenant l'association cookie <-> id de l'utilisateur est trace.log. Il se trouve dans le répertoire de log défini le dossier log.dir que vous aurez défini dans config.properties. 

 Redéployer CAS. Les prochaines connexions ajouteront le cookie Agimus-NG au navigateur client pour votre domaine et le fichier trace.log contiendra les associations login - cookie.