1 / 33

OpenPMI

José A. Montenegro http://www.lcc.uma.es/~monte monte@lcc.uma.es Granada, Noviembre 2006. OpenPMI. hacia la implantación del marco de trabajo de administración de privilegios X.509. Agenda. Situación Actual, Inseguridad:

Download Presentation

OpenPMI

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. José A. Montenegro http://www.lcc.uma.es/~monte monte@lcc.uma.es Granada, Noviembre 2006 OpenPMI hacia la implantación del marco de trabajo de administración de privilegios X.509

  2. Agenda • Situación Actual, Inseguridad: • ¿Mal uso de las Tecnologías existentes o necesitamos Nuevas Tecnologías? • Autenticación vs Autorización • PMI como propuesta ITU-T X.509 • OpenPMI http://openpmi.sourceforge.net  http://openpmi.sourceforge.net 

  3. Mal uso tecnología  http://openpmi.sourceforge.net 

  4. Problema √  http://openpmi.sourceforge.net 

  5. Posible solución: SSL/TLS  http://openpmi.sourceforge.net 

  6. De nuevo el problema  http://openpmi.sourceforge.net 

  7. De nuevo el problema – Visión del usuario  http://openpmi.sourceforge.net 

  8. Nueva PropuestaMicrosoft  http://openpmi.sourceforge.net 

  9. Autenticación y Autorización • Autenticación y Autorización son conceptos vinculados. • Tanto en el entorno digital como el humano • Definición R.A.E • Identificar: 2. tr. Reconocer si una persona o cosa es la misma que se supone o se busca. • Autenticación: 1. tr. Autorizar o legalizar algo. • Autorizar: 1. tr. Dar o reconocer a alguien facultad o derecho para hacer algo. • La identidad de una persona no varía del trabajo a la vida personal (identificación única) • Y ¿la Autorización? • Tenemos los mismos privilegios en todos los contextos: Hogar, Trabajo, Reunión de Amigos  http://openpmi.sourceforge.net 

  10. Autenticación y Autorización • Autenticación es el proceso que prueba quién es el usuario • Autorización, apoyándose en autenticación, pero describe qué puede hacer el usuario • Por tanto considera los derechos o propiedades que ha de poseer el usuario para realizar determinadas tareas • Los esquemas de “Autorización” normalmente utilizados son: • DAC • MAC • RBAC ….. ABAC  http://openpmi.sourceforge.net 

  11. PMI como propuesta ITU-T X.509 … • Es posible plantearse si son PKIs adecuadas para aplicaciones que necesitan servicios de autorización • Es posible utilizar un certificado de identidad X.509 para almacenar los privilegios de un usuario • Utilizando la extensión “Subject directory attributes” • Pero …. • El problema con los certificados de identidad es que tienen un periodo de validez relativamente largo • Además, no tiene que ser la misma entidad que emita sentencias de autenticación y autorización  http://openpmi.sourceforge.net 

  12. … Autorización y PKIs • La Recomendación X.509 del 2000 establece el marco de trabajo para los certificados de atributos. • Privilege Management Infrastructure, PMI • Incluye la especificación de los elementos utilizados para la especificación de este tipo de certificado • Certificado de Atributo: Una estructura de información, firmada digitalmente por una Autoridad de Atributos, que vincula atributos con la identificación de su poseedor.  http://openpmi.sourceforge.net 

  13. Certificado Identidad vs Atributo Version Serial Number Version Signature Algorithm Serial Number Issuer Signature Algorithm Validity period Issuer Subject Validity period Public Key Algorithm Holder Public Key Attributes Issuer Unique Identifier Issuer Unique Identifier User Unique Identifier Extensions Extensions AA signature CA signature  http://openpmi.sourceforge.net 

  14. Interés Legal • German Digital Signature Law (SigG) • Definición de Certificado: • A digital attestation concerning the attribution of a public signature key to a natural person to which a digital signature is affixed (signature key certificate), • or a special digital attestation which refers unmistakably to a signature key certificate and contains further information (attribute certificate).  http://openpmi.sourceforge.net 

  15. OpenPMI http://openpmi.sourceforge.net

  16. Proyectos OpenPMI realizados • OpenSSL+AC • Visual AA • Delegation Editor • xSAML  http://openpmi.sourceforge.net 

  17. OpenSSL+AC I.. • Inicialmente es necesario establecer un marco de trabajo para X.509 • La librería OpenSSL es el marco establecido • a. Adición a la librería de Soporte Acs • b. Implementación de un proceso en línea de comandos para la administración de ACs  http://openpmi.sourceforge.net 

  18. OpenSSL+AC II.. • OpenSSL está compuesto principalmente por dos elementos • Cryptographic library (crypto) • SSL library (ssl ) • El proceso es completado mediante cuatro pasos: • Definición de la estructura del certificado • Definición de las funciones asociadas • Inclusión de los nuevos elementos al proceso de compilación de la librería • Verificación ACs con un Visualizador de ASN.1  http://openpmi.sourceforge.net 

  19. Certificado Atributo  http://openpmi.sourceforge.net 

  20. OpenSSL+AC III • Una vez que hemos incluido el soporte de ACs dentro de OpenSSL tenemos dos posibilidades: • Crear una herramienta dentro de la línea de comandos (x509AT) • Aplicación externa (Visual AA)  http://openpmi.sourceforge.net 

  21. Visual AA  http://openpmi.sourceforge.net 

  22. Delegation Editor • Delegación: Inicialmente adquiere matiz más cercano a transferencia de Identidad que a la transferencia de los Privilegios • Autenticación era el servicio que dirigía el control de acceso • Sistemas, los recursos y las acciones estaban fácilmente limitados • No era posible asignar propiedades a la delegación (ej. tiempo) • Delegación de grano grueso • Los recursos que un sistema debe administrar se han multiplicado y las acciones a realizar sobre ellos • De nuevo la situación actual desborda a la seguridad • Necesaria Delegación de grano fino  http://openpmi.sourceforge.net 

  23. Delegation Editor • Delegation Model Languaje: Lenguaje Visual para construir sentencias de Delegación. • Permite a los usuarios diseñar fácilmente el estado del sistema • Delegación Controlada Avanzada: • (Issuer;Holder;Weight;Resource) • Las métricas que evalúan los caminos de delegación deben cumplir propiedades de monotonía, es decir, el nivel de confianza del camino decrece a medida que profundiza  http://openpmi.sourceforge.net 

  24. Delegation Editor  http://openpmi.sourceforge.net 

  25. Delegation Editor Arcsid :== SEQUENCE { 0 (SOA) 2 (AA2 ) 0,3 0 1 } Arcsid :== SEQUENCE { 0 (SOA) 1 (AA1 ) 1 1 0 } AA1 1 0,3 SOA AA2 Arcsid :== SEQUENCE { 0 (SOA) 3 (AA3 ) 0,3 1 0 } 0,3 Arcsid :== SEQUENCE { 0 (SOA) 3 (AA3 ) 0,3 1 0 } 0,6 AA3 AA4 SOA SOA SOA AA3 AA1 AA3 AA2 AA4 Arcsid :== SEQUENCE { 3 (AA3) 4 (AA4 ) 0,6 1 0 } AA3 Firma AA3 Firma AA3 Firma AA3 Firma Equivalencia entre el grafo y la secuencia de ACs  http://openpmi.sourceforge.net 

  26. Delegation Editor Version Serial Number Signature Algorithm Issuer Validity period Holder Attributes Iss. Unique Identifier Extensions AA signature • Traducción directa del modelo de grafos a cadenas de certificados de atributos WeightPathIdentifier EXTENSION ::= { SYNTAX WeightPathIdentifieSyntax IDENTIFIED BY { id-ce-WeightPathIdentifier } } WeightPathIdentifieSyntax ::= SEQUENCE SIZE (1..MAX) OF ArcsId ArcsId ::= SEQUENCE { Origin IssuerSerial, Destination HolderSerial, Weight REAL (0..1), Delegable BIT, Sign BIT }  http://openpmi.sourceforge.net 

  27. xSAML • Traductor de sentencias Saml a X509 y viceversa • Realizado con librerías OpenSAML y BouncyCastle  http://openpmi.sourceforge.net 

  28. Proyectos OpenPMI en realización • TLS+AC • Soporte Web (Apache) • Soporte Cliente (Mozilla) • Otros protocolos como SSH • Soporte para Smart Card • Inclusión en núcleo Windows  http://openpmi.sourceforge.net 

  29. TLS+AC • Primera propuesta: • S. Farrell. TLS extensions for Attribute Certificate based authorization. IETF TLS Working Group, 1998.  http://openpmi.sourceforge.net 

  30. TLS+AC II • Propuesta Actual: • Mark Brown, Russ Housley. Transport Layer Security (TLS) Authorization Extensions. IETF TLS Working Group, 2006. ClientServer ClientHello (with AuthorizationData) --------> ServerHello (with AuthorizationData) Certificate* ServerKeyExchange* CertificateRequest* <-------- ServerHelloDone Certificate* ClientKeyExchange CertificateVerify* [ChangeCipherSpec] Finished --------> [ChangeCipherSpec] <-------- Finished Application Data <-------> Application Data  http://openpmi.sourceforge.net 

  31. TLS+AC III • Estado Actual:  http://openpmi.sourceforge.net 

  32. Conclusiones • Problemas de Seguridad: • Mal uso existentes • Necesarias nuevas tecnologías • Hemos visto el caso de la Autenticación y Autorización • En cualquier caso es necesario el desarrollo de herramientas • OpenPMI propone un servicio de autorización estándar que completa a los servicios de autenticación  http://openpmi.sourceforge.net 

  33. José A. Montenegro http://www.lcc.uma.es/~monte monte@lcc.uma.es Granada, Noviembre 2006 Gracias por su atención http://openpmi.sourceforge.net

More Related