Proyecto

General

Perfil

« Anterior | Siguiente » 

Revisión 260

Añadido por Francisco Mora hace más de 13 años

Arreglo autentificación nuevo ldap para dnis y nies

Ver diferencias:

transformaArchivos.py
datos = linea.split("|")
return { "dni_profesor" : datos[0], "nie_alumno" : datos[1], "inicio" : datos[2], "final" : datos[3]}
def consultaLdap(identificador):
def consultaLdap(identificador, contra):
"""Función que consulta el servidor ldap, con el atributo
employeeNumber. Devuelve el login asociado al profesor o al alumno
"""
try:
l = ldap.open("ldap")
l.protocol_version = ldap.VERSION3
usuario = 'cn=Admin,ou=People,dc=instituto,dc=extremadura,dc=es'
l.simple_bind(usuario, contra)
except ldap.LDAPError, e:
print e
return "ERRORLDAP"
......
minutos = datohora % 60
return "%02d%02d" % (hora,minutos)
def transformaArchivos(datosrayuela, datosservidor, datosyaml, debug = False):
def transformaArchivos(datosrayuela, datosservidor, datosyaml, contra, debug = False):
#Comprobemos la existencia del directorio de datos de Rayuela
if not os.path.exists(datosrayuela):
if debug:
......
#if debug:
# print "Nooooo se consulta a ldap, profesor dni",datosLineaRayuela["dni_profesor"],"pertenece a",login_profesor
else:
login_profesor = consultaLdap(dni_profesor)
login_profesor = consultaLdap(dni_profesor, contra)
if login_profesor=="NO ENCONTRADO":
login_profesor = consultaLdap(dni_profesor[1:])
login_profesor = consultaLdap(dni_profesor[1:], contra)
profesores[dni_profesor] = login_profesor
if debug:
print "Se consulta a ldap, profesor dni",datosLineaRayuela["dni_profesor"],"pertenece a",login_profesor
......
#if debug:
# print "Nooooo se consulta a ldap, alumno nie",datosLineaRayuela["nie_alumno"],"pertenece a",login_alumno
else:
login_alumno = consultaLdap(datosLineaRayuela["nie_alumno"])
login_alumno = consultaLdap(datosLineaRayuela["nie_alumno"], contra)
alumnos[datosLineaRayuela["nie_alumno"]] = login_alumno
if debug:
print "Se consulta a ldap, alumno nie",datosLineaRayuela["nie_alumno"],"pertenece a",login_alumno
......
lee_parametros(lista,params)
#comprobaremos las combinaciones de parametros en linea de comandos
if len(lista) == 2 and lista[1] == "--help":
print 'uso: ./transformaArchivos.py [--datosrayuela rutadatosrayuela] [--datosservidor rutadatosservidor] [--datosyaml rutadatosyaml]'
print 'uso: ./transformaArchivos.py [--datosrayuela rutadatosrayuela] [--datosservidor rutadatosservidor] [--datosyaml rutadatosyaml] [--contra contraadminldap]'
sys.exit(1)
if not params.has_key("contra"):
print "No se ha establecido la contraseña del administrador ldap..."
sys.exit(2)
if not params.has_key("datosrayuela"):
print "No se ha establecido la ruta a la carpeta con los datos de rayuela, usando por defecto '"+os.getcwd()+"'"
params["datosrayuela"] = os.getcwd()
......
params["datosservidor"] = "/var/www/wifi"
if not params.has_key("datosyaml"):
print "No se ha establecido la ruta dónde se encuentran los datos yaml de puppet, usando por defecto '/var/lib/puppet/yaml/node'"
params["datosyaml"] = "/var/lib/puppet/yaml/node"
params["datosyaml"] = "/var/lib/puppet/yaml/node"
print
print "Los valores pasado son los siguientes:"
......
print "Directorio de datos de para el servidor:",params["datosservidor"]
print "Directorio de datos yaml de puppet:",params["datosyaml"]
resultado = transformaArchivos(params["datosrayuela"], params["datosservidor"], params["datosyaml"], True)
resultado = transformaArchivos(params["datosrayuela"], params["datosservidor"], params["datosyaml"], params["contra"], True)
if resultado > 0:
print "Se ha producido errores en el procesamiento, código de error",resultado
else:

Exportar a: Unified diff