Commit graph

230 commits

Author SHA1 Message Date
Pierre-Elliott Bécue
fa7387420a On passe le TLD pour la regexp mail à 20
* .cancerresearch fait déjà 14
2015-09-10 14:52:57 +02:00
Pierre-Elliott Bécue
d20fa54614 check_uniqueness sur les attributs de type mail corrigée 2015-09-10 12:54:17 +02:00
Pierre-Elliott Bécue
8f871ac166 Passe to_ldif en encodage de la base LDAP. 2015-08-23 14:28:39 +02:00
Daniel STAN
cadddb45df Revert "pas de mention explicite de annuaires_pg_test"
This reverts commit 2f469b4916.
2015-06-23 17:18:55 +02:00
Daniel STAN
499ed61072 attributs: retrait du shabang 2015-06-10 11:40:37 +02:00
Daniel STAN
37f0de3cad attributs: autorise les chiffres dans hash
Comme par exemple "SMD5".
2015-06-10 11:38:58 +02:00
Pierre-Elliott Bécue
06f3687dd4 {} ne s'update pas 2015-06-06 17:49:37 +02:00
Pierre-Elliott Bécue
583bd3d73c Comme passlib est un peu stupide, le binding va lui mâcher le boulot 2015-06-06 17:46:34 +02:00
Pierre-Elliott Bécue
3c904e86c1 Les clubs peuvent modifier eux-même leurs imprimeurs 2015-04-27 17:10:06 +02:00
Pierre-Elliott Bécue
7fe89abfe6 Les respos sont pris en compte dans les droits testés sur les attributs. 2015-04-27 16:13:22 +02:00
Pierre-Elliott Bécue
514857a19c Modification de l'erreur relative aux moyens de paiement 2015-04-24 02:09:13 +02:00
Daniel STAN
9738d29d66 solde(): handle absence de solde
Et __float__ pour les attributs
2015-04-20 17:37:43 +02:00
Daniel STAN
55dadbd693 autorise modif nom,prenom by soi
En attendant discussion en CA si besoin est.
2015-03-20 12:50:22 +01:00
Pierre-Elliott Bécue
bfff595251 Vérification qu'un mailAlias est @crans.org 2015-03-15 19:33:19 +01:00
Pierre-Elliott Bécue
e1079463fc Les attributs autres que droits ne doivent pas être non-modifiables par "soi" par défaut.
* En gros, si on met "soi" dans can_modify, l'adh doit pouvoir changer
   seul ledit attribut. droits est la seule exception parce que le test
   qest différent.
2015-03-08 01:19:56 +01:00
Pierre-Elliott Bécue
54510faa56 userPassword n'est pas monovalué. 2015-02-27 10:42:32 +01:00
Pierre-Elliott Bécue
607a691a88 Quelques trucs qui traînent. 2015-02-14 14:14:39 +01:00
Valentin Samir
12e8103df7 [attributs] Suite pas d'AssertionError en comparant un generalizedTimeFormat avec autre chose qu'un unicode ou un generalizedTimeFormat 2014-12-02 20:14:06 +01:00
Valentin Samir
1c24cceb07 [attributs.certificat] Un %s dans la chaine de caractère 2014-12-02 17:49:49 +01:00
Valentin Samir
08903ab187 [attributs] Pas d'AssertionError en comparant un generalizedTimeFormat avec autre chose qu'un unicode ou un generalizedTimeFormat 2014-12-02 01:57:48 +01:00
Valentin Samir
d8bac8d47e Ajout de l'attribut __slots__ aux classes pour économiser de la ram 2014-11-22 22:01:42 +01:00
Valentin Samir
83b2e65a9d [attributs] On évite d'utiliser hasattr
Actuellement, ça retourne les attribut de self.value donc c'est confusionnant
2014-11-22 14:14:41 +01:00
Valentin Samir
8477760302 [attributs, objets] Une fonction pour générer automatiquement une ligne d'historique
Elle s'appelle history_gen.
Il faut l'appeler explicitement pour le moment, pour éviter de mettre des lignes
en double vu que jusqu'à maintenant, historique était fait à la main.

Il y a 4 niveaux d'historique pour les attributs :
  * full on loggue toutes les modifications
      pour un singlevalue : nom (Durant -> Dupond")
      pour les autres : mailAlias+toto@free.fr-titi@orange.com
  * partial, comme full sauf qu'on limite la longeur de chaque valeur d'attribut
    à au plus 15 caractères
  * info, on signalute juste que l'attribut attribut a été créer, supprimer ou modifier:
  * None, on n'ajoute pas de ligne (par exemple pour l'historique lui même, on le loggue pas
     ses modifications)

Ajoutez en d'autre si vous pensez à des trucs cools
2014-11-22 12:57:46 +01:00
Valentin Samir
629310d356 [objets, attributs] Vérification de l'absence de modif concurrente après acquisition du lock
et ajout de historique à concurrent=False
2014-11-09 01:36:57 +01:00
Valentin Samir
3a3d51e408 [attributs] methodes __add__ et __sub__ sur les floatAttr et intAttr 2014-11-08 17:46:24 +01:00
Valentin Samir
c3ac740ca5 [attributs, objets] Des locks pour les attributs sensibles aux modifs concurentes
Pour le moment juste pour l'attribut solde
2014-11-08 17:10:22 +01:00
Pierre-Elliott Bécue
7a63c55851 Le mail_parsing dans attributs doit être minimal
* Le fait qu'un alias canonique soit Prenom.Nom@crans.org ou qu'un alias
 mail soit lowercase est un choix moral, pas une obligation de la syntaxe
 LDAP.
