Project

General

Profile

Wiki » History » Version 1

Bruno Boiget, 10/10/2013 03:04 PM

1 1 Bruno Boiget
h1. Eolelask-aaa
2 1 Bruno Boiget
3 1 Bruno Boiget
h2. Principe général:
4 1 Bruno Boiget
5 1 Bruno Boiget
Eoleflask-aaa comprend une 
6 1 Bruno Boiget
7 1 Bruno Boiget
> Une librairie python (eoleauthlib)
8 1 Bruno Boiget
> Une application 'racine' (eoleauth) à intégrer dans eoleflask
9 1 Bruno Boiget
10 1 Bruno Boiget
l'application est montée comme première application par eoleflask, et comporte 3 urls:
11 1 Bruno Boiget
12 1 Bruno Boiget
/login : page utilisée pour se connecter et créer une session globale (voir plus loin)
13 1 Bruno Boiget
/logout : page de déconnexion pour la session globale
14 1 Bruno Boiget
/eoleauth : affiche le nom d'utilisateur courant
15 1 Bruno Boiget
16 1 Bruno Boiget
La librairie offre différents plugins pour l'authentification (actuellement PAM-login et CAS) et plusieurs modes de gestion des sessions (fichiers côté serveur ou Redis en mode socket)
17 1 Bruno Boiget
18 1 Bruno Boiget
Le principe de fonctionnement est d'importer une fonction d'initialisation et un décorateur (pour les fonctions des vues) dans les applications.
19 1 Bruno Boiget
* Lors de l'accès à une vue protégée, le décorateur va regarder si la session est ouverte (nom d'utilisateur présent).
20 1 Bruno Boiget
* Si c'est le cas, le déroulement se poursuit normalement.
21 1 Bruno Boiget
* Si il n'y a pas de session:
22 1 Bruno Boiget
** Le décorateur va rediriger sur la page de login (/login en mode global, ou /application/login en mode local) et créer la session.
23 1 Bruno Boiget
** Après authentification, l'utilisateur est ensuite redirigé sur la page d'origine où le décorateur va à nouveau vérifier la validité de la session
24 1 Bruno Boiget
25 1 Bruno Boiget
26 1 Bruno Boiget
Rqe: pour l'instant, le plugin CAS ne gère pas correctement la déconnexion centralisée. Si le serveur CAS envoie une requête de déconnexion, la session ne sera pas fermée.