Grid

438 views
399 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
438
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Grid

  1. 1. Introducción al Grid Vanessa Hamar Grupo Grid Universidad de Los Andes
  2. 2. Contenido <ul><li>Ambientes Grid </li></ul><ul><li>Requerimientos de Seguridad </li></ul><ul><li>Manejo de usuarios </li></ul><ul><li>Estado actual de la seguridad </li></ul><ul><li>Infraestructura de seguridad en Grid </li></ul><ul><li>Policy Management Authority </li></ul><ul><li>Conclusiones </li></ul>
  3. 3. Ambientes Grid
  4. 4. Introducción <ul><li>Los Grids computacionales han emergido con la finalidad de mejorar el rendimiento del sistema en su disponibilidad, escalabilidad, confiabilidad y seguridad mediante la integración de recursos heterogéneos compartidos . </li></ul>
  5. 5. Idea <ul><li>La idea del Grid es muy parecida a una red eléctrica: </li></ul><ul><ul><li>Cualquier hardware que tenga conexión a la red debe poder ser integrada al Grid. </li></ul></ul><ul><ul><li>La conexión es provista en cualquier lugar. </li></ul></ul><ul><ul><li>Altamente confiable (Todos los días a toda hora). </li></ul></ul><ul><ul><li>Se comparten recursos (hardware, software, data, dispositivos de almacenamiento). </li></ul></ul><ul><ul><li>Siempre existirá suficiente capacidad de calculo. </li></ul></ul><ul><ul><li>Es transparente al usuario. </li></ul></ul><ul><ul><li>Simple. </li></ul></ul><ul><ul><li>Disponible en cualquier momento. </li></ul></ul>
  6. 6. ¿ Qué es Grid? <ul><li>Un Grid Computacional es una forma de computación distribuida que comprende coordinar y compartir recursos, aplicaciones, datos, almacenamiento o recursos de red entre organizaciones dinámicas y geográficamente distribuidas. </li></ul>
  7. 7. ¿ Por qué hoy? <ul><li>Disponibilidad y confiabilidad en el ancho de banda, además, existe una red global, Internet. </li></ul><ul><li>El almacenamiento de data se dobla cada 12 meses. </li></ul><ul><li>El crecimiento dramático de información en línea (1 petabyte = 1000 terabyte = 1,000,000 gigabyte) </li></ul><ul><ul><li>2000 ~0.5 petabyte </li></ul></ul><ul><ul><li>2005 ~10 petabytes </li></ul></ul><ul><ul><li>2010 ~100 petabytes </li></ul></ul><ul><ul><li>2015 ~1000 petabytes? </li></ul></ul>
  8. 8. Ventajas <ul><li>Aumentar la capacidad de procesamiento. </li></ul><ul><li>Aprovechar los recursos de la organización de manera más eficiente </li></ul><ul><li>Disminuye el tiempo de procesamiento. </li></ul><ul><li>Almacenar gran cantidad de datos y compartirlos. </li></ul><ul><li>Es una forma económica de incrementar los recursos en la organización. </li></ul><ul><li>Procesadores </li></ul><ul><li>Tiempo </li></ul>N1+N2 N3+N4 N7+N8 N(n-1)+Nn N5+N6 R1+N3 R2+N4 R(n-1)+Nn R1+R2+…+RN
  9. 9. Aplicaciones <ul><li>Cualquier ciencia cuyas necesidades comprendan: </li></ul><ul><ul><li>Lograr una alta resolución en las imágenes. </li></ul></ul><ul><ul><li>Capturar y guarda información. </li></ul></ul><ul><ul><li>Simular para entender mejor la data. </li></ul></ul><ul><ul><li>Procesar data en tiempo real. </li></ul></ul><ul><ul><li>Hacer que esta data este disponible en cualquier parte del mundo. </li></ul></ul><ul><ul><ul><li>Con el Grid las colaboraciones son globales y la data es compartida </li></ul></ul></ul><ul><ul><li>Simular, ya que es una herramienta altamente aceptada entre los científicos. </li></ul></ul><ul><li>e-Science </li></ul>
  10. 10. ¿ Que debe proveer? <ul><li>Autentificación </li></ul><ul><li>Políticas de Autorización </li></ul><ul><li>Descubrimiento de recursos </li></ul><ul><li>Ubicación de recursos </li></ul><ul><li>Acceso a data remota </li></ul><ul><li>Alta velocidad de transferencia de data </li></ul><ul><li>Manejo de Recursos </li></ul><ul><li>Manejo de Fallas </li></ul><ul><li>Monitoreo </li></ul><ul><li>Garantizar el rendimiento </li></ul><ul><li>Detección de intrusos </li></ul><ul><li>Manejo de cuentas y pagos. </li></ul><ul><li>Adaptación, etc. </li></ul>
  11. 11. Conceptos relacionados <ul><li>Middleware en términos computacionales es utilizado para describir un agente que actúa como un intermediario, o como un miembro de un grupo de intermediarios, entre diferentes componentes en un proceso transaccional. </li></ul>
  12. 12. Conceptos relacionados <ul><li>Entidad </li></ul><ul><ul><li>Un usuario, un programa o una maquina. </li></ul></ul><ul><li>Credenciales </li></ul><ul><ul><li>Alguna data que provea una prueba de identidad. </li></ul></ul><ul><li>Autentificación </li></ul><ul><ul><li>Verifica la identidad de la entidad. </li></ul></ul><ul><li>Autorización </li></ul><ul><ul><li>Mapea una entidad con algún conjunto de privilegios. </li></ul></ul><ul><li>Confidencialidad </li></ul><ul><ul><li>Encripta el mensaje de tal manera que solo el receptor pueda entenderlo. </li></ul></ul><ul><li>Integridad </li></ul><ul><ul><li>Asegura que el mensaje no haya sido alterado en la transmisión. </li></ul></ul><ul><li>No-repudiación </li></ul><ul><ul><li>Imposibilidad de negar la autenticidad de una firma digital </li></ul></ul>
  13. 13. Componentes <ul><li>Data </li></ul><ul><li>Patrones de acceso </li></ul>“ Organizaciones Virtuales” Sitios <ul><li>Recursos Heterogéneos </li></ul><ul><li>Patrones de acceso </li></ul><ul><li>Políticas locales </li></ul><ul><li>Membership </li></ul>Grid <ul><li>Poblaciones grandes y dinámicas </li></ul><ul><li>Diferentes cuentas en diferentes sitios </li></ul><ul><li>Data personal y confidencial </li></ul><ul><li>Privilegios heterogéneos (roles) </li></ul><ul><li>Single Sign-On </li></ul>Usuarios
  14. 14. Envío de trabajos Replica Catalogue UI JDL Logging & Book-keeping Resource Broker Job Submission Service Storage Element Compute Element Information Service Job Status DataSets info Author. &Authen. Job Submit Event Job Query Job Status Input “sandbox” Input “sandbox” + Broker Info Globus RSL Output “sandbox” Output “sandbox” Job Status Publish grid-proxy-init Expanded JDL SE & CE info
  15. 15. Seguridad en ambientes Grid
  16. 16. Los riesgos <ul><li>Recibir ataques de otros sitios </li></ul><ul><ul><li>Un gran conjunto de granjas de maquinas distribuidas </li></ul></ul><ul><li>Distribución de data de manera inapropiada y acceso a información sensitiva. </li></ul><ul><ul><li>Capacidades de almacenamiento masivas distribuidas geográficamente </li></ul></ul><ul><li>Explotación de huecos de seguridad. </li></ul><ul><ul><li>Ambientes dinámicos, heterogéneos y complejos. </li></ul></ul><ul><li>Daños causados por virus, gusanos, etc. </li></ul>
  17. 17. Requerimientos de seguridad <ul><li>Se requiere una arquitectura de seguridad que permita de manera dinámica, escalable la protección de los recursos, los datos almacenados y las salidas de los trabajos enviados por los usuarios. </li></ul>
  18. 18. Requerimientos de seguridad <ul><li>Integración con sistemas y tecnologías existentes. </li></ul><ul><ul><li>No se puede utilizar una única manera de seguridad dentro del Grid. </li></ul></ul><ul><ul><li>Las infraestructuras de seguridad existentes no pueden ser reemplazadas. </li></ul></ul>
  19. 19. Requerimientos de la seguridad en Grid <ul><li>Autentificación </li></ul><ul><ul><li>Pueden existir múltiples mecanismos de autentificación. </li></ul></ul><ul><li>Delegación </li></ul><ul><ul><li>Las políticas de delegación deben especificarse. </li></ul></ul><ul><li>Single sign-on </li></ul><ul><ul><li>Se le debe permitir a un usuario el acceso continuo y correcto por un periodo de tiempo razonable utilizando una única autentificación. </li></ul></ul>
  20. 20. Requerimientos de la seguridad en Grid <ul><li>Renovación de credenciales </li></ul><ul><ul><li>Un trabajo iniciado por un usuario puede tomar más tiempo que el tiempo provisto por la credencial del usuario. </li></ul></ul><ul><ul><li>En tal caso, el usuario necesita ser notificado con anterioridad de la expiración de las credenciales, o renovarla automáticamente. </li></ul></ul><ul><li>Autorización </li></ul><ul><ul><li>Los recursos deben ser utilizados bajo ciertas políticas de autorización. </li></ul></ul><ul><ul><li>Un proveedor de servicios puede especificar sus propias políticas de autorización. </li></ul></ul>
  21. 21. Requerimientos de la seguridad en Grid <ul><li>Confidencialidad </li></ul><ul><ul><li>La confidencialidad de los mecanismos de comunicación de los mensajes o documentos son soportados. </li></ul></ul><ul><li>Integridad de los mensajes </li></ul><ul><ul><li>Se debe asegurar que cambios no autorizados de los mensajes y los documentos deben ser detectados. </li></ul></ul><ul><li>Privacidad </li></ul><ul><ul><li>Tanto quien requiere el servicio como el que lo provee deben cumplir las políticas de privacidad. </li></ul></ul><ul><li>Otros requerimientos </li></ul><ul><ul><li>Login seguro, intercambio de políticas, … </li></ul></ul>
  22. 22. Requerimientos de seguridad <ul><li>De esto se obtiene que se debe hacer un especial énfasis en: </li></ul><ul><ul><li>Seguridad en el manejo de Usuarios </li></ul></ul><ul><ul><li>Seguridad en el manejo de datos </li></ul></ul>
  23. 23. Manejo de usuarios en ambientes Grid
  24. 24. Organizaciones Virtuales (VOs) <ul><li>La manera en que se coordinan y comparten estos recursos es usando Organizaciones Virtuales de una manera dinámica, escalable y distribuida. </li></ul><ul><li>La meta es crear organizaciones virtuales entre una o más organizaciones físicas (o dominios administrativos). </li></ul><ul><li>Las organizaciones virtuales requieren soluciones comunes para el manejo de recursos, para manejar y acceder a la data, a las aplicaciones y a los servicios de información. </li></ul>
  25. 25. Estructura de una VO <ul><li>Una VO puede tener una estructura jerárquica compleja con grupos y subgrupos. </li></ul><ul><li>Esta estructura es necesaria para dividir a los usuarios de acuerdo a sus tareas y a las instituciones a las cuales pertenecen. Estos grupos pueden ser vistos de manera independiente. </li></ul>
  26. 26. VOs Dinámicas <ul><li>Los usuarios pueden pertenecer a varias VOs, al igual que los proveedores de recursos pueden proveer una parte de sus recursos a varias VOs. </li></ul>
  27. 27. VOs Dinámicas
  28. 28. VOs Dinámicas <ul><li>Una VO puede ser creada para satisfacer algún requerimiento y eliminada después que este requerimiento es alcanzado. </li></ul><ul><li>Los usuarios se pueden unir a las VOs o dejarlas. </li></ul><ul><li>Los proveedores de recursos pueden unirse o dejar las VOs. </li></ul><ul><li>Los proveedores de recursos pueden cambiar dinámicamente las políticas de acceso a sus recursos. </li></ul><ul><li>Los administradores de las VOs pueden manejar a los usuarios de manera dinámica. </li></ul>
  29. 29. VOs Dinámicas <ul><li>Interoperabilidad con diferentes ambientes </li></ul><ul><ul><li>La seguridad de los servicios de diversos dominios pueden interactuar. </li></ul></ul><ul><ul><li>A nivel de protocolo se intercambian mensajes. </li></ul></ul><ul><ul><li>A nivel de políticas cada entidad puede especificar su política. </li></ul></ul><ul><ul><li>A nivel de identidad, un usuario puede ser identificado de un dominio a otro. </li></ul></ul>
  30. 30. Estado actual de la seguridad en ambientes Grid
  31. 31. Autentificación <ul><li>Una única autentificación (“pasaporte”) </li></ul><ul><ul><li>Firmado por una Autoridad de Certificación en la que todos confían. </li></ul></ul><ul><ul><li>Reconocido por varios proveedores de recursos, usuarios y VOs. </li></ul></ul><ul><ul><li>Satisface los requerimientos de persistencia. </li></ul></ul><ul><ul><li>Por sí mismo no garantiza el acceso a los recursos, pero provee un único puente entre un identificador y el sujeto. </li></ul></ul>
  32. 32. Autentificación Usuario Autoridad de Certificación Public key Private key certificado CA Recursos (sitio)
  33. 33. Autentificación y delegación <ul><li>El uso de Certificados X.509 </li></ul><ul><ul><li>La autentificación utilizando un único nombre provisto por un certificado bajo autoridades de certificación compartidas. </li></ul></ul><ul><ul><li>Delegación y single sign-on a través del uso de certificados proxies. </li></ul></ul>
  34. 34. Autentificación y delegación <ul><li>Delegación de certificados proxy </li></ul><ul><ul><li>Generación remota de proxies de usuarios </li></ul></ul><ul><ul><li>Generación de una nueva clave privada y certificado utilizando la clave original. </li></ul></ul><ul><ul><li>Los passwords o la clave privada no son enviados a través de la red. </li></ul></ul>
  35. 35. Autentificación y delegación <ul><li>Autentificación del Username y Password soportado en GT4 </li></ul><ul><ul><li>El estándar WS-Security es opuesto al de las credenciales X.509. </li></ul></ul><ul><ul><li>Solo provee autentificación y no características avanzadas como delegación, confidencialidad, integridad, etc. </li></ul></ul>
  36. 36. Autorización <ul><li>Autorización por VO (“visa”) </li></ul><ul><ul><li>Concede acceso a una persona/servicio a través de una VO. </li></ul></ul><ul><ul><li>Se basa en el nombre del “pasaporte” </li></ul></ul><ul><ul><li>Reconocido por los propietarios de los recursos </li></ul></ul><ul><ul><li>Los proveedores pueden obtener listas de usuarios autorizados por VO. </li></ul></ul><ul><li>Los usuarios necesitan delegar sus derechos a proxies en otros sistemas. </li></ul><ul><li>Los proveedores de recursos necesitan una autorización para que los proxies de los usuarios puedan ser enviados a sus sistemas. </li></ul><ul><li>La delegación es el proceso de transferir derechos de los usuarios a tareas o proxies. </li></ul><ul><ul><li>Cuando se delegan muchos derechos, el abuso de los derechos puede hacerse posible. </li></ul></ul><ul><ul><li>Cuando se restringen mucho los derechos que pueden ser delegados los proxies no pueden ser ejecutados completamente. </li></ul></ul>
  37. 37. Autorización <ul><li>Entonces, es necesario un servicio de autorización en el cual los usuarios deleguen derechos restringidos a los proxies y los proveedores de recursos puedan chequear los usos validos de los derechos delegados. </li></ul>
  38. 38. Autorización <ul><li>Pull Model </li></ul><ul><ul><li>Concede los derechos del usuario solo en condiciones especificas. </li></ul></ul><ul><ul><li>Delegación de los derechos que especifica el usuario. </li></ul></ul><ul><ul><li>Maneja los derechos entre los usuarios y los proveedores de recursos </li></ul></ul><ul><ul><li>Ejemplo: Akenti </li></ul></ul>
  39. 39. Autorización <ul><li>Push Model </li></ul><ul><ul><li>Concede los derechos de los usuarios de acuerdo a sus roles. </li></ul></ul><ul><ul><li>Administra los derechos de manera centralizada. </li></ul></ul><ul><ul><li>Ejemplo: CAS, PERMIS, VOMS </li></ul></ul>
  40. 40. Autorización <ul><li>Community Authorization Service (CAS) </li></ul><ul><ul><li>Permite políticas de autorización de grano fino. </li></ul></ul><ul><ul><li>Los proveedores de recursos pueden generar políticas para dominios externos. </li></ul></ul><ul><ul><li>CAS permite crear políticas para los usuarios locales. </li></ul></ul><ul><ul><li>Los usuarios que realizan alguna petición obtienen las capacidades de sus CAS locales. </li></ul></ul>
  41. 41. Autorización <ul><li>Virtual Organization Membership Service ( VOMS) </li></ul><ul><ul><li>Provee información sobre el usuario y sus relaciones con las diferentes VOs </li></ul></ul><ul><ul><li>Grupos, roles (administrador, estudiante, etc), capacidades, etc. </li></ul></ul><ul><li>Caracteristicas </li></ul><ul><ul><li>Unico login: voms-proxy-init solo al comienzo de la sesión </li></ul></ul><ul><ul><li>Tiempo de expiración: la información de la autorización es valida solo por un periodo de tiempo definido. </li></ul></ul><ul><ul><li>Compatibilidad: La información relacionada a la VO y al certificado del proxy del usuario. </li></ul></ul><ul><ul><li>Múltiples VOs: El usuario puede identificarse a si mismo en múltiples VOs. </li></ul></ul><ul><ul><li>Seguridad: Todas las comunicaciones cliente servidor son seguras y autentificadas. </li></ul></ul>
  42. 42. Autorización <ul><li>Local Centre Authorization Service (LCAS) </li></ul><ul><ul><li>Chequea si el usuario esta autorizado. Si esta en el grid-mapfile </li></ul></ul><ul><ul><li>Chequea si el usuario tiene tiempo suficiente en el proxy para aceptar los trabajos. </li></ul></ul><ul><li>Local Credential Mapping Service (LCMAPS) </li></ul><ul><ul><li>Mapea las credenciales del grid a credenciales locales. </li></ul></ul><ul><ul><li>(ejemplo: UNIX uid/gid, AFS tokens, etc.) </li></ul></ul><ul><ul><li>Utiliza el gridmapfile basado solo en el subject del certificado. </li></ul></ul><ul><ul><li>Mapea los grupos y roles de la VOMS </li></ul></ul>
  43. 43. Autorización <ul><li>Problemas </li></ul><ul><ul><li>Akenti </li></ul></ul><ul><ul><ul><li>Las condiciones y los derechos se escriben de manera manual. </li></ul></ul></ul><ul><ul><ul><li>Los manejos de los derechos son hechos por los proveedores de recursos y los usuarios. </li></ul></ul></ul><ul><ul><li>CAS </li></ul></ul><ul><ul><ul><li>Delega todos los derechos de los roles de los usuarios. </li></ul></ul></ul><ul><ul><ul><li>No delega derechos restringidos </li></ul></ul></ul>
  44. 44. Infraestructura de Seguridad en Grid
  45. 45. Grid Security Infraestructure (GSI) <ul><li>Los servicios fundamentales de seguridad son los provistos por el Globus Toolkit </li></ul><ul><li>Basado en las tecnología estándar PKI </li></ul><ul><ul><li>Protocolo SSL para la autentificación y la protección de los mensajes. </li></ul></ul><ul><ul><li>Una-vía, relaciones de confianza entre autoridades de certificación </li></ul></ul><ul><ul><li>Certificados X.509 para comprobar la identidad de usuarios, servicios, máquinas. </li></ul></ul><ul><ul><li>Identidad dentro del Grid </li></ul></ul><ul><ul><ul><li>Un usuario es mapeado a identidades locales utilizando el distinguished name del certificado del usuario. </li></ul></ul></ul>
  46. 46. Grid Security Infraestructure (GSI) <ul><li>Certificados Proxy X.509 </li></ul><ul><ul><li>Permiten single sign-on </li></ul></ul><ul><ul><li>Permite a los usuarios delegar sus identidades y derechos a los servicios. </li></ul></ul>
  47. 47. Grid Security Infraestructure (GSI) user service grid - map file authentication info user cert (long life ) proxy cert (short life ) CA CA CA crl update low frequency high frequency host cert (long life ) grid-proxy-init
  48. 48. Shibboleth <ul><li>Shibboleth está basado en estándares, es un middleware que provee un Web Single Sign On dentro o entre diferentes organizaciones. Esto le permite a los sitios tomar decisiones para dar accesos individuales a recursos en línea de una preservando la privacidad. </li></ul>
  49. 49. Policy Management Authority
  50. 50. International Grid Trust Federation <ul><li>IGTF es el “glue” para los Grids. </li></ul><ul><li>IGTF esta compuesto de 3 Policy Management Authority ( PMAs) por región, cada una soporta una zona separada en el mundo: EUGridPMA, TAGPMA y APGridPMA. </li></ul>
  51. 51. International Grid Trust Federation TAGPMA APGridPMA
  52. 52. International Grid Trust Federation <ul><li>Miembros The Americas Grid PMA (TAGPMA) </li></ul><ul><ul><li>Dartmouth College </li></ul></ul><ul><ul><li>Texas High Energy Grid </li></ul></ul><ul><ul><li>Fermi National Laboratory </li></ul></ul><ul><ul><li>San Diego Supercomputing Center </li></ul></ul><ul><ul><li>TeraGrid </li></ul></ul><ul><ul><li>Open Science Grid </li></ul></ul><ul><ul><li>DOEGrids </li></ul></ul><ul><ul><li>CANARIE Texas High Energy Grid </li></ul></ul><ul><ul><li>EELA </li></ul></ul><ul><ul><li>Venezuela: ULA </li></ul></ul><ul><ul><li>Chile: REUNA </li></ul></ul><ul><ul><li>Mexico: UNAM </li></ul></ul><ul><ul><li>Argentina: UNLP </li></ul></ul><ul><ul><li>Brazil: UFF </li></ul></ul>
  53. 53. Conclusiones
  54. 54. Conclusiones <ul><li>Una de las diferencias criticas entre la seguridad en el Grid y la seguridad en los sitios o las maquinas es la autonomía de los sitios. </li></ul><ul><li>Existe la necesidad de poner de acuerdo a una gran cantidad de personas en sitios distribuidos para establecer las políticas. </li></ul>
  55. 55. Conclusiones <ul><li>Las maneras de autentificar y autorizar a las entidades dentro del grid siguen evolucionando. </li></ul>
  56. 56. Sitios en Internet <ul><li>http:// www.grid.org </li></ul><ul><li>http://www.globus.org </li></ul><ul><li>https://gilda.ct.infn.it </li></ul><ul><li>http://www.eu-eela.org </li></ul><ul><li>http:// www.tagpma.org/ </li></ul><ul><li>http://shibboleth.internet2.edu/ </li></ul><ul><li>http:// www.gridsystems.com </li></ul><ul><li>http:// www.cactuscode.org / </li></ul><ul><li>http:// www.accessgrid.org </li></ul><ul><li>http://www- fp.mcs.anl.gov /~foster/ </li></ul><ul><li>http:// www.neesgrid.org / </li></ul>

×