2014-11-05 01:54:01 +01:00
Pierre-Elliott Bécue
991a8efaa4 Gestion de l'encodage dans config. 2014-11-05 01:53:18 +01:00
Daniel STAN
2f469b4916 pas de mention explicite de annuaires_pg_test 2014-11-04 23:28:15 +01:00
Valentin Samir
ac5f2f17ae [objets, attributs] Ajout d'une classe objet inetOrgPerson
Parce que sinon, ça plante quand je récupère l'inetOrgPerson respbats dans
mon jouet fuse.
2014-10-30 17:57:34 +01:00
Vincent Le Gallic
b4bfe6cdc4 [attributs] Échec sur l'utilisation de isinstance 2014-09-22 02:04:14 +02:00
Pierre-Elliott Bécue
7ed1874d62 [lc_ldap] Corrections de bugs, et cohérence de code. 2014-09-22 00:21:54 +02:00
Daniel STAN
c605009984 pas de sanity_check sur le wiki name 2014-09-10 23:43:23 +02:00
Pierre-Elliott Bécue
8d9e2819ea [get_imprimeurs] Erreur plus verbeuse
* On file le cid, ça aide à faire le ménage.
2014-09-01 03:36:53 +02:00
Pierre-Elliott Bécue
50f91c63e0 Correctifs sur les adhésions glissantes. 2014-08-25 19:17:10 +02:00
Pierre-Elliott Bécue
7f1ffbeed5 Passage aux adhésions glissantes (partie 2/2, lc_ldap) 2014-08-15 20:27:47 +02:00
Pierre-Elliott Bécue
6880051943 [attributs/modepaiement] Calculer les frais au parse_value est absurde.
* Déjà parce que quand on va lire depuis la base ldap l'objet,
 on va régénérer des frais à chaque fois.
 * Ensuite parce qu'on ne doit pouvoir faire ce calcul qu'une et
 une seule fois, une bonne fois pour toute.

Idéalement, un paiement via paypal doit être bloqué (par recuPaiement)
dès qu'il est validé.

À terme, supprimer la notion de frais semble être une bonne idée.
2014-08-15 05:20:31 +02:00
Pierre-Elliott Bécue
d66c12c013 [lc_ldap] Adaptations suite aux modifs du schéma et bugfixes 2014-08-15 01:13:04 +02:00
Pierre-Elliott Bécue
dd2ed0cd85 [attributs] Trésorier est un droit "important" 2014-04-14 03:23:29 +02:00
Pierre-Elliott Bécue
35f9c36461 [lc_ldap/clubs] La mise en place des clubs dans l'intranet a été faite trop tôt.
* Aucun système de droit permettant au responsable de modifier club/machines de club
 n'avait été mis en place. C'est corrigé.
2014-04-03 17:30:09 +02:00
Daniel STAN
ecc1b59d4a ip6HostNumber writable par proprio
À défaut de trouver mieux.
2014-03-26 21:27:11 +01:00
Valentin Samir
b7ceb88051 [attributs] Enforçage de la valeure de modePaiement à une liste prédéfinie 2014-03-23 20:36:53 +01:00
Valentin Samir
27af8f31c0 [attributs] typage des articles comme des dict 2014-03-23 20:36:31 +01:00
Valentin Samir
4a4b86f4f1 [attributs] Utilisation de mailExt comme mail de secours
On force l'adresse utilisée à être non crans
2014-03-21 09:17:00 +01:00
Valentin Samir
957c0462d1 [attributs] Nounou et cableurs doivent pouvoir modifier derniereConnexion, ipHostNumber et ip6HostNumber
derniereConnexion pour pouvoir supprimer des comptes crans
les autres pour pouvoir créer des machines
de plus, on met soi pour derniere connexion, pour qu'il puisse être mis à jour
quand un adhérent se connecte à l'intranet2
2014-03-21 09:15:02 +01:00
Valentin Samir
f8036659a6 [attributs] Liste des shell dans gestion.config 2014-03-21 09:13:50 +01:00
Valentin Samir
929133560d [attributs] Restriction sur les hostCert \in host+hostAlias seulement pour les machine non Crans
On part du principe que les nounou font attention et savent ce qu'elle font.
C'est plus pratique comme ça pour migrer des services d'une machine à l'autre
sans avoir à rééditer les certificats à chaque fois.
2014-03-18 22:46:13 +01:00
Valentin Samir
72e35bcb32 [attributs, crans_utils, objets] Ajout d'attributs encrypted, privatekey, csr et objectClass privateKey
On peut générer/ajouter des clefs privées via gest_crans_lc. Elles sont forcément chiffré avec une
passphrase. Pour les machines crans, elle est dans /etc/crans/secrets. Pour les autres machines
elle n'est pas connue du crans et demandée à l'utilisateur lorsqu'il y a besoin de la clef privée
pour des opérations.
Du coup, on peut générer des csr automatiquement dans gest_crans_lc, ça m'a l'air bien pratique,
ça évite d'oublier des subjectAltName par exemple quand on renouvel le certificat comme les
nom du certificat sont également dans ldap.
On peut aussi, juste avec une requête ldap voir quels sont les certificats qui vont bientôt
expirer (&(objectClass=x509Cert)(end<int(time.time())+delai)).
2014-03-17 11:26:53 +01:00
Valentin Samir
480497ce4e [attributs] Fonction utile sur les AttrsList, __cmp__ ne sert à rien et plante si python_type = int 2014-03-15 22:49:39 +01:00
Valentin Samir
1d58240c6a [attributs] Changement mineurs
docstring de mailExt, et unicodification des hostCerts de certificat
2014-03-15 22:47:58 +01:00