PAPI + openLDAP para control de acceso basado en entitlements€¦ · Control de solicitudes de...
Transcript of PAPI + openLDAP para control de acceso basado en entitlements€¦ · Control de solicitudes de...
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
PAPI + openLDAP para control de accesobasado en entitlements
Victoriano Giralt José A. Accino
Servicio Central de InformáticaUniversidad de Málaga
Logroño, 23 de octubre de 2005
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Índice
1 Casos de uso de EntitlementsControl de solicitudes de gastoControl de usos del número de móvil
2 Problemas de manejo de URN
3 El futuro
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Asigna niveles de acceso a la aplicación indicada:
Función
Modo de uso
Ventajas
entitlementel URN contiene un derecho del usuario o rol
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Asigna niveles de acceso a la aplicación indicada:
Función
Modo de uso
Ventajas
applAccess
tipo de derecho, en este caso acceso a unaaplicación.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Asigna niveles de acceso a la aplicación indicada:
Función
Modo de uso
Ventajas
SolicitudGastoaplicación sobre la que se ejerce el derecho.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Asigna niveles de acceso a la aplicación indicada:
Función
Modo de uso
Ventajas
NIVELnivel de acceso concedido, específico de laaplicación:RUG, ROU, RGE
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Función
Modo de uso
Ventajas
Consulta LDAPConsulta convencional al directorio desde laaplicación para averiguar si el usuario que se haautenticado tiene derecho a usarla y el nivel deacceso que se le ha concedido.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Función
Modo de uso
Ventajas
Consulta vía servicio webLa aplicación consulta un servicio web dándolecomo entrada los identificadores del usuario yde la aplicación, y obteniendo el nivel de accesoo la ausencia de derecho.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Función
Modo de uso
Ventajas
PAPI (futuro)
El futuro, como tal, se verá más adelante.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Función
Modo de uso
Ventajas
Punto único de autorizaciónTodas las autorizaciones de un objeto, explícitaso implícitas, están centralizadas en una entradadel directorio.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Función
Modo de uso
Ventajas
Modelo único de autorizaciónEl formato URN nos permite expresar todas lasautorizaciones de la misma forma, dejando acada aplicación su propia semántica.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Control de solicitudes de gasto(en producción)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:applAccess:SolicitudGasto:NIVEL
Función
Modo de uso
Ventajas
Agente-Función-Calificador
Quién puede hacer Qué sobre Qué objeto
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Usos del número de móvil(un caso más complicado)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:attrAccess:mobile:VALOR
Usuario a aplicación
El problema
Ejemplos
Pero ...
Gestión personal de permisos
Es el usuario quien da permisos a lasaplicaciones sobre sus datos.¿Podemos usar los entitlements?¿Estamos dentro de la ortodoxia?¿Un nuevo irisUserPrivateAttribute?
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Usos del número de móvil(un caso más complicado)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:attrAccess:mobile:VALOR
Usuario a aplicación
El problema
Ejemplos
Pero ...
Control de acceso a atributosDiversas aplicaciones pueden quererutilizar un atributo, el usuario puededecidir si permite o no el uso del atributopara el fin de cada una de ellas.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Usos del número de móvil(un caso más complicado)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:attrAccess:mobile:VALOR
Usuario a aplicación
El problema
Ejemplos
Pero ...
mobileEste atributo se puede utilizar paradiversas aplicaciones, como pueden ser:
+ cambio de claves olvidadas
+ envío de calificaciones
+ envío de notificaciones
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Usos del número de móvil(un caso más complicado)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:attrAccess:mobile:VALOR
Usuario a aplicación
El problema
Ejemplos
Pero ...
VALOR = passwordChange
El usuario autoriza el uso de su númerode móvil a la pasarela SMS para lafunción de cambio de claves. Visto deotra forma, el usuario permite que sunúmero de móvil se pueda usar parainiciar un cambio de clave de acceso.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Usos del número de móvil(un caso más complicado)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:attrAccess:mobile:VALOR
Usuario a aplicación
El problema
Ejemplos
Pero ...
VALOR = marksEl usuario autoriza el uso de su númerode móvil para el acceso a sus notas ypara que se le envíen sus calificaciones.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Usos del número de móvil(un caso más complicado)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:attrAccess:mobile:VALOR
Usuario a aplicación
El problema
Ejemplos
Pero ...
VALOR = maySpam
El usuario autoriza el uso de su númerode móvil para el envío decomunicaciones desde la Universidad.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Usos del número de móvil(un caso más complicado)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:attrAccess:mobile:VALOR
Usuario a aplicación
El problema
Ejemplos
Pero ...
irisUserEntitlementContiene permisos que se conceden alobjeto (usuario).
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Usos del número de móvil(un caso más complicado)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:attrAccess:mobile:VALOR
Usuario a aplicación
El problema
Ejemplos
Pero ...
irisUserPrivateAttributeContiene permisos que el objeto(usuario) concede para acceder a susatributos.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Control de solicitudes de gastoControl de usos del número de móvil
Usos del número de móvil(un caso más complicado)
irisUserEntitlement = urn:mace:rediris.es:uma.es:entitlement:attrAccess:mobile:VALOR
Usuario a aplicación
El problema
Ejemplos
Pero ...
¿Nuevo irisUserPrivateAttribute?
¿Cambiamos a un modelo de URN?¿Podría funcionar?
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Sobre los problemas de manejo de URNo, en realidad, de la ausencia de ellos
Los problemas del uso de URNs son más de percepción quereales
Búsqueda de URNs
Procesamiento deEntitlements
Procesamiento deURNs
URN = cadena de textoSi se indiza adecuadamente , LDAPdestaca por la rapidez de búsqueda desubcadenas; da igual la longitud de lasmismas.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Sobre los problemas de manejo de URNo, en realidad, de la ausencia de ellos
Los problemas del uso de URNs son más de percepción quereales
Búsqueda de URNs
Procesamiento deEntitlements
Procesamiento deURNs
Entitlement = atributo multivaluadoSu tratamiento no es más complejo queel de otros atributos multivaluados.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
Sobre los problemas de manejo de URNo, en realidad, de la ausencia de ellos
Los problemas del uso de URNs son más de percepción quereales
Búsqueda de URNs
Procesamiento deEntitlements
Procesamiento deURNs
URN = cadena de textoLa búsqueda de datos en un URN es unsimple proceso de cadenas, que loslenguajes al uso realizan con granfacilidad.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
El futuroes hoy
Eliminar acceso LDAP
Servicios web
PAPI
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
El futuroes hoy
Eliminar acceso LDAP
Servicios web
PAPI
El acceso, NO el directorioLas aplicaciones no pueden tenerel control de acceso.El directorio no puede saber si laaplicación usa las credencialesque le corresponden.Por ello, podrían usar informaciónpara la que no están autorizadas.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
El futuroes hoy
Eliminar acceso LDAP
Servicios web
PAPI
Control de credencialesLas aplicaciones NO DEBENtener acceso a las credenciales.¿Por qué?¿Hay solución?
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
El futuroes hoy
Eliminar acceso LDAP
Servicios web
PAPI
Solución para el acceso
Son el interfaz entre lasapllicaciones y el directorio.Al ser pocos, permiten unarevisión exhaustiva del códigopara verificar que es acorde a lapolítica de acceso a los atributos.
PAPI + openLDAP para control de acceso basado en entitlements
Casos de uso de EntitlementsProblemas de manejo de URN
El futuro
El futuroes hoy
Eliminar acceso LDAP
Servicios web
PAPI
Atenticación Y AutorizaciónEl AS es el único punto conacceso a las credenciales.La aserción de PAPI puedecontener los entitlements definidospor el administrador para cadaPOA (=aplicación).El AS controla el acceso a losatributos.
PAPI + openLDAP para control de acceso basado en entitlements