Compartir a través de


Línea de base de cumplimiento, seguridad y gobernanza de Azure para Kubernetes habilitado para Azure Arc

En este artículo se proporcionan consideraciones de diseño clave y procedimientos recomendados para la seguridad, la gobernanza y el cumplimiento que debe usar al compilar la implementación de Kubernetes habilitado para Azure Arc. Aunque la documentación de la zona de aterrizaje de escala empresarial abarca la gobernanza y la seguridad como temas independientes, estas áreas de diseño críticas se consolidan como un único tema de Kubernetes habilitado para Azure Arc.

Azure Policy y Microsoft Defender for Cloud son herramientas nativas de la nube que permiten la implementación de estos controles, informes y tareas de corrección de forma automatizada y a gran escala. Al combinarlos con Kubernetes habilitado para Azure Arc, puede ampliar las directivas de gobernanza y las comprobaciones de seguridad a cualquier clúster de Kubernetes en el entorno local o multinube.

Architecture

En el diagrama siguiente se muestra la arquitectura de referencia conceptual que muestra las áreas de diseño de seguridad, cumplimiento y gobernanza para Kubernetes habilitado para Azure Arc:

Diagrama que muestra seguridad, gobernanza y cumplimiento a escala empresarial de Kubernetes para Azure Arc.

Consideraciones de diseño

A medida que los recursos híbridos y multinube formen parte de Azure Resource Manager, puede administrarlos y controlarlos desde Azure. Esta sección contiene consideraciones de diseño que debe tener en cuenta al planear la seguridad y gobernanza de los recursos de clúster de Kubernetes habilitados para Azure Arc.

Revise las áreas de diseño de seguridad y gobernanza de las zonas de aterrizaje de Azure para evaluar el efecto de las Kubernetes habilitado para Azure Arc en los modelos generales de gobernanza y seguridad.

Aprovisionamiento del agente

Defina una estrategia para aprovisionar el agente de Kubernetes habilitado para Azure Arc y use el principio de privilegios mínimos al crear la entidad de servicio de incorporación. Considere la posibilidad de usar la automatización para la inscripción masiva.

Administración de agentes

Los agentes de Kubernetes habilitados para Azure Arc desempeñan un papel fundamental en las operaciones híbridas de los clústeres de Kubernetes habilitados para Azure Arc, ya que permiten administrar clústeres desde Azure. Implemente soluciones que realicen un seguimiento del estado de conectividad del agente. Asegúrese de definir un proceso para actualizar los agentes de Kubernetes habilitados para Azure Arc.

Control de acceso basado en roles (RBAC)

Defina roles administrativos, de operaciones y de desarrollador dentro de su organización que sean responsables de las operaciones diarias en los clústeres híbridos. La asignación de cada equipo a acciones y responsabilidades determina los roles de control de acceso basado en rol (RBAC) de Azure y ClusterRoleBinding y RoleBinding de Kubernetes.

Considere la posibilidad de usar una matriz RACI para respaldar este esfuerzo y crear controles en la jerarquía de ámbito de administración que defina, al tiempo que sigue las instrucciones de administración de coherencia de los recursos y el inventario.

Para obtener más información, consulte Administración de identidades y acceso para Kubernetes habilitado para Azure Arc.

Administración de secretos y certificados

Proteja los secretos y certificados mediante Azure Key Vault e implemente su extensión en los clústeres de Kubernetes habilitados para Azure Arc a través de Container Storage Interface (CSI).

Residencia de datos

Tenga en cuenta la región de Azure en la que planea aprovisionar el clúster de Kubernetes habilitado para Azure Arc. Comprenda qué datos se recopilan de los recursos y planee en consecuencia en función de los requisitos de residencia de datos para su organización.

Habilitación y protección de configuraciones de GitOps

Las configuraciones de GitOps aplican un estado del sistema deseado y son una herramienta importante para el seguimiento del cumplimiento de clústeres de Kubernetes habilitado para Arc. Al trabajar con configuraciones de GitOps, considere la posibilidad de proteger el acceso al sistema de control de código fuente a través de los controles de acceso y red adecuados.

Administración e informes de directivas

Defina un plan de gobernanza para los clústeres híbridos de Kubernetes que se traducen en directivas de Azure que auditan y aplican estándares de la organización a gran escala. Por ejemplo, puede aplicar una directiva sourceControlConfiguration a clústeres de Kubernetes para asegurarse de que los clústeres obtienen su origen de confianza para las cargas de trabajo y las configuraciones de un repositorio git definido, y para realizar un seguimiento del cumplimiento mediante Azure Policy.

Estrategia de administración de registros

Revise las materias de administración críticas de diseño consideraciones de diseño y recomendaciones y planee recopilar métricas y registros de los recursos híbridos en un área de trabajo de Log Analytics para su posterior análisis y auditoría.

