Modifications entre les versions 49 et 50
Version 49 à la date du 2006-12-15 15:32:07
Taille: 4042
Éditeur: JérômeSantini
Commentaire: lien vers la page greffon postfix
Version 50 à la date du 2008-02-21 22:09:51
Taille: 4051
Éditeur: localhost
Commentaire: converted to 1.6 markup
Texte supprimé. Texte ajouté.
Ligne 7: Ligne 7:
[[TableOfContents]] <<TableOfContents>>
Ligne 18: Ligne 18:
Lire aussi la sous-page sur l'[:/Besoins: expression des besoins] qui présente quelques autres aspects. Ajoutez-y vos demandes. Lire aussi la sous-page sur l'[[/Besoins| expression des besoins]] qui présente quelques autres aspects. Ajoutez-y vos demandes.
Ligne 23: Ligne 23:
 * Les discussions ont lieu sur la sous-page ["/Discussion"]  * Les discussions ont lieu sur la sous-page [[/Discussion]]
Ligne 38: Ligne 38:
  * vers une base de données MySQL d'authentification (["/Greffons/NssMySQL"])
  * vers une base MySQL pour la messagerie (["/Greffons/Postfix"]-MySQL)
  * vers une base de données MySQL d'authentification ([[/Greffons/NssMySQL]])
  * vers une base MySQL pour la messagerie ([[/Greffons/Postfix]]-MySQL)
Ligne 44: Ligne 44:
 Parfois avec un schéma on voit mieux:: attachment:gestion-utilisateurs-campus.png  Parfois avec un schéma on voit mieux:: {{attachment:gestion-utilisateurs-campus.png}}
Ligne 46: Ligne 46:
(source de ce schéma : attachment:gestion-utilisateurs-campus.dia) (source de ce schéma : [[attachment:gestion-utilisateurs-campus.dia]])
Ligne 50: Ligne 50:
 * La documentation détaillée du code est ici : ["/Code"]
 * La documentation d'installation et d'intégration... reste à écrire : ["/MiseEnPlace"]
 * La documentation détaillée du code est ici : [[/Code]]
 * La documentation d'installation et d'intégration... reste à écrire : [[/MiseEnPlace]]
Ligne 55: Ligne 55:
Voir la sous-page ["/Calendrier"] Voir la sous-page [[/Calendrier]]

Ce projet a pour but d'écrire un système gestion des utilisateurs d'une implantations AUF (CNF, CAI, bureau, antenne... ou toute autre implantation où il y a des utilisateurs).

Objectifs du projet

  • Objectifs du projet : unifier nos systèmes d'authentification et nos outils de suivi des utilisateurs des implantations AUF ;

  • Résultats attendus :

    • faciliter le travail des gestionnaires en automatisant le plus grand nombre de tâches répétitives, longues ou complexes, progressivement (via l'ajout de nouveaux modules) ;

    • simplifier le travail de tous en factorisant les soucis : les problèmes ne seront plus locaux, ils seront plus simples à résoudre si tout le monde fonctionne un peu de la même façon au départ ;
  • Contraintes : l'existant est très varié (NIS, passwd, LDAP, Samba, ...) et il faut donc prévoir toutes sortes de particularités locales (services purement locaux, campus intégré, etc.), d'où l'importance de la modularité.

Lire aussi la sous-page sur l'expression des besoins qui présente quelques autres aspects. Ajoutez-y vos demandes.

Le quotidien du projet

  • Le développement du code de l'application se passe sur un Trac/Subversion ici : http://trac.sn.auf.org/guia (serveur hébergé à Dakar avec parfois quelques soucis de routage ou d'électricité en ce moment).

  • Les discussions ont lieu sur la sous-page /Discussion

Vue générale

Le système se décompose en trois parties :

Le noyau
il s'agit d'une base de donnée et un ensemble de fonctions permettant d'y accéder.
  • la base de données décrit l'ensemble des utilisateurs et des abonnements associés. Elle a un schéma de base simple, correspondant au noyau dur du système. Elle autorise une intégration simple de modules d'extension (greffons) via des champs extra sur ses objets. Voir /SchemaBase.

  • l'accès à la base est écrit en Python/Django. Chaque objet de la base est donc visible sous la forme d'un objet Python disposant de méthodes permettant de le gérer. L'appel à ces méthodes effectue les actions nécessaires sur la base de données. Là encore, chaque méthode peut être surchargée par des greffons.
Des interfaces
  • dans un premier temps une interface Web, rapide et ergonomique, permettant d'effectuer des actions sur la base. Django fourni une interface d'administration calculée automatiquement à partir de la définition des objets. Il faut la faire un peu évoluer pour la rendre plus ergonomique.
  • puisqu'il est écrit en Django, le noyau est accessible directement en Python. D'autres interfaces sont donc programmables, telle qu'une interface en ligne de commande.
Des greffons (modules d'extension, ''plug-ins'')
ils sont chargés, à partir d'informations fournies par le noyau, de gérer les aspects «métier», par exemple :
  • vers une base de données MySQL d'authentification (/Greffons/NssMySQL)

  • vers une base MySQL pour la messagerie (/Greffons/Postfix-MySQL)

  • pour la gestion de fonctionnalités additionnelles : saisie, suivi et statistiques sur les commandes de documents primaires ; gestion de la caisse, via une gestion de reçus et un état de caisse mensuel
  • attachement d'informations diverses et variées autour des utilisateurs : leurs commandes, leurs emprunts, leurs dates d'anniversaire, leurs passions, ...
Parfois avec un schéma on voit mieux

gestion-utilisateurs-campus.png

(source de ce schéma : gestion-utilisateurs-campus.dia)

Documentations

  • La documentation détaillée du code est ici : /Code

  • La documentation d'installation et d'intégration... reste à écrire : /MiseEnPlace

Calendrier

Voir la sous-page /Calendrier

Projet/GUIA (dernière édition le 2008-02-21 22:09:51 par localhost)