White Paper Noviembre 2011
Cloud Computing Seguridad en Multi-tenancy
Tabla de Contenidos 1. 2. 3. 5. 6.
Resumen ejecutivo ............................................................................... ¡Error! Marcador no definido. Introducción ........................................................................................... ¡Error! Marcador no definido. Asegurando un entorno Multi-‐tenant ......................................................................................................... 5 Seguridad en un ecosistema Multi-‐tenant ................................................................................................ 6 Conclusión .............................................................................................................................................................. 7
Pá
1. Resumen Ejecutivo
En arquitecturas basadas en Cloud Computing, multi-‐tenancy significa que los clientes, las organizaciones y los consumidores están compartiendo infraestructura y bases de datos con el fin de obtener ventajas en costos y rendimiento. En su forma más simple, la "nube" es un entorno basado en Internet de recursos de computación compuesto por servidores, software y aplicaciones que pueden ser accedidos por cualquier persona o empresa que posea una conexión a Internet. Esta oferta de servicios se puede resumir en un consumidor o “tenant” contratando una porción de nube que contenga los recursos necesarios para gestionar los negocios de su organización. Cloud Computing es la base para la infraestructura como servicio (IaaS) y software como servicio (SaaS). Estos servicios ofrecen un sistema de “pay-‐as-‐you-‐go” inversión por arrendamiento del tipo que con poco o ningún coste por adelantado en lugar de comprar todo el hardware y el software directamente. Otros beneficios incluyen la capacidad de escalar fácilmente más servicios y la funcionalidad "as needed" (por ejemplo, Salesforce.com y sus diversos módulos adicionales y de opciones de precio según usuarios). Los beneficios, de hecho, son tan convincentes que el “Cloud Computing” es visto por algunos como la sustitución de los medios tradicionales de obtención de estos servicios y capacidades de negocio para el año 2014. La gran preocupación es cómo asegurar que la seguridad adecuada y el aislamiento protege a los consumidores o “tenants” de estos servicios de los riesgos que suponen el uno al otro.
Pá
2. Introducción ¿Qué es un Tenant? La noción de un tenant en el contexto de Cloud Computing no es tan simple como pudiera parecer. Tome Amazon Web Services (AWS), por ejemplo. AWS es un proveedor de servicios cloud con las ofertas que abarcan alojamiento de aplicaciones, backup y almacenamiento, comercio electrónico, “hosting” y los medios de comunicación, por nombrar sólo algunos. Compañías como Autodesk, Spoon urbana, y Second Life son los “tenants” de la AWS, ya que usan AWS de almacenamiento y recursos informáticos para impulsar su oferta al cliente. Cada empresa también tiene clientes que almacenar los datos como pueden ser preferencias personales, tarjetas de crédito, y esta información los hace consumidores o “tenants” de estas empresas. En el caso de Second Life, por ejemplo, si los tenants crearan empresas y servicios en línea con su cuenta, ellos también tendrán consumidores o tenants y así sucesivamente. En un análisis final, ser un proveedor de servicios cloud es compartir un recurso con una comunidad. Y similar a la construcción de un tenant, el espacio del tenant debe ser separado y aislado de los otros consumidores para lograr un cierto grado de seguridad y privacidad. Definición de Multi-‐Tenancy La idea de multi-‐tenancy, o muchos consumidores compartiendo recursos, es fundamental en el marco del concepto cloud computing. Los proveedores de servicios son capaces de construir las infraestructuras y arquitecturas de red de datos para que sean computacionalmente muy eficientes y altamente escalables de una manera fácil con el objetivo de poder aumentar la capacidad de servir a los muchos clientes que las comparten. Multi-‐tenancy abarca las capas en la que se prestan los servicios. En IaaS, los recursos de infraestructura, como los tenants, comparten hardware, servidores y dispositivos de almacenamiento de datos. En la capa SaaS, los consumidores o tenants se abastecen de una misma aplicación (por ejemplo, Salesforce.com), lo que significa que los datos de múltiples consumidores se suelen guardar en la misma base de datos y pueden incluso físicamente compartir las mismas tablas. Cuando se trata de seguridad, los riesgos del multi-‐tenancy deben abordarse en todas las capas. Las siguientes secciones examinan cómo esto se puede lograr partiendo de un hardware y de una infraestructura de aplicaciones compartida.
Pá
3. Asegurando un entorno Multi-tenancy Hypervisor basado en la segmentación Comunmente es la virtualización la plataforma que sustenta las ofertas IaaS. Productos tales como VMware vSphere, Citrix XenServer y Microsoft Hyper-‐V, proporciona los medios de convertir una sola pieza de hardware en un host físico de muchas máquinas virtuales. Estas máquinas virtuales son las bases de datos, servidores de archivos, servidores de aplicaciones y servidores Web que conforman la red física normal, para permitir que el tráfico que hace que el comercio y la comunicación a través de Internet sea posible. En su esencia, la plataforma de virtualización incluye un muy especializado y optimizado sistema operativo denominado “hipervisor”, que en parte sirve para mapear el tráfico de máquinas virtuales con el hardware subyacente del sistema VM Host para que pueda hacer su camino a través del centro de datos, fuera de Internet y viceversa. La mayoría de los problemas de seguridad en infraestructuras no virtualizadas se relacionan con la convivencia de máquinas cuya propiedad es de diferentes clientes. Esto puede elevar el riesgo de muchos tipos de violaciones tales como el monitoreo de conexión no autorizada, los intentos de acceso sin control de aplicaciones, propagación de malware, y varios ataques. La virtualización, segmentación y el aislamiento comprenden un requisito indispensable para garantizar la seguridad de datos sensibles tales como detalles de los empleados, información de clientes, etc. Dado que el hipervisor intercepta todo el tráfico entre máquinas virtuales y hosts, es el lugar natural para introducir la segmentación de los recursos de los inquilinos IaaS en máquinas virtuales que puedan ser alojados en el mismo sistema VM Host o clúster de host virtual. Sistemas como VMware VMsafe han permitido un ecosistema de soluciones de seguridad que se integran dentro del hipervisor con el propósito de la introducción de una adecuada separación, el aislamiento y la protección del consumidor que permite obtener múltiples clientes. Segmentación en las aplicaciones La virtualización de la capa IaaS es el pilar de las plataformas cloud. Este segmento denominado PaaS (Platform as a service) es el encargado de administrar los recursos de infraestructura a las aplicaciones y garantizar la seguridad y segmentación en las mismas. Las distintas aplicaciones en la nube deben tener entornos separados entre si de tal forma que se protejan los datos físicos y el correcto funcionamiento. Si una aplicación posee un error de código o ha sufrido de un ataque malicioso, de ninguna manera debe poder causar la caída de las demás aplicaciones o interferir en su funcionamiento. Segmentación en bases de datos A diferencia de la capa de infraestructura como servicio (IaaS), en donde los múltiples consumidores pueden compartir recursos físicos, los consumidores (tenants) en la capa SaaS pueden compartir bases de datos.
Pá
Los usuarios de Salesforce.com y SmugMug, por ejemplo, pueden contratar una aplicación que gestiona a sus clientes y fotos, respectivamente. Mientras que el valor está en las interfaces de aplicaciones que hacen que sea fácil de manejar tareas complejas y grandes conjuntos de datos, los mismos datos se almacenan en una base de datos en filas y tablas que los consumidores de Salesforce.com y SmugMug comparten. La identificación del cliente distingue a una fila de la siguiente. De esta manera existe un alto riesgo que un error en el código o de configuración pueda permitir que un cliente vea información de otro y viceversa. Para controlar el acceso a los, existen diversas herramientas y tecnologías disponibles. Lo que se suele implementar un sistema de autenticación y autorización de la petición de acceso para que sólo ciertas filas o campos se puedan modificar sobre la base de las políticas de seguridad que garantizan que el acceso está garantizado. Así como también la implementación de bases de datos separadas para los datos sensibles de clientes y técnicas de cifrado de la información. La segmentación es necesaria en todas las capas Los tipos de seguridad multi-‐tenancy utilizados dependen en gran medida del servicio basado en la nube y la forma en que se ha implementado. La mayoría de los proveedores de servicios cloud disponen de seguridad en todas las capas, principalmente porque tienen multiplicidad de consumidores. El cliente de IaaS debe saber, teniendo en cuenta que sus máquinas virtuales están siendo alojadas en el mismo host junto con las de otros clientes, qué es lo que el proveedor de servicios está haciendo para aislarlos. Para los consumidores SaaS, las preguntas a plantear son: ¿Cómo está protegida la información? ¿Cómo es el acceso autenticado, autorizado, y diferenciado de manera que sólo las personas adecuadas están buscando gestionando sus datos?
Pá
4. Conclusión
En arquitecturas basadas en la nube, multi-‐tenancy significa que los clientes, las organizaciones y los consumidores están compartiendo infraestructura, aplicaciones y bases de datos con el fin de aprovechar las ventajas en términos de costo y rendimiento que vienen con las economías escalables. Las medidas de seguridad son indispensables para asegurarse que los consumidores no incurran en riesgos en términos de pérdida de datos, uso indebido o violación de la privacidad. Estas medidas deben estar presentes en todas las capas de de la arquitectura, IaaS, PaaS, SaaS. Por último los consumidores de servicios cloud, deben preguntar y tener claro conocimiento acerca de las maneras en las que comparten la responsabilidad de su seguridad y la seguridad de sus propios clientes. La falta de experiencia en seguridad no tiene que ser un obstáculo para la adopción de servicios cloud, esta debe ser provista junto con el servicio contratado.
5. Acerca de Enncloud Multi-tenancy Enncloud ofrece en todas las capas mencionadas (IaaS, PaaS y SaaS), las características necesarias para garantizar la seguridad de los consumidores, ofreciendo una arquitectura orientada al desarrollo de servicios y aplicaciones multi-‐tenancy.
Pá
www.enncloud.com International: Carrefour de Rive 1 CH 1207 Geneva España: Paseo del Hontanar, 1 63 28223 Pozuelo de Alarcón (Madrid) mail:
[email protected]
Pá