Commit graph

129 commits

Author SHA1 Message Date
Valentin Samir
d8c8e55909 [lc_ldap] Ajout d'une méthode pour affectuer une ipv4 à une machine wifi si elle n'est pas pas déjà une. 2013-04-10 10:54:42 +02:00
Valentin Samir
f88b6ec688 [lc_ldap] Il arrive d'ajouter des attributs à un objets qui n'existe pas encore, par exemple pour les attributs optionnels,
il faut voir ce que ça implique vis ç vis du test d'unicité
2013-04-10 10:53:23 +02:00
Valentin Samir
ad448a12a1 [lc_ldap] check_ctxt a vraiement été supprimé 2013-04-10 10:52:45 +02:00
Pierre-Elliott Bécue
182642d30e [lc_ldap] Ici aussi ctxt_check a été droppé. 2013-04-08 13:05:05 +02:00
Valentin Samir
8fd228f6bd [lc_ldap] ctxt_check a été jeté 2013-04-08 12:34:11 +02:00
Pierre-Elliott Bécue
8ce84e7589 [lc_ldap] create et save vérifient que les attributs non optionnels sont fournis 2013-04-08 00:14:14 +02:00
Pierre-Elliott Bécue
180c17baed [global] On jette ctxt_check, et les ldifs qui traînent partout, qu'on remplace.
* Les ldifs sont remplacés par un pointeur vers l'objet propriétaire des attributs
 * Le test de cardinalité est fait lors du setitem dans AttrsDict
 * Le test d'unicité dans le setitem d'un CransLdapObject.
   Le setitem vérifie également qu'on affecte pas des attributs non désirés à un objet
2013-04-08 00:12:00 +02:00
Pierre-Elliott Bécue
93d5a11d66 [lc_ldap] On vérifie désormais que $dude peut modifier les attributs.
Les principales modifs touchent __setitem__, il faut voir s'il n'y a pas mieux
pour les histoires de cardinalité, quitte à réécrire des choses. Par ailleurs,
j'ai l'impression que le test sur les attributs nécessaires/optionnels
ne sert à rien, il faut voir comment on veut gérer ça.
2013-04-03 02:51:46 +02:00
Pierre-Elliott Bécue
b565cc51e5 [lc_ldap] On interdit la modification d'objets comme les machines
Crans aux câbleurs par exemple.
2013-04-02 03:22:45 +02:00
Pierre-Elliott Bécue
90a0b565cc [lc_ldap] Quitte à faire du lazy attrify, autant le faire partout,
pour avoir une certaine homogénéité dans le code.
2013-04-01 23:13:32 +02:00
Valentin Samir
b957a41cd7 On n'oublie de retourner aussi les valeurs déjà attrifiées 2013-04-01 23:07:23 +02:00
Valentin Samir
0c0338719c On attrify également lorsque la valeur est appelé avec .get(...) 2013-04-01 22:32:36 +02:00
Valentin Samir
db32b1d65a On ajoute de la paresse dans la transformation des attributs ldap en attributs python.
Cela permets d'économiser de la mémoire lorsque l'on manipule un nombre important d'objet
2013-04-01 22:17:27 +02:00
Vincent Le Gallic
102eb1bbd8 [modif non commitées] lc_ldap_tests est un vieux test qui ne sert plus à rien 2013-03-22 13:50:46 +01:00
Olivier Iffrig
ec40333e10 Formatage Sphinx d'une partie des docstrings
Modifs non commitées qui traînaient dans ma copie, histoire d'éviter les conflits...
2013-03-07 18:46:09 +01:00
Pierre-Elliott Bécue
b72d61108f [lc_ldap] On laisse lc_ldap_local dans l'état initial, vu que maintenant j'ai réglé les problèmes de temps d'accès aux imprimeurs club. 2013-03-05 17:10:09 +01:00
Pierre-Elliott Bécue
dfed1fceb2 [attributs] Les imprimeurs et les respos des clubs sont générés à la volée
Leur valeur sont un property au lieu d'une valeur fixe.
2013-03-05 16:55:21 +01:00
Pierre-Elliott Bécue
174bd87524 [lc_ldap] ob.__class__.__name__ ne retournait pas ce qu'on m'avait dit qu'il retournait... 2013-03-04 07:29:49 +01:00
Pierre-Elliott Bécue
5601c523c0 [attributs] Il en manquait pas mal 2013-03-04 06:26:56 +01:00
Pierre-Elliott Bécue
ae55085054 [lc_ldap] attributs.midType n'existe pas, et ne sert à rien pour l'instant 2013-03-04 05:56:48 +01:00
Pierre-Elliott Bécue
ecdfbd8962 [lc_ldap] On vire le from attributs import *, on corrige une faute de phrapp, et on vire les [xomu]fields, qu'on remplace par une variable attribs. 2013-03-04 05:51:43 +01:00
Pierre-Elliott Bécue
0d0d9d9676 [lc_ldap] Correction de bug dû aux rid spéciaux... 2013-03-04 05:16:40 +01:00
Daniel STAN
50f5aabb45 Merge branch 'master' of /usr/scripts/lc_ldap 2013-03-04 03:49:20 +01:00
Vincent Le Gallic
146285c73d Sur la base de test, on se binde en anonyme pour lookup le dn. 2013-03-04 03:47:48 +01:00
Daniel STAN
09fcf6b1e5 ajout de l'attribut compteWiki 2013-03-04 02:51:52 +01:00
Vincent Le Gallic
8572d8e2e7 Surcharges diverses de la classe lc_ldap plutôt que des fonctions. + Réparation de la connexion à la base de test. 2013-03-03 23:49:41 +01:00
Pierre-Elliott Bécue
b45c791c19 Merge branch 'master' of git.crans.org:/git/ldap 2013-02-14 16:38:37 +01:00
Pierre-Elliott Bécue
1f372df2eb cn=admin,ou=data,dc=crans,dc=org a le droit nounou. 2013-02-14 16:38:12 +01:00
Pierre-Elliott Bécue
4c0da75f9c [lc_ldap] On va rendre la connexion self plus flexible. 2013-02-08 16:39:37 +01:00
Pierre-Elliott Bécue
4d8cf77019 [lc_ldap] Ajout d'une méthode pour se connecter en readonly à soi-même 2013-02-08 16:15:30 +01:00
Pierre-Elliott Bécue
c0a877f25b may_be attend une liste en second argument 2013-01-28 23:16:51 +01:00
Pierre-Elliott Bécue
b578b4a6a7 Pylint says "no". 2013-01-28 22:53:38 +01:00
Pierre-Elliott Bécue
d12ad982cd * Quelques erreurs, maintenant ça marche 2013-01-28 22:47:19 +01:00
Pierre-Elliott Bécue
6b55396794 * Corrections pour que les rid non désirés ne soient pas pris. 2013-01-28 22:27:15 +01:00
Pierre-Elliott Bécue
18571ae112 * Correction de plusieurs bugs, on peut théoriquement créer des machines
Mais il faut éviter, parce qu'elles peuvent prendre des ip en .0 ou .255
    Il reste quelques détails genre 'historique' et 'ouverture de ports' à régler...
