ASEGURAMIENTO DE LA PRIVACIDAD DE DATOS EN LA NUBE CON EL USO DE PERMIS Abstract Uno de los factores preponderantes a la hora de elegir soluciones del tipo cloud computing o ASP es poder determinar en forma precisa si la información sensible que se está poniendo en juego realmente mantiene el nivel de confidencialidad que cada empresa le otorga. Actualmente se considera un factor importante la transparencia que pueda brindar el proveedor con relación a sus procesos internos en la administración de los datos de sus clientes. Claramente este podría transformarse en un limitador ya que los proveedores podrían no ser muy proclives a estar frecuentemente auditados por los clientes, eso sin considerar los costos que podría representar alguna certificación como por ejemplo SAS 70. El siguiente documento presenta una propuesta de administración de accesos y privilegios basada en una infraestructura PERMIS, la cual tiene por objeto disminuir las brechas de riesgo relacionadas con la potencial vulneración de la información sensible de las empresas, y a la vez aportar un elemento importante a favor de la transparencia de los servicios prestados los proveedores de cloud computing o ASP. Introducción A esta altura de las circunstancias se puede decir que está más que claro que los riesgos asociados a la vulneración de los datos personales privados en Internet representa un riesgo que día a día va tomando mayor relevancia. Sobre todo si se considera que a pesar de ello, los modelos de negocio basados en el cloud computing siguen posicionándose como alternativas altamente viables para la operación de los sistemas de información. Tal como se expone en todos los medios especializados una de las grandes barreras a atravesar para reducir las brechas de seguridad es el rol que juega el proveedor del servicio cloud -e inclusive ASP- a la hora de custodiar los datos privados de sus clientes. ¿Cómo es posible asegurar que no se filtre información sensible si el control y administración final de la infraestructura está en manos de un tercero? ¿Sería posible demostrar en forma efectiva el concepto de Really True Privacy en estos modelos de operación? Un buen punto de partida sería poder implementar un dispositivo de seguridad que le garantice al dueño de la información que la administración del acceso a la misma se encuentra absoluta y exclusivamente bajo su control. Es decir, eliminar la gestión de los usuarios de las actividades propias del proveedor del servicio. Cabe aclarar que en general la responsabilidad de gestionar al menos las cuentas de administración de los usuarios recaen en el proveedor del servicio, y a simple vista no queda claro si las claves que se introducen realmente pueden o no ser vulneradas por alguna persona no autorizada. Privilege and Role Management Infrastructure Standards Validation (PERMIS) Hace algunos años la Universidad de Kent1 llevó adelante una iniciativa cuyo propósito fue demostrar que era posible implementar modelos distribuidos de autenticación y autorización de usuarios. En otras palabras, la iniciativa proponía desarrollar un modelo que reemplazara la tradicional gran base de datos centralizada de administración de accesos, por una infraestructura distribuida cuya administración y control fuera mas democrático, y en donde el “dueño” directo de la información fuera quien administrara los privilegios de sus usuarios. Dicho proyecto se llamó PERMIS (PrivilEge and Role Management Infrastructure Standards Validation) y basó su operación en la utilización conjunta de una PKI (Public Key Infrastructure) como herramienta de identificación (autenticación), certificados de atributos como herramientas de asignación de privilegios (autorización) y repositorios LDAP para la administración de los mismos. Modo de Operación de PERMIS Como es sabido, una Infraestructura de Clave Pública se basa en la utilización de entidades certificadoras y certificados digitales X509 los cuales están asociados a pares de claves públicas/privadas. Todo ello en conjunto asegura que el propietario del certificado sea quien dice ser al momento de acceder a una aplicación. Los certificados de atributos2 por el contrario, no tienen por objeto asegurar la identidad de su propietario ya que los mismos carecen de pares de claves. El propósito de éstos es indicarle al módulo de administración de privilegios de la aplicación, que los respectivos propietarios se encuentran debidamente autorizados para realizar tal o cual tarea dentro del sistema. Eso se logra incluyendo los privilegios de los usuarios dentro de los certificados y firmándolos digitalmente con la clave privada del dueño de la información para asegurar la debida autorización. De esa manera se evita la centralización de la actividad de gestión de usuarios lo que disminuye el riesgo de abuso de privilegios por parte del administrador, y a la vez se distribuye esta responsabilidad entre los diferentes dueños de la información dentro de los sistemas. Esencialmente el proyecto PERMIS propone una arquitectura de software a través de la cual se puede asignar uno o varios administradores responsable de crear las políticas de seguridad que van a regir los accesos y privilegios de los usuarios. A diferencia de los sistemas tradicionales dichas políticas estarán plasmadas en archivos XML los cuales deberán ser posteriormente firmados digitalmente por los respectivos administradores. De la misma manera, cada usuario autorizado a acceder a las funcionalidades tendrá en su poder un certificado PKI que asegure su identidad y por ende su debida autenticación, y un certificado de atributos también firmado por el administrador, el cual tendrá registrados todos sus roles y privilegios dentro de la plataforma. Todos estos elementos quedarán almacenados en uno o varios repositorios LDAP para su correcta administración. La operación del modelo se sustenta en la interacción de varios módulos de software que permiten validar estos tres elementos entre sí, y de esa manera autorizar o denegar el acceso o la utilización de los diferentes componentes que conforman la plataforma. 1 2 http://sec.cs.kent.ac.uk/permis/ RFC-3281 Basado en esto, efectivamente es posible implementar soluciones en donde coexistan varios administradores con sus respectivas políticas y universos de usuarios autorizados. De la misma forma también es posible reemplazar la gestión de accesos y privilegios basada en bases de datos, por una infraestructura distribuida basada en repositorios LDAP. Como aplicar PERMIS en el mundo del cloud computing La pregunta a responder ahora es como aprovechar este modelo para mejorar el intercambio de información a través de Internet, y de esa manera acercarse un poco más al concepto de Really True Privacy. Para ello partamos de la premisa que efectivamente existe un proveedor de servicios cloud o ASP que cuenta con una plataforma tecnológica en la que se encuentra instalada una Entidad Certificadora3 para la emisión de certificados PKI, una Entidad de Atributos para la emisión de certificados de atributos, un repositorio LDAP y los módulos de operación del modelo PERMIS los cuales por cierto son de código abierto. La única responsabilidad del proveedor será asegurar la disponibilidad de la infraestructura sin tener ninguna injerencia sobre la administración de los accesos a la misma. Desde el punto de vista práctico el resultado final sería el siguiente: El usuario que se suscribiera al servicio debería solicitar la creación de su certificado PKI, para lo cual se generaría la clave privada en forma local a su PC y su correspondiente clave pública se adjuntaría al certificado el cual a su vez se publicaría dentro de la plataforma. Con la adquisición del certificado el usuario se acreditaría el rol de administrador de su “ecosistema de información” y por ende tendría todas las atribuciones para crear sus propias políticas de seguridad, instalar aplicaciones, crear directorios, etc. De la misma forma, y de ser factible tecnológicamente, dicho administrador podría generar claves de encripción que permitieran cifrar el contenido del ecosistema. Una vez creadas las políticas y configurado el ecosistema, el administrador podría configurar las cuentas de los usuarios autorizados generando sus respectivos certificados de atributos e invitándolos a generar sus correspondientes certificados PKI de acceso. Cada usuario entonces podría identificarse en la nube con su certificado PKI, y una vez dentro del ecosistema, podría acceder a las distintas funcionalidades utilizando su certificado de atributos. La infraestructura PERMIS sería entonces la encargada de validar que los privilegios indicados en los certificados de atributos se encuentren debidamente autorizados por el dueño del ecosistema y que además sean los correctos al momento de intentar acceder a las funcionalidades. Algunos elementos adicionales que vale la pena destacar es que con esta arquitectura es posible implementar delegación de atribuciones de forma de tener varios administradores por ecosistema. De la misma manera, sería posible que un usuario pudiera ingresar con un único certificado PKI a varios ecosistemas utilizando a su vez diferentes certificados de atributos emitidos por diferentes administradores. 3 Este elemento podría no ser obligatorio si se considera la adquisición de certificados en entidades reconocidas mundialmente Conclusiones Cloud computing puede sin dudas ser el modelo de negocios que rija la gestión informática de los próximos años. Independientemente de los riesgos que este pueda representar no va a ser fácil convencer a los directivos de las empresas de su inconveniencia. Existe una creciente intención de encontrar mecanismos que disminuyan estas brechas y demuestren a las claras que es posible tercerizar un servicio de alto impacto sin perder el control sobre la información sensible. Un buen comienzo sería lograr la total independencia del proveedor del servicio de cloud sobre la administración de esa información. PERMIS es un mecanismo que, con las debidas adaptaciones, podría asegurar ese primer paso. Daniel A. Vénere CISM [email protected] Abril 2011