Projet

Général

Profil

Paquet eole-ad

Idée

Fournir un paquet (optionnel) pour Scribe-2.3 permettant de faciliter la mise en production de la fonctionnalité "Eole-AD".
Ce paquet devra utiliser et mettre en œuvre les méthodes et principes d'EOLE.
La compatibilité avec le mode conteneur ne sera pas assurée dans un premier temps

Dépendances

Le paquet devra tirer les dépendances nécessaires à la mise en place de la solution, à savoir :
  • krb5-config
  • krb5-user
  • lsc (cf. #5613)

Variables Creole

Le paquet devra fournir un dictionnaire Creole définissant un certain nombre de variables liées à l'activation et à la configuration de la fonctionnalité.

Variables possibles :
  • activer_ad (oui/non) : Activation de la fonctionnalité. Cette variable sera probablement également fournie par "fichier-primaire" ou "conf-scribe" afin de gérer des problématiques Creole en interne (hidden_if_in, filelist, conditions dans les scripts python)
  • ad_domain : Nom du domaine AD. FIXME : calcul : Devrait être forcé à "%%smb_workgroup".lan ?
  • ad_server : Nom du serveur AD.
  • ad_address : Adresse IP du serveur AD. Semble facultative dans le démonstrateur mais elle pourrait s'avérer utile (ex : forcer l'adresse %%adresse_ip_dns en auto ?)
  • ad_user (defaut="Administrateur") : Compte administrateur du domaine AD.
  • ad_password : Mot de passe de l'administrateur AD. FIXME : Ce n'est pas terrible de stocker cette information dans le dico Creole. On pourrait faire autrement (question + stockage dans fichier local) mais cela nécessite un petit développement supplémentaire.
  • ad_ldap_sync (defaut="non") : Synchronisation des changements en temps réel. FIXME : forcé à non dans un premier temps ?
  • ad_sync_period (defaut=?) : Périodicité de la synchronisation de l'annuaire. FIXME : variable à proposer dans un deuxième temps ?

Fichiers templates Creole

Le dictionnaire Creole devra déclarer un certain nombre de templates (désactivables via une "filelist").
La plupart des templates correspondent aux fichiers de configuration proposés :

Fichiers possibles :
  • /etc/krb5.conf
  • /etc/samba/smb.conf (FIXME : cohabitation/remplacement avec celui proposé par "eole-fichier")
  • /opt/lsc/etc/lsc.xml
  • un fichier cron pour la synchro

Scripts et configuration

  • déclaration de lsc.xml dans la liste des fichiers nécessitant une mise à jour du mot de passe ldap
  • script pre/post pour tester mettre en place la configuration (kinit, net ads join, ...)

Autres paquets impactés

  • conf-scribe/eole-annuaire : prise en charge du format de lsc.xml par ldap_pwd.py (conf-scribe:749c1201)

Gestion des mots de passe

Initialisation

La méthode vers la laquelle nous nous orientons ne permettra pas aux utilisateurs déjà créés d'avoir leur/un mot de passe dans AD.
=> les mots de passes des utilisateurs existants devront être mis à jour pour que ceux-ci puissent se connecter
=> il sera judicieux de configurer "EOLE AD" avant de créer des comptes.

Nouvel utilisateur

Il est probable qu'il faille forcer la synchronisation LDAP -> AD entre la création de l'utilisateur et l'initialisation de son mot de passe (non vérifié)