Administración de identidades y acceso para SQL Managed Instance habilitado para Azure Arc

En este artículo se describen la arquitectura de administración de identidades y acceso (IAM) de SQL Managed Instance habilitado para Azure Arc, consideraciones de diseño y recomendaciones para diversos escenarios.

SQL Managed Instance habilitado para Arc se basa en la extensión de servicios de datos habilitados para Azure Arc que se ejecuta en un clúster de Kubernetes habilitado para Azure Arc. A continuación se muestran los distintos componentes de los servicios de datos habilitados para Azure Arc que son importantes para la administración de identidades y acceso como parte de esta área de diseño crítica.

  • Controlador de datos de Azure Arc
  • Conector de Active Directory para Azure Arc
  • SQL Managed Instance habilitado para Azure Arc

Architecture

Autenticación SQL

La autenticación de SQL se admite para SQL Managed Instance habilitado para Arc mediante identidades SQL locales. El método de autenticación SQL se usa durante el primer inicio de sesión para crear credenciales de inicio de sesión desde Windows para administradores y para conceder permisos a la base de datos para acceder a SQL Managed Instance habilitado para Arc mediante la autenticación de Active Directory. Los paneles de Grafana y Kibana solo admiten la autenticación básica en este momento.

Autenticación de Active Directory

Para muchas organizaciones empresariales, la autenticación de Active Directory (AD) es el estándar para aplicar el control de acceso basado en rol (RBAC) con servidores SQL Server que se ejecutan en entornos locales y en la nube. SQL Managed Instance habilitado para Azure Arc admite la autenticación de AD para migrar sin problemas las bases de datos de SQL Server existentes a SQL Managed Instance habilitado para Arc y mantenerse al día con las actualizaciones de seguridad y la versión de SQL Server más recientes.

SQL Managed Instance habilitado para Arc usa keytab de Kerberos para admitir la autenticación de AD cuando se ejecuta en clústeres de Kubernetes habilitados para Arc. El conector de Active Directory es un componente clave de los servicios de datos habilitados para Arc para admitir la autenticación de AD.

A continuación se muestran dos maneras de generar y administrar el keytab de Kerberos y usarlo en SQL Managed Instance habilitado para Arc. En las secciones siguientes se explican los escenarios y cuándo usar el modo de keytab adecuado.

Keytab administrado por el sistema

El conector de Active Directory en el modo de keytab administrado por el sistema simplifica la generación de cuentas de AD y la administración de keytab para SQL Managed Instance habilitado para Arc. El conector de AD es responsable de crear las cuentas de servicio, asignar entidades de servicio y generar el keytab para admitir la autenticación de AD. Este método se recomienda para los clientes que prefieren unas operaciones simplificadas en lugar de un control detallado para administrar automáticamente el keytab para la autenticación de AD.

Diagram that shows Active Directory authentication using system-managed keytab mode.

Figura 1: Diagrama de arquitectura del conector de AD en modo de keytab administrado por el sistema.

Keytab administrado por el cliente

El conector de Active Directory en el modo de keytab administrado por el cliente proporciona control total de la administración de cuentas de servicio, entidades de servicio y generación de keytab a los clientes que siguen estrictamente el proceso de la Biblioteca de infraestructuras de tecnologías de la información (ITIL) y la separación de tareas para delegar actividades en diferentes equipos.

Diagram that shows Active Directory authentication using customer-managed keytab mode.

Figura 2: Diagrama de arquitectura del conector de AD en modo de keytab administrado por el cliente.

Controlador de datos de Azure Arc

Cuando la extensión de servicios de datos habilitados para Arc se instala en modo con conexión directa, se crea una identidad administrada para que los servicios de datos habilitados para Arc interactúen con el plano de control y el plano de datos de las API de Azure Resource Manager (ARM). El controlador de datos de Azure Arc usa esta identidad administrada para realizar estas acciones al administrar SQL Managed Instance habilitado para Arc.

En el modo con conexión indirecta, el controlador de datos de Azure Arc necesita una entidad de servicio con los permisos necesarios para exportar periódicamente información de uso, como el inventario y el uso de recursos a Azure.

RBAC de Azure en los servicios de datos habilitados para Azure Arc

A continuación se muestran los permisos de RBAC necesarios para publicar métricas de supervisión en Azure Monitor.

Role Descripción
Supervisión del publicador de métricas Permite publicar las métricas de los recursos de Azure.

Protección del acceso a SQL Managed Instance habilitado para Azure Arc

En el diagrama de arquitectura siguiente se muestra el acceso seguro mediante la autenticación de AD.

Diagram that shows secure access to Arc-enabled SQL Managed Instance using AD authentication.

En el diagrama de arquitectura siguiente se muestra el acceso seguro mediante la autenticación de SQL.

Diagram that shows secure access to Arc-enabled SQL Managed Instance using SQL authentication.

Consideraciones de diseño

Revise el área de diseño crítica de administración de identidades y acceso de las zonas de aterrizaje de Azure para evaluar el efecto de los servicios de datos habilitados para Azure Arc en el modelo general de identidad y acceso.

