Si l'utilisateur, correctement authentifie? avec CAS, ne posse?de pas de compte sur Sakai OAE, celui-ci n'est plus cre?e? automatiquement. Cette fonctionnalite? a e?te? retire?e 1 du bundle mais en couplant l'authentification avec LDAP, on peut la re?tablir avec quelques modifications (cf.Authentification CAS + LDAP).
Dans le fonctionnement et contrairement a? l'authentification LDAP, on va cre?er un nouveau bouton pour demander exclusivement l'authentification CAS. Le formulaire d'authentification de base (Nom d'utilisateur et Mot de passe) de Sakai OAE n'est donc pas affecte?.
...
Si vous utilisez la version 1.3.0 (mais corrige? dans les versions ulte?rieures), vous aurez besoin de corriger les de?pendances dans pom.xml car le bundle user a e?te? divise? en deux : api et impl
Chercher : org.sakaiproject.nakamura.user
Remplacer par : org.sakaiproject.nakamura.user.api
Compilez le bundle a? l'aide l’aide de :
| Bloc de code |
|---|
mvn clean install |
...
Il y a plusieurs fac?ons de configurer le bundle. Le plus simple consiste a? utiliser la console web de Sling, a? l'onglet Configuration (URL de type http://example.com/system/console/configMgr)
Repe?rez et cliquez sur l'entrel’entre?e Sakai Nakamura :: CAS Authentication Handler
Les trois champs suivants doivent e?tre configure?s.
? Login URL
? Logout URL
? Server URL
...
| Bloc de code |
|---|
/**
* CAS Settings
*/
config.Authentication.allowInternalAccountCreation = true;
config.Authentication.internal = true;
config.Authentication.internalAndExternal = true;
config.allowPasswordChange = true; // Should be disabled if CAS only
config.Authentication.external = [{
label: "Log in with your CAS Account",
url: "/system/sling/cas/login?resource=/me",
login_btn: "LOGIN_BTN"
}];
config.followLogoutRedirects = true;
|
Pour modifier l'intitulel’intitule? du bouton "”Internal Login"”, modifiez la traduction de devwidgets/topnavigation/bundles/default.properties (utilise?e seulement dans devwidgets/topnavigation/topnavigation.html pour l'affichagel’affichage), c'est-a?-dire la ligne
INTERNAL_LOGIN = Internal Login
...