Exportar: PDF - facultad regional buenos aires

Anuncio
2015/06/20 20:43
1/7
Detalles de implementación de Servicio de Directorio
Detalles de implementación de Servicio de
Directorio
Características del Servidor
●
●
●
Servidor: OpenLDAP version 2.4.11
Host, puerto: ldap.frba.utn.edu.ar:389
Protocolo LDAP soportado: LDAPv3
La interfaz de comunicación se establece utilizando diversas librerías:
●
●
●
php-ldap para PHP
jLDAP para JAVA
Class DirectoryEntry en .NET
Estructura del Directorio
Bajo el dominio principal dc=frba,dc=utn,dc=edu,dc=ar se encuentran las siguientes Unidades
Organizacionales:
dc=personas,dc=frba,dc=utn,dc=edu,dc=ar
Se encuentran todas las Personas registradas en el directorio de la Facultad. Incluye toda personal
relacionada con la FRBA (docentes, no docente, alumno, etc)
Caracteristicas
●
●
Distinguished Name: uid=USUARIO,dc=personas,dc=frba,dc=utn,dc=edu,dc=ar
ObjectClass Requeridos:
inetOrgPerson
posixAccount
top
shadowAccount
FRBAPersona
❍
❍
❍
❍
❍
Wiki DiTIC - http://wiki.frba.utn.edu.ar/ditic/
Last update: 2013/11/18 21:13
public:ldap http://wiki.frba.utn.edu.ar/ditic/doku.php?id=public:ldap
ou=groups,dc=frba,dc=utn,dc=edu,dc=ar
Grupos creados para definición de roles en distintas aplicaciones. Cada uno contiene en el atributo
memberUid los UserID de cada integrante.
ou=ADMINS,dc=frba,dc=utn,dc=edu,dc=ar
Contiene usuarios de sistema para las distintas aplicaciones, los cuales son utilizados por la misma
para la lectura/modificacion de datos.
ObjectClass y Attributes
Para personalizar los datos de cada objeto dentro del árbol de directorio (sea grupo o persona), el
sistema establece la definición de esquemas. Estos son altamente configurables y es factible la
generación de nuevas estructuras para la integración con distintas aplicaciones.
Object Classes FBRA
Object Classes en Required
Rama Personas Attributes
FRBAPersona
FRBAAlias
FRBALibreta
activoSINAP
cn, destination,
mail
cn
Optional Attributes
OID
Tipo
ciudad, codigoPostal, cuil, direccion,
estado, estadoCivil, fechaNacimiento,
interno,
legajo, legajoAlumno, legajoPersonaUTN,
localidad, mailAlt, numeroDocumento,
oficina,
1.1.2.2.1 auxiliary
pais, paisNacimiento, partido, provincia,
sede, sexo, telefonoMovil,
telefonoPersonal,
tipoDocumento, visibilidadLibreta,
filiacion, mailType
description, visibilidadLibreta, interno,
1.1.2.2.4 structural
oficina
interno, mailLibreta, photo
1.1.2.2.5 structural
Attributes FRBA
Attributes
http://wiki.frba.utn.edu.ar/ditic/
Descripcion
Single/Multi-Valued
Example
Valor
posible
Printed on 2015/06/20 20:43
2015/06/20 20:43
ciudad
3/7
Ciudad de residencia Single
Codigo postal del
codigoPostal
domicilio de
residencia
cuil
C.U.I.L.
Domicilio de
direccion
residencia
estado
??
estadoCivil
Estado Civil
fechaNacimiento
Fecha de nacimiento
interno
Interno telefonico
legajo (se da de baja) Legajo?
legajoAlumno
Legajo alumno
legajoPersonaUTN
Legajo UTN
localidad
??
Mail alternativo o
mailAlt
destino de alias
Numero de
numeroDocumento
documento
Numero de oficina
oficina
principal de contacto
pais
Pais de residencia
paisNacimiento
Pais de nacimiento
partido
Partido de residencia
Provincia de
provincia
residencia
sede
Sede de oficina
sexo
Genero
telefonoMovil
Telefono celular
telefonoPersonal
Telefono personal
Tipo de documento
tipoDocumento
de identidad
Visibilidad en libreta
visibilidadLibreta
de direcciones
filiacion
mailType
activoSINAP
destination
mailLibreta
Detalles de implementación de Servicio de Directorio
Single
Wiki DiTIC - http://wiki.frba.utn.edu.ar/ditic/
1179
Single
Single
Single
Single
Single
Single
Single
Single
Single
Single
Medrano 951
Soltera
29/02/1990
7511
123456-7
65123-8
Single
pepe@jmail.com
Single
36123456
Single
Of 123
Single
Single
Single
Argentina
Argentina
Single
Buenos Aires
Single
Single
Single
Single
Medrano
Femenino
15123456
456789
Single
DNI
Single
0
Tipo de actividad
Multi-Valued
dentro de la Facultad
Tipo de cuenta de
correo
Estado del usuario
Destino de alias de
correo
Mail de objectos de
libreta de directorio
Ciudad Autonoma
de Buenos Aires
docente
Single
externo:alias
Single
S
MultiValued
Single
alumno
nodocente
becario
investigador
ayudante
externo:alias
frba:mailbox
Last update: 2013/11/18 21:13
public:ldap http://wiki.frba.utn.edu.ar/ditic/doku.php?id=public:ldap
Características de objetos Persona.
uid: Nombre de usuario, identifica unívocamente al usuario. Admite caracteres alfanumericos, ”.” y “_”
uidNumber: Identificador numérico de cada usuario.
Distinguished Name (dn): Formado por el uid seguido de la posición dentro del árbol.
userPassword: Las contraseñas se almacenan en MD5, codificadas en base64 más un identificador
del hash utilizado. (RFC4519)
Ejemplo en PHP:
$pass = "{MD5}".base64_encode(pack("H*", md5(“clave”)));
Generara el string: {MD5}+8cc42zCB5Dy7u0hl4mOcQ==
mail: Campo que indica el mail FRBA. Debe contener un ÚNICO valor.
mailAlt: Correo alternativo. Debe ser un correo externo a la facultad.
interno: Numero de telefono interno del usuario. Visible a la herramienta “Buscador telefónico”
o: Organización a la que el objeto pertenece. Ejemplos: “SGA”, “Direccion de Compras”, “DiTIC”,
“DSI”, etc.
Características de objetos Alias.
cn: Nombre visible del Alias para libreta de direcciones.
destination: Mails a los cuales se destinará el mail.
mail: Mail fuente.
VisibilidadLibreta: Visibilidad dentro de las libretas de direcciones.
Interno: En caso de ser el alias de un Área de la FRBA se puede asignarle un interno, el cual figurara
en libreta de direcciones y es posible hacer una búsqueda desde el Buscador Telefónico en estos
objetos, también siendo factible tomar a través de los mails de “destination” las personas asociadas
al área.
Características de objectos Libreta
Objeto utilizado para suplantar personas en la libreta de direcciones que tengan seteado el atributo
http://wiki.frba.utn.edu.ar/ditic/
Printed on 2015/06/20 20:43
2015/06/20 20:43
5/7
Detalles de implementación de Servicio de Directorio
visibilidadLibreta=0. Esto es para relacionar una persona (por ejemplo el Decano) con su secretaria y
su mail del area y no personal.
cn: Nombre de la persona.
interno: Interno telefonico publico.
mailLibreta: Mail publico de la persona.
Consideraciones para la baja de usuario
El atributo filiación establece la relación que posee la persona con la UTN.BA. En caso de que la
persona no mantenga ningún vinculo, si se pretende eliminar la cuenta solo se podrá hacer, si y solo
si, como resultado de la ejecución de la modificación en curso el atributo Filiación queda sin valores.
Para realizar la baja se deberán modificar los siguientes parámetros en el directorio LDAP:
●
●
●
●
●
activoSINAP: 'N'
Los atributos filiaciación, interno, sede, oficina quedarán sin valores.
Se borra el mail del usuario de los alias a los que pertenece como destinatario. En caso de ser único
destinatario entonces colocar como destino del alias a la cuenta admin@frba.utn.edu.ar y dar aviso
“Alias sin destinatario” a admin@rt.frba.utn.edu.ar
Se quita al usuario de todos los grupos ldap al que pertenece.
Opcionalmente realizar un cambio de clave (que afecte al ds.frba.utn.edu.ar).
Otras acciones fuera del servicio de
directorio a realizar
Fuera de la base de directorio, pero no deja de ser importante, son las siguientes acciones:
●
●
●
Quitar los permisos de su cuenta SInAp. (Se recomienda la creación de un documento “Descripción
de la aplicación SInAp)
Quitar el usuario de Libreta complementaria del SInAp, si corresponde, se hace manualmente con el
gestor de Libreta a desarrollar. (Se recomienda la creación de un documento “Descripción de
Libreta complementaria SInAp”)
Deshabilitar cuenta en el Active Directory de ds.frba.utn.edu.ar
Consideraciones para el empadronamiento
Wiki DiTIC - http://wiki.frba.utn.edu.ar/ditic/
Last update: 2013/11/18 21:13
public:ldap http://wiki.frba.utn.edu.ar/ditic/doku.php?id=public:ldap
de alumnos
Para el proceso de empadronamiento de alumnos se propone lo siguiente:
1. Cada alumno empadronado se agrega a la organización persona, como si se tratase de un docente
con las observaciones que se detallan a continuación .
2. El atributo mailType debe valer externo:alias. Esto hará que el servidor de correo FRBA acepte la
cuenta y la vincule con el contenido de mailAlt.
3. El atributo filiacion debe contener al menos el valor alumno
4. Se deberá validar el correo alternativo, por consiguiente se propone enviar la clave (generada
aleatoriamente) al correo alternativo
5. Se propone crear una pagina para mantener datos variables entre los que deben estar al menos:
mailAlt, telefonoMovil, telefonoPersonal, ciudad, codigoPostal, direccion
Ejemplo de uso con PHP
A continuación se detalla un ejemplo de conexión y busqueda con PHP.
<?php
function Login($user = null, $pass = null){
if( empty($user) || empty($pass) ) return false;
$pass_encript = "{MD5}".base64_encode(pack("H*", $pass));
$ds = ldap_connect("ldap.frba.utn.edu.ar");
if ($ds){
ldap_set_option($ds,LDAP_OPT_PROTOCOL_VERSION,3);
$r = ldap_bind($ds, user, password) or die ("Error en la conexion");
if($r){
$result = ldap_search($ds, "dc=frba,dc=utn,dc=edu,dc=ar",
"(&(uid=$user)(userPassword=$pass_encript))",
array("uid", "uidNumber", "mail")) or die("Error
del query: ".ldap_error());
$data = ldap_get_entries($ds, $result);
if( $data["count"] == 0) return false;
$uidNumber = $data[0]["uidnumber"][0];
}
ldap_close($ds);
}
return $uidNumber;
}
?>
La función primero codifica el password con el algoritmo necesario para la comparacion, realiza una
conexión al LDAP.
http://wiki.frba.utn.edu.ar/ditic/
Printed on 2015/06/20 20:43
2015/06/20 20:43
7/7
Detalles de implementación de Servicio de Directorio
En caso de éxito, setea la versión del protocolo a utilizar y se “logea” en el servidor con un user y
password provisto exclusivamente para tal fin.
Luego realiza una búsqueda desde el raiz del arbol filtrando por los atributos uid y userPassword que
en caso de coincidencia devolvera: uid, uidNumber y mail.
Para obtener las entradas se utiliza la función ldap_get_entries. Si la misma no devuelve “count” = 0,
la función devolverá el uidNumber como código de salida exitosa.
ACL
Usuario
Filtro
cn=admin,dc=frba,dc=utn,dc=edu,dc=ar
*
cn=users,ou=admins,dc=frba,dc=utn,dc=edu,dc=ar
cn=*,ou=admins,dc=frba,dc=utn,dc=edu,dc=ar
*
anonymous
self
*
users
users
users
self
users
*
users
users
Permanent link:
http://wiki.frba.utn.edu.ar/ditic/doku.php?id=public:ldap
Wiki DiTIC - http://wiki.frba.utn.edu.ar/ditic/
*
Nivel
de
acceso
write
*
read
userPassword,
*
auth
shadowLastChange
userPassword,
*
write
shadowLastChange
userPassword,
*
none
shadowLastChange
objectClass=organization
*
read
objectClass=FRBALibreta
*
read
direccion,
gidNumber,
homeDirectory,
uidNumber,
activoSINAP, ciudad,
codigoPostal, cuil,
estado, estadoCivil,
fechaNacimiento,
fechaNacimientoAux,
objectClass=FRBAPersona
givenName,
none
legajoAlumno,
legajoPersonaUTN,
loginShell, mailAlt,
numeroDocumento,
pais, paisNacimiento,
partido, provincia,
sexo, telefonoMovil,
telefonoPersonal,
tipoDocumento
(&(objectClass=FRBAPersona)(visibilidadLibreta=1)(activoSINAP=S)) *
write
(&(objectClass=FRBAPersona)(visibilidadLibreta=1)(activoSINAP=S)) *
read
(&(objectClass=FRBAPersona)(visibilidadLibreta=1)(activoSINAP=S)) *
none
(&(objectClass=FRBAAlias)(visibilidadLibreta=1)
destination
none
(&(objectClass=FRBAAlias)(visibilidadLibreta=1)
*
read
From:
http://wiki.frba.utn.edu.ar/ditic/ - Wiki DiTIC
Last update: 2013/11/18 21:13
Atributo
Descargar