2013-01-28 03:16:35 +01:00
Pierre-Elliott Bécue
c2ea4e8b8b Revert "Le changement de type de binding (passage par cn=admin) fout la merde"
En fait, il semble que je me trompe, je ne sais juste pas me logguer...
This reverts commit 5f091807f0.
2013-01-28 02:17:48 +01:00
Pierre-Elliott Bécue
5f091807f0 Le changement de type de binding (passage par cn=admin) fout la merde
dans l'intranet2. On repasse en binding personnel le temps de trouver
une solution.
2013-01-28 02:02:18 +01:00
Pierre-Elliott Bécue
4066eafd14 Erreurs : il ne faut pas faire de test contextuel quand on crée un
objet depuis un ldif. Il faut s'assurer avant de créer l'objet
que le ldif est valide. C'est fait par setitem pour tout ce qui est
modification, et par _create_entity pour ce qui est création
2013-01-28 01:32:09 +01:00
Pierre-Elliott Bécue
42c48f77e8 Quelques améliorations, mise en place de fonctions pour tester parenté,
tester si c'est soi-même qu'on modifie, pour tester si on peut bien
altérer l'objet concerné.
Création des objets en deux temps (on crée l'objet Crans, puis
on l'enregistre dans ldap après test des droits.
Changement de méthode de binding : le binding nominatif va être bien
trop complexe à implémenter, on va donc faire autrement...
2013-01-28 00:45:01 +01:00
Pierre-Elliott Bécue
5a1a445411 MID/RID : prise en compte partielle ici.
Les scripts en prod ne devraient pas souffrir de la modif.
2013-01-23 05:57:23 +01:00
Pierre-Elliott Bécue
3e458b2dec Création de machine tenant compte de v6-only.
On hésite encore à faire enregistrer les ipv6 et préfixes v6 dans
la base ldap, ou les recalculer à chaque fois. Chaque méthode semble
avoir des avantages, inscrire les ipv6 dans la base obligerait à
faire une grosse modif en cas de changement de routeur/préfixe, ne
pas les mettre prive le binding de la possibilité d'ajouter des
ipv6 en plus à certaines machines.
2013-01-22 01:27:08 +01:00
Pierre-Elliott Bécue
c955638859 Mise en place des fonctions de calcul d'ip en fonction des mid, et macs, pour l'ipv6 2013-01-22 00:20:11 +01:00
Pierre-Elliott Bécue
c805146ab5 Mise en place du parsage des adresses mail, et on utilise aussi config pour la plage
des ip filaires. À venir, la rationalisation de mitdools pour avoir un équivalent
de ip_of_mid dans l'autre sens (genre, si une nounou veut fixer l'ip d'une machine)
2013-01-21 02:19:26 +01:00
Daniel STAN
be6b378bf8 Merge branch 'master' of ssh://git.crans.org/git/ldap 2013-01-15 18:54:38 +01:00
Daniel STAN
2073f5055b Merge branch 'master' of ssh://git.crans.org/git/ldap into cerveaulent 2013-01-15 18:52:41 +01:00
Valentin Samir
1403cfdb7b [lc_ldap,attributs] On ajoute sshFingerprint et gpgFingerprint, on rend possible l'ajout d'attribut obtionnel optionnel quand le cardinal précédent de l'attribut est 0 2013-01-15 18:51:46 +01:00
Daniel STAN
7a644cdfa9 Ajout d'infos sur les attributs
Pour l'intranet et un futur gest_crans
2013-01-15 16:31:02 +01:00
Nicolas Dandrimont
12b8166e82 Copyright notices 2013-01-09 21:45:56 +01:00
Nicolas Dandrimont
2d38d87bb5 On prépare l'arrivée du ldif dans search 2013-01-09 21:41:18 +01:00
Vincent Le Gallic
e26db64944 On laisse la possiblité de fournir le login quand on rajoute une ligne d'historique.
C'est utilisé par l'intranet2 actuellement parce que $USER et $SUDO_USER ne contiennent rien,
 et de toutes façons ce serait sans rapport avec l'user logué.

Par contre j'aime pas le fait qu'on doive fournir ce login dès qu'on veut faire un truc.
(là il faut le fournir à update_solde) mais je vois pas trop comment faire autrement.
2012-12-01 05:24:42 +01:00