bye bye secrets.py

On vire les dernières références à secrets.py via import direct de
/etc/crans/secrets/secrets.py

Ci-dessous une liste des trucs modifié et les raisons
./gestion/iscsi/nolslib.py:execfile("/etc/crans/secrets/nols.py")
./gestion/iscsi/slonlib.py:execfile("/etc/crans/secrets/slon.py")
./gestion/gen_confs/trigger.py:_args = ["ssh", "-4", "-i", "/etc/crans/secrets/trigger-generate" ]

./gestion/gen_confs/dhcpd_new.py:        sys.path.append('/usr/scripts/gestion/secrets')
./gestion/gen_confs/dhcpd_new.py:        from secrets import dhcp_omapi_keyname,dhcp_omapi_keys
./gestion/gen_confs/populate_sshFingerprint.py:sys.path.append('/etc/crans/secrets/')
./sip/sms_queuing:sys.path.insert(0, '/usr/scripts/gestion/secrets')
./sip/sms_queuing:from secrets import asterisk_sms_passwd
./sip/sip_multidial.py:sys.path.append('/etc/crans/secrets/')
./sip/sip_multidial.py:import secrets

./gestion/gen_confs/switchs.py:        sys.path.append('/usr/scripts/gestion/secrets')
./gestion/gen_confs/switchs.py:        from secrets import radius_key
./gestion/set_droits.sh:  if [[ $1 = "$BASE/secrets" ]] ; then
./gestion/set_droits.sh:  elif [[ $1 = "$BASE/secrets/secrets.py" ]] || [[ $1 = "$BASE/secrets/secrets.pyc" ]]; then
./admin/confmail/conf_mail.py:sys.path.append('/usr/scripts/gestion/secrets')
./admin/confmail/conf_mail.py:from secrets import secretConfirmMail
This commit is contained in:
Daniel STAN 2014-07-22 20:29:59 +02:00
parent 77e0b1daad
commit 92275f8948
11 changed files with 24 additions and 896 deletions

View file

@ -1,80 +0,0 @@
# -*- coding: utf-8 -*-
""" Confirmation des adresses electroniques.
Par Alexandre Bos
Encore en test
Licence GPL v2 """
""" ATTENTION : CE SCRIPT EST ENCORE EN TEST !"""
import sha, sys, re
from time import time
sys.path.append('/usr/scripts/gestion')
from email_tools import send_email
from ldap_crans import crans_ldap
sys.path.append('/usr/scripts/gestion/secrets')
from secrets import secretConfirmMail
modele = """Content-Type: text/html
<head><title>Page de confirmation de mail</title></head>
<html>
<body>
<h1>Page de confirmation d'email du crans.</h1>
<p>%s</p>
</body>
</html>
"""
re_aid = re.compile ('^\d{1,5}$')
""" Expression rationnelle pour tester les numeros de 0 a 99999 """
re_date = re.compile ('^\d{8,12}$')
""" Expression rationnelle pour tester un entier represantant une date
C'est le resultat d'un time() tronque"""
base_lien = 'http://mailconf.crans.org/confirm.py?'
def gen_code(aid, date_limite):
""" Donne le code de connfirmation en fonction
de l'aid et de la date limite du lien de confirmation"""
chaine = aid + date_limite + secretConfirmMail
hash = sha.new(chaine)
# Ok, on ruine les qualites cryptographiques de sha. Et apres ?
return (hash.hexdigest())[1:15];
def confirmer(aid, date_limite, code):
""" Verifie que les donnes du lien de confirmation sont
correctes et, si tout est bon, marque l'adresse
comme valide"""
code2 = gen_code(aid, date_limite)
if (code <> code2) or (not re_aid.match(aid)) or (not re_date.match(date_limite)):
print modele % ("Lien de confirmation mal formate.")
elif int(date_limite) < time():
print modele % "Lien de confirmation expire."
else:
db = crans_ldap()
db.services_to_restart('mail_valide',str(aid))
print modele % "L'adresse a ete marquee valide. Merci !"
def envoyer_mail(aid, validite=1209600):
""" Envoie un mail de confirmation de l'adresse valable par defaut
deux semaines """
date_limite = str(int(time() + validite))
code = gen_code(str(aid),date_limite)
db = crans_ldap()
adh = db.search('aid='+str(aid))['adherent'][0]
lien = base_lien + 'aid=' + str(aid) + '&date=' + str(date_limite) + '&conf=' + str(code)
corps = """Bonjour,\n Ce mail t'est envoye afin de confirmer ton adresse electronique. Pour ce faire, clique sur le lien ci-dessous.\n\n%s\n\nMerci !\n\n--\n\nL'equipe technique du Crans""" % lien
send_email('disconnect@crans.org', str(adh._data['mail'][0])+'@crans.org', 'Mail de confirmation d\'adresse electronique', corps, actual_sender='bulk+mailConf@crans.org')
# e finita la comedia