Implementación de servicios de datos habilitados para Arc

  • Piense en la identidad que se usa para implementar los servicios de datos habilitados para Azure Arc en función del tipo de implementación, por ejemplo, manual o automatizada. Esta identidad podría ser una cuenta de Microsoft Entra o una cuenta de Protocolo ligero de acceso a directorios (LDAP) de Active Directory Domain Services (AD DS) o un proveedor LDAP de terceros en función de cómo se administren los controles de acceso subyacentes de Kubernetes habilitados para Azure Arc en entornos locales u otros entornos en la nube.

  • Reflexione sobre si el control de acceso basado en grupos o los controles de acceso basados en identidades individuales son más adecuados para su organización de tecnologías de la información (TI) a la hora de administrar los servicios de datos habilitados para Arc en comparación con la sobrecarga operativa que generan ambas opciones.

  • Decida entre el uso de administradores de Kubernetes habilitados para Azure Arc en comparación con un grupo de administración de bases de datos (DMG) y con un grupo de administración de aplicaciones a la hora de implementar y administrar los servicios de datos habilitados para Azure Arc en función de los requisitos de gobernanza de la seguridad y la separación de tareas.

  • Reflexione sobre el patrón de uso entre keytab administrado por el sistema y keytab administrado por el cliente a la hora de implementar el conector de AD para Azure Arc para que se admita la autenticación con AD en SQL Managed Instance habilitado para Arc. Ambos métodos tienen la ventaja de unas operaciones simplificadas en comparación con el control total del cliente de la administración de las cuentas de servicio y keytab para la compatibilidad con la autenticación de AD.

Acceso a servicios de datos habilitados para Arc

Los controles de acceso de SQL Managed Instance habilitado para Arc son totalmente independientes de los controles de acceso subyacentes de Kubernetes habilitados para Azure Arc. Es importante tomar algunas decisiones de diseño para administrar SQL Managed Instance habilitado para Arc y proporcionar acceso a las aplicaciones de consumidor y a los usuarios finales.

  • Elija entre autenticación de AD y SQL según las aplicaciones o funcionalidades de servicio de la organización. Como no todas las aplicaciones admiten la autenticación de AD, revise las directivas de seguridad de su organización para obtener información sobre los tipos de autenticación permitidos y aplique los controles de seguridad adicionales necesarios cuando use la autenticación de SQL.

  • Si los servicios nativos de nube tienen que autenticarse y conectarse a bases de datos de SQL Managed Instance habilitado para Arc con el fin de extraer e ingerir datos en los servicios de análisis de datos, considere la posibilidad de usar máquinas físicas o virtuales autohospedadas en el entorno de ejecución que estén unidas a AD mediante SQL para autenticarse y conectarse a SQL Managed Instance habilitado para Arc.

Recomendaciones de diseño

Además de las siguientes recomendaciones de diseño, consulte las recomendaciones de diseño de administración de identidades y acceso de Kubernetes habilitado para Azure Arc, ya que SQL Managed Instance habilitado para Arc se implementa en el clúster de Kubernetes habilitado para Arc.

Implementación de servicios de datos habilitados para Arc

  • En el caso de organizaciones empresariales que siguen procesos de ITIL estrictos, aísle a los equipos responsables de administrar los servicios de datos habilitados para Arc desde Kubernetes habilitado para Arc mediante la creación de diferentes grupos de seguridad y, a continuación, asigne permisos para administrar los servicios de datos habilitados para Arc.

  • Use el modo con keytab administrado por el sistema para la compatibilidad con la autenticación de AD para descargar la cuenta de dominio y la sobrecarga de administración de keytabs para simplificar las operaciones.

  • Use el modo keytab administrado por el cliente para la autenticación de AD para tener control total de la creación de cuentas de servicio y generación de keytab.

  • Cree una unidad organizativa de AD dedicada para delegar el control de acceso y simplificar las operaciones de todas las cuentas de SQL Managed Instance habilitado para Arc.

  • Use el cifrado AES256 para los archivos keytab de Kerberos y evite el uso de cifrados RC4.

Acceso a servicios de datos habilitados para Arc

  • Si procede, use la autenticación de AD con SQL Managed Instance para descargar la administración del ciclo de vida de los usuarios en los servicios de directorio y usar grupos de seguridad en AD para administrar los permisos de usuario.

  • Use la autenticación de SQL con SQL Managed Instance habilitado para Arc como tipo de autenticación con la menor preferencia y cuando no sea posible usar la autenticación de AD.

  • Una vez que disponga de la autenticación de AD para sus necesidades organizativas, evite el uso de la autenticación de SQL para las operaciones diarias. Use la autenticación de SQL solo para el acceso de emergencia al servidor de bases de datos para la administración de estas.

  • En escenarios de implementación que no admiten la autenticación de AD, use la autenticación de SQL compatible con SQL Managed Instance habilitado para Arc. Asegúrese de que adopta directivas de contraseña segura y habilite la auditoría para supervisar las identidades de usuario de SQL y los permisos concedidos para acceder a los servidores de bases de datos y a las bases de datos.

Control de acceso basado en roles (RBAC)

En el modo keytab administrado por el sistema, se requieren permisos explícitos para la cuenta de servicio de dominio (DSA) en el nivel de unidad organizativa de Active Directory para SQL Managed Instance habilitado para Arc.

A continuación se muestran los permisos de RBAC necesarios. Para el modo keytab administrado por el cliente, no se requieren permisos explícitos para la cuenta de servicio del dominio en el nivel de unidad organizativa de Active Directory.

Permisos del conector de AD para Azure Arc

Permiso Descripción
Lectura de todas las propiedades Permite leer todas las propiedades de un objeto de directorio.
Escribir todas las propiedades Permite la actualización de todas las propiedades de un objeto de directorio.
Crear objetos de usuario Permite la creación de objetos de directorio en la unidad organizativa.
Eliminar objetos de usuario Permite la eliminación de objetos de directorio en la unidad organizativa.
Restablecimiento de contraseña Permite el restablecimiento de contraseña de objetos de usuario en la unidad organizativa.

Roles de SQL Server

Pasos siguientes

Para más información sobre la administración de identidades y acceso de SQL Managed Instance habilitado para Azure Arc, consulte los artículos siguientes: