Notas del producto sobre seguridad de Azure Synapse Analytics: control de acceso
Nota
Este artículo forma parte de la serie de artículos de las notas del producto sobre seguridad de Azure Synapse Analytics. Para obtener información general de la serie, consulte Notas del producto sobre seguridad de Azure Synapse Analytics: introducción.
En función de cómo se hayan modelado y almacenado los datos, la gobernanza de datos y el control de acceso pueden requerir que los desarrolladores y administradores de seguridad usen enfoques diferentes, o una combinación de técnicas, para implementar una sólida base de seguridad.
Azure Synapse admite una amplia gama de funcionalidades para controlar quién puede acceder a los datos y a cuáles de ellos. Estas funcionalidades se basan en un conjunto de características avanzadas de control de acceso, entre las que se incluyen:
- Seguridad de nivel de objeto
- Seguridad de nivel de fila
- Seguridad de nivel de columna
- Enmascaramiento de datos dinámicos
- Control de acceso basado en rol de Synapse
Seguridad de nivel de objeto
Cada objeto de un grupo de SQL dedicado tiene permisos asociados que se pueden conceder a una entidad de seguridad. En el contexto de los usuarios y las cuentas de servicio, así es como se protegen las tablas, las vistas, los procedimientos almacenados y las funciones individuales. Los permisos de objeto, como SELECT, se pueden conceder a cuentas de usuario (inicios de sesión de SQL, usuarios o grupos de Microsoft Entra) y roles de base de datos, lo que proporciona flexibilidad a los administradores de bases de datos. Además, los permisos concedidos en tablas y vistas se pueden combinar con otros mecanismos de control de acceso (que se describen a continuación), como la seguridad de nivel de columna, la seguridad de nivel de fila y el enmascaramiento dinámico de datos.
En Azure Synapse, todos los permisos se conceden a usuarios y roles de nivel de base de datos. Además, a cualquier usuario al que se le ha concedido el rol RBAC de Administrador de Synapse integrado en el nivel de área de trabajo se le concede automáticamente acceso completo a todos los grupos de SQL dedicados.
Además de proteger las tablas SQL en Azure Synapse, también se pueden proteger el grupo de SQL dedicado (anteriormente SQL DW), el grupo de SQL sin servidor y las tablas Spark. De forma predeterminada, los usuarios asignados al rol Colaborador de datos de blob de almacenamiento de los lagos de datos conectados al área de trabajo tienen permisos de LECTURA, ESCRITURA y EJECUCIÓN en todas las tablas creadas por Spark cuando los usuarios ejecutan código de forma interactiva en el cuaderno. Se denomina tránsito de Microsoft Entra y se aplica a todos los lagos de datos conectados al área de trabajo. Sin embargo, si el mismo usuario ejecuta el mismo cuaderno a través de una canalización, el área de trabajo de la Identidad de servicio administrado (MSI) se usa para la autenticación. Por lo tanto, para que la canalización ejecute correctamente la MSI del área de trabajo, también debe pertenecer al rol Colaborador de datos de blob de almacenamiento del lago de datos al que accede.
Seguridad de nivel de fila
La seguridad de nivel de fila permite a los administradores de seguridad establecer y controlar el acceso pormenorizado a filas de tabla específicas en función del perfil de un usuario (o un proceso) que ejecuta una consulta. Las características de perfil o usuario pueden hacer referencia a la pertenencia a grupos o al contexto de ejecución. La seguridad de nivel de fila ayuda a evitar el acceso no autorizado cuando los usuarios consultan datos de las mismas tablas, pero deben ver diferentes subconjuntos de datos.
Nota
La seguridad de nivel de fila se admite en Azure Synapse y en grupos de SQL dedicados (anteriormente SQL DW), pero no se admite para grupos de Apache Spark ni grupos de SQL sin servidor.
Seguridad de nivel de columna
La seguridad de nivel de columna permite a los administradores de seguridad establecer permisos que limitan quién puede acceder a las columnas confidenciales de las tablas. Se establece en el nivel de base de datos y se puede implementar sin necesidad de cambiar el diseño del modelo de datos o el nivel de aplicación.
Nota:
La seguridad de nivel de columna se admite en Azure Synapse, en vistas de grupos de SQL sin servidor y grupos de SQL dedicados (anteriormente SQL DW), pero no se admite para tablas externas de grupos de SQL sin servidor ni grupos de Apache Spark. En el caso de las tablas externas de grupos de SQL sin servidor, se puede aplicar una solución alternativa mediante la creación de una vista sobre una tabla externa.
Enmascaramiento de datos dinámicos
El enmascaramiento dinámico de datos permite a los administradores de seguridad restringir la exposición de datos confidenciales mediante su enmascaramiento en la lectura para usuarios sin privilegios. Ayuda a evitar el acceso no autorizado a datos confidenciales, ya que permite a los administradores determinar cómo se muestran los datos en el momento de la consulta. En función de la identidad del usuario autenticado y su asignación de grupo en el grupo de SQL, una consulta devuelve datos enmascarados o sin máscara. El enmascaramiento siempre se aplica independientemente de si se tiene acceso a los datos directamente desde una tabla o mediante una vista o un procedimiento almacenado.
Nota
El enmascaramiento dinámico de datos se admite en Azure Synapse y en grupos de SQL dedicados (anteriormente SQL DW), pero no se admite para grupos de Apache Spark ni grupos de SQL sin servidor.
Control de acceso basado en rol de Synapse
Azure Synapse también incluye los roles de control de acceso basado en rol (RBAC) de Synapse para administrar distintos aspectos de Synapse Studio. Aproveche estos roles integrados para asignar permisos a usuarios, grupos u otras entidades de seguridad para administrar quién puede:
- Publicar artefactos de código y enumerar o acceder a artefactos de código publicados.
- Ejecutar código en grupos de Apache Spark y entornos de ejecución de integración.
- Acceder a servicios vinculados (datos) protegidos por credenciales.
- Supervisar o cancelar la ejecución de trabajos, examinar la salida de trabajos y los registros de ejecución.
Pasos siguientes
En el siguiente artículo de esta serie de notas del producto, obtendrá información sobre la autenticación.