Protección contra amenazas y administración de la posición de seguridad en la nube

Aplique la protección contra amenazas e introduzca controles para detectar configuraciones incorrectas de seguridad y realizar un seguimiento del cumplimiento. Use la inteligencia de Azure para proteger las cargas de trabajo híbridas frente a amenazas. Habilite la supervisión de la línea de base de seguridad, la administración de la posición de seguridad y la protección contra amenazas para todas las suscripciones que contengan Kubernetes habilitado para Azure Arc a través de Microsoft Defender para contenedores.

Protección del acceso al clúster

Planee proteger el acceso a la API de Kubernetes. La característica de conexión de clúster de Kubernetes habilitado para Azure Arc proporciona conectividad con el servidor de API sin necesidad de habilitar ningún puerto de entrada.

Mejora de la observabilidad y la seguridad de los microservicios

La implementación de una malla de servicio puede ayudar con la autenticación, la autorización, la seguridad y la visibilidad de las aplicaciones basadas en microservicios. Kubernetes habilitado para Azure Arc simplifica la implementación de Open Service Mesh (OSM) como una extensión.

Recomendaciones de diseño

Esta sección contiene recomendaciones de diseño que debe seguir al planear la seguridad y gobernanza de los recursos de clúster de Kubernetes habilitados para Azure Arc.

Aprovisionamiento del agente

  • Defina una estrategia para incorporar los clústeres a Azure Arc, incluido un método de automatización para la inscripción masiva. Establezca un plan formal que tenga en cuenta el ámbito de la implementación e incluya objetivos, criterios de selección, criterios de éxito, planes de entrenamiento, reversión y riesgos.

  • Puede usar una entidad de servicio para integrar el aprovisionamiento de agentes como parte de las canalizaciones de integración continua e implementación continua (CI/CD). Debe limitar los privilegios de esta entidad de servicio y asignar solo los roles necesarios para incorporar Kubernetes a Azure (el rol "Clúster de Kubernetes: incorporación de Azure Arc"), ya que solo se puede usar para incorporar Kubernetes, no deshacer el proceso ni eliminar el recurso.

Administración de agentes

Los agentes de Azure Arc son componentes clave de Kubernetes habilitado para Azure Arc, que contienen varios componentes lógicos que desempeñan un papel en las operaciones de seguridad, gobernanza y administración.

Si un agente deja de enviar latidos a Azure, se queda sin conexión o pierde la conectividad a Azure, no puede realizar tareas operativas en él. Desarrolle un plan para saber cómo se le notificará si estos escenarios se producen y cómo debe responder su organización.

Puede usar el registro de actividad de Azure para configurar alertas de Resource Health y mantenerse informados sobre el estado de mantenimiento actual e histórico de los pods del agente. Para comprender cómo administrar correctamente el agente, revise el área de diseño crítica de administración.

Si el servicio no ha recibido un latido del agente durante 15 minutos, el clúster de Kubernetes habilitado para Azure Arc se muestra como sin conexión. Para asegurarse de que el agente puede conectarse de forma segura a los puntos de conexión de Azure Arc, revise el área de diseño crítica de conectividad de Kubernetes habilitada para Azure Arc.

Control de acceso basado en roles (RBAC)

Una vez incorporado un clúster de Kubernetes, puede asignar Azure RBAC al recurso de clúster de Kubernetes habilitado para Azure Arc.

Siga el principio de privilegios mínimos al asignar roles como "Colaborador" o "Propietario" que pueden realizar operaciones como la implementación de extensiones que realizan acciones como "ClusterAdmin" y tienen un efecto en todo el clúster. Estos roles deben usarse con precaución, bien para limitar el radio de exposición posible o bien para reemplazarlos finalmente por roles personalizados.

Debe aplicar el mismo principio de RBAC a los datos confidenciales que se envían al área de trabajo de Log Analytics de Azure Monitor. Kubernetes habilitado para Azure Arc proporciona acceso RBAC a los datos de registro recopilados por el agente de Log Analytics; estos datos están almacenados en el área de trabajo de Log Analytics en la que está registrado el clúster. Para obtener información sobre cómo implementar el acceso granular al área de trabajo de Log Analytics, consulte Diseño de la implementación de registros de Azure Monitor.

La integración del clúster de Kubernetes habilitado para Azure Arc con Microsoft Entra ID permite usar asignaciones de roles de Azure para un control más pormenorizado sobre quién tiene acceso y permisos para los recursos de clúster de Kubernetes habilitados para Azure Arc.

Nota:

Esta integración funciona de forma nativa con los tipos de objetos ClusterRoleBinding y RoleBinding de Kubernetes y consolida eficazmente la autorización en el clúster de Kubernetes con Microsoft Entra ID como servicio central de administración de identidades y acceso. Con Microsoft Entra ID, obtendrá una auditoría completa y un seguimiento de los cambios realizados en el clúster, así como los eventos de autorización.

La integración con Microsoft Entra ID también le permite acceder a las funcionalidades de seguridad avanzada, que debe usar para configurar:

  • Acceso condicional con Microsoft Entra ID. Puede encontrar más información sobre el acceso condicional en la introducción al acceso condicional.
  • Reglas de acceso Just-In-Time (JIT) para tareas que necesitan permisos elevados. Tener acceso permanente para algunos usuarios a la información confidencial o a la configuración de red crítica en Kubernetes crea una posible vía para las cuentas en peligro o las actividades de amenazas internas. La administración de acceso con privilegios puede ayudarle a proteger su organización frente a infracciones y le ayuda a cumplir los procedimientos recomendados de cumplimiento limitando el acceso permanente a datos confidenciales o al acceso a las opciones de configuración críticas.

Administración de secretos y certificados

No almacene secretos o certificados en el código de la aplicación o en los sistemas de archivos. Los secretos nunca deben almacenarse en almacenes de claves y proporcionarse a los contenedores en el entorno de ejecución según sea necesario.

Considere la posibilidad de usar la extensión de Azure Key Vault para administrar secretos y certificados en los clústeres de Kubernetes habilitados para Azure Arc. La extensión de Key Vault le permite administrar el ciclo de vida del certificado en las implementaciones de Kubernetes, como se muestra en el diagrama siguiente.

Un diagrama que muestra la integración de Kubernetes para Azure Arc y de Key Vault.

Habilitación y protección de configuraciones de GitOps

GitOps es un componente esencial de cualquier estrategia de TI que tome un enfoque totalmente automatizado para las operaciones. GitOps proporciona funcionalidades de escala, coherencia, seguimiento y auditoría para cualquier implementación.

El uso de GitOps puede simplificar la implementación de varias aplicaciones en clústeres y entornos mientras realiza el seguimiento y la aplicación del estado deseado del sistema mediante declaración con Git. Cuando se usa Git como origen único de confianza y como herramienta central para todas las implementaciones, se convierte en la mejor manera de realizar un seguimiento de los estados del clúster, tener en cuenta los cambios y aprobaciones a lo largo del tiempo, facilitar la investigación de errores y habilitar la automatización en entornos distribuidos.

Al agregar configuraciones de GitOps, asegúrese de proteger el acceso al repositorio y sus claves y establecer permisos de rama. Para obtener más información, consulte el área de diseño crítica para GitOps.

Administración e informes de directivas

La gobernanza controlada por directivas es un principio fundamental de las operaciones nativas de la nube y Cloud Adoption Framework. Azure Policy proporciona el mecanismo necesario para aplicar los estándares de la empresa y evaluar el cumplimiento a gran escala. A través de Azure Policy, puede implementar la gobernanza para obtener coherencia en las implementaciones, el cumplimiento, los costos de control y la posición de seguridad. En su panel de cumplimiento, puede ver una vista agregada del estado general del entorno a gran escala y buscar funcionalidades de corrección de nivel de clúster.

Kubernetes habilitado para Azure Arc admite Azure Policy en la capa de Administración de recursos de Azure y también en las aplicaciones de directivas en el clúster ampliando Gatekeeper para Open Policy Agent. Puede implementar cualquiera de las directivas integradas para lograr rápidamente el cumplimiento y la aplicación a gran escala. En el diagrama siguiente se muestra cómo se aplica Azure Policy a gran escala y medidas de seguridad a clústeres de Kubernetes habilitados para Azure Arc.

Un diagrama que muestra la directiva de Kubernetes para Azure Arc.

Comprenda el ámbito de Azure Policy y dónde se puede aplicar (grupo de administración, suscripción, grupo de recursos o nivel de recurso individual). Use la biblioteca integrada de Azure Policy para Kubernetes habilitado para Azure Arc. Cree un diseño de grupo de administración de acuerdo con los procedimientos recomendados que se describen en la guía de escala empresarial de Cloud Adoption Framework.

  • Determine qué directivas de Azure necesita para satisfacer los requisitos empresariales, normativos y de seguridad de su organización para Kubernetes habilitado para Azure Arc a gran escala.
  • Aplique el etiquetado e implemente las tareas de corrección.
  • Use Azure Policy para aplicar GitOps y configuraciones a gran escala.
  • Comprenda y evalúe las definiciones integradas de Azure Policy en Kubernetes habilitado para Azure Arc.
  • Las directivas DeployIfNotExists de Azure Policy implementan mediante programación agentes de servicio de administración o extensiones en los clústeres habilitados para Arc a gran escala, incluido Azure Monitor.
  • Habilite Azure Monitor Container Insights para la supervisión operativa y de cumplimiento de clústeres de Kubernetes habilitados para Azure Arc.

Estrategia de administración de registros

Diseñe y planee la implementación del área de trabajo de Log Analytics, que es el almacenamiento donde se recopilan, agregan y posteriormente se analizan los datos. Dado que el área de trabajo de Log Analytics representa una ubicación geográfica de los datos, para admitir un nivel de aislamiento y ámbito para configuraciones como la retención de datos, debe determinar el número de áreas de trabajo necesarias y cómo se asignan a la estructura organizativa.

Use una única área de trabajo de Log Analytics de Azure Monitor para administrar RBAC de forma centralizada y para obtener visibilidad e informes, tal como se describe en los procedimientos recomendados de administración y supervisión de Cloud Adoption Framework.

Para obtener más información, revise los procedimientos recomendados para diseñar la implementación de registros de Azure Monitor.

Protección contra amenazas y administración de la posición de seguridad en la nube

  • Microsoft Defender for Cloud proporciona una plataforma de administración de seguridad unificada que está segmentada como una administración de la posición de seguridad en la nube (CSPM) y una plataforma de protección de cargas de trabajo en la nube (CWPP). Para aumentar la seguridad en la zona de aterrizaje híbrida, necesita proteger los datos y los recursos hospedados en Azure y en otros lugares.
  • Microsoft Defender para contenedores amplía las funcionalidades de Microsoft Defender for Cloud a Kubernetes habilitado para Azure Arc. Para aumentar la seguridad en la zona de aterrizaje híbrida, tenga en cuenta lo siguiente:
    • Usar la extensión de Kubernetes habilitado para Azure Arc para incorporar recursos de Kubernetes habilitado para Arc en Microsoft Defender for Cloud.
    • Habilitar el plan de Microsoft Defender para contenedores en todas las suscripciones. De forma predeterminada, el plan se configura para implementar automáticamente la extensión de Defender en cualquier clúster de Kubernetes habilitado para Arc que se incorpore a la misma suscripción. Opcionalmente, puede modificar esta configuración.
    • Comprobar que la extensión de Defender está implementada en los clústeres.
    • Usar información de seguridad y administración de eventos (SIEM) con Microsoft Defender for Cloud y Microsoft Sentinel.

En el diagrama siguiente se muestra una arquitectura de referencia conceptual para Microsoft Defender for Cloud en un recurso de clúster de Kubernetes habilitado para Azure Arc.

Diagrama que muestra Microsoft Defender de Kubernetes para Azure Arc.

Si usa Microsoft Container Registry como registro de Docker privado central para almacenar y administrar las imágenes de contenedor, debe usar Microsoft Defender para contenedores para examinar las imágenes en busca de vulnerabilidades.

Asegúrese de revisar la topología de red y el área de diseño crítica de conectividad.

Protección del acceso al clúster

La API de Kubernetes recibe solicitudes para realizar acciones en el clúster. Como se trata de una manera central de interactuar con un clúster y administrarlo, la API de Kubernetes es una pieza clave que debe proteger. Mediante la conexión de clústeres de Kubernetes habilitado para Azure Arc, puede conectarse de forma segura a clústeres de Kubernetes habilitados para Azure Arc sin necesidad de habilitar ningún puerto de entrada en el firewall. El acceso al servidor de API de Kubernetes habilitado para Azure Arc proporciona las siguientes ventajas:

  • Habilita la depuración interactiva y la solución de problemas.
  • Permite el uso de agentes o ejecutores hospedados de Azure Pipelines, Acciones de GitHub o cualquier otro servicio de CI/CD hospedado sin necesidad de agentes autohospedados.
  • Proporciona acceso de clúster a los servicios de Azure para ubicaciones personalizadas y otros recursos creados en ellos.

Observabilidad y seguridad de microservicios

La implementación de una malla de servicio le permite introducir la autenticación y autorización en las conexiones de servicios, lo que aplica el principio de privilegios mínimos y crea un entorno más seguro. De forma predeterminada, los pods se encuentran en una red de confianza plana. En una implementación de malla de servicio, se implementa un conjunto de sidecars que actúan como servidores proxy de red. Estos sidecar administran la comunicación este-oeste, cifran el tráfico y mejoran la observabilidad del tráfico en general.

Las implementaciones de malla de servicio pueden protegerse frente a:

  • Accesos no autorizados
  • Ataques de rastreo
  • Filtración de datos
  • Suplantaciones

Para obtener más información, consulte el área de diseño crítico para la implementación de Open Service Mesh.

Pasos siguientes

Para obtener más información sobre el recorrido de nube híbrida y multinube, consulte los siguientes artículos.