Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Note
En esta página se tratan los requisitos, las cuotas y las limitaciones de las directivas de filtro de fila y máscara de columna. Para las GRANT políticas, véase políticas de ABACGRANT.
En esta página se enumeran los requisitos, las cuotas de directiva y las limitaciones actuales para las directivas de filtro de fila de ABAC y máscara de columnas en el catálogo de Unity.
Requisitos de cómputo
Para usar directivas de ABAC, debe usar una de las siguientes configuraciones de proceso:
- Computación sin servidor
- Proceso estándar en Databricks Runtime 16.4 o superior
- Cómputo dedicado en Databricks Runtime 16.4 o superior con filtrado de control de acceso fino habilitado
Para obtener instrucciones sobre la ejecución de cargas de trabajo que requieren tiempos de ejecución anteriores, consulte Acceso desde entornos de ejecución anteriores.
Requisito de etiquetas reguladas
Las directivas de ABAC usan etiquetas reguladas, no etiquetas no superpuestas. Las etiquetas reguladas se definen en el nivel de cuenta con controles de acceso que determinan quién puede crear, asignar y administrarlas. Para obtener más información, consulte Etiquetas reguladas.
Note
Después de asignar o modificar una etiqueta, el cambio puede tardar unos minutos en surtir efecto.
Políticas de cuotas
| Recurso | Límite |
|---|---|
| Políticas por metastore (todos los objetos) | 10 000 |
| Políticas por metastore, adjuntadas directamente (Beta) | 100 |
| Políticas por catálogo | 100 |
| Políticas por esquema | 100 |
| Directivas por tabla | 50 |
Principales por política (se aplica a TO las cláusulas y EXCEPT ) |
20 |
Condiciones de columna por MATCH COLUMNS cláusula |
3 |
Para obtener más información, incluidas las cuotas de etiquetas reguladas, consulte Límites de servicio.
Limitaciones de ABAC
Atributos de identidad en condiciones de política
Las has_identity_attribute_value funciones y has_identity_attribute_tag_match evalúan los atributos de identidad del usuario que ejecuta la consulta. Están respaldados en la WHEN cláusula de las políticas de mascarillas en columna. Se presentan las siguientes limitaciones:
- No están respaldadas en la
MATCH COLUMNScláusula de las políticas de mascarillas en columna. - No cuentan con apoyo en
GRANTnuestrasDENYpolíticas. - La interfaz de creación de políticas en el Explorador de Catálogos no soporta funciones de atributos. Utiliza SQL para crear estas políticas.
Para patrones de uso, consulte Enmascarar una columna basada en atributos del usuario que hace la consulta.
Acceso desde entornos de ejecución anteriores
El proceso estándar y dedicado en las versiones de Databricks Runtime anteriores a la versión 16.4 no puede acceder a tablas protegidas con ABAC. Si necesita ciertas cargas de trabajo para seguir ejecutándose en un entorno de ejecución anterior, deba definir el ámbito de la directiva de ABAC a un grupo específico en lugar de aplicarla ampliamente. Agregue solo los usuarios o entidades de seguridad que quiera que la directiva se aplique a ese grupo y excluya la entidad de seguridad que ejecuta la carga de trabajo en tiempo de ejecución anterior mediante la EXCEPT cláusula . Los usuarios fuera del grupo conservan el acceso total a las tablas subyacentes. Esto permite que esa carga de trabajo continúe accediendo a las tablas mientras realiza la transición a un entorno de ejecución compatible.
Políticas de ABAC sobre opiniones
Importante
Aplicar las políticas ABAC a las visualizaciones está en Beta. Para utilizarla, un administrador de espacio de trabajo debe activar la vista previa de ABAC en Vistas desde la página de Vistas previas de la configuración del espacio de trabajo, y debes usar Databricks Runtime 19 o superior. Consulte Gestionar vistas previas a nivel de espacio de trabajo.
Los siguientes requisitos y limitaciones se aplican a las políticas sobre vistas:
- No se soportan vistas métricas: no se pueden aplicar políticas ABAC a vistas métricas.
- Una sola consulta puede superponer como máximo 20 políticas: una tabla base puede tener una política, y cada vista construida sobre ella puede tener su propia política. Cuando una consulta lee una vista, se aplican todas las políticas aplicables, en cada nivel de la jerarquía. Si se aplican más de 20 políticas, la consulta falla.
-
CREATE OR REPLACE VIEWelimina etiquetas gobernadas y políticas directamente adjuntas: Reemplazar una vista por unaCREATE OR REPLACEsentencia borra los metadatos de la vista, junto con sus etiquetas gobernadas y cualquier política directamente adjunta. Para preservar los metadatos, usaALTER VIEWen su lugar. Si lo usasCREATE OR REPLACE, vuelve a aplicar las etiquetas y políticas gobernadas después. - Las columnas con etiquetas gobernadas no pueden eliminarse hasta que se eliminen: al igual que en las tablas base, las etiquetas gobernadas deben eliminarse de la columna de una vista antes de eliminarla. De lo contrario, las políticas que dependen de la etiqueta podrían caer inadvertidamente.
- Las políticas ABAC no pueden aplicarse a una vista compartida en el lado del destinatario: Cuando compartes una vista a través de OpenSharing, el destinatario no puede aplicar políticas ABAC a esa vista compartida. Para hacer cumplir las políticas en el lado del destinatario, comparte las tablas base y haz que el destinatario cree vistas locales del destinatario sobre ellas, con políticas ABAC en las tablas compartidas. Consulta las vistas locales del destinatario sobre tablas compartidas.
Directivas de ABAC en vistas materializadas y tablas de streaming
Cuando una tubería actualiza una vista materializada o una tabla de streaming, evalúa las políticas usando la identidad del propietario o de la ejecución. Si esa identidad está sujeta a una política ABAC, la vista materializada o la tabla de streaming contiene permanentemente datos enmascarados o filtrados. Para evitar esto, añade el propietario o identidad de run-as del pipeline a la EXCEPT cláusula de políticas ABAC asociada a todas las tablas que se leen durante la actualización del pipeline. Use la TO cláusula para especificar qué usuarios y grupos reciben datos enmascarados o filtrados.
Tablas openSharing con directivas o vistas de ABAC que hacen referencia a ellas
Las tablas con directivas o vistas de ABAC que hacen referencia a tablas con directivas de ABAC solo se pueden compartir a través de OpenSharing si el propietario del recurso compartido está exento de la directiva (que se muestra en la EXCEPT cláusula ). La directiva no rige el acceso del destinatario. Los destinatarios pueden aplicar sus propias directivas de ABAC a las tablas compartidas para aplicar el control de acceso en su lado.
- Para los proveedores de recursos compartidos, consulte Adición de tablas y esquemas protegidos por directivas de ABAC a un recurso compartido.
- Para los destinatarios de recursos compartidos, consulte Leer datos protegidos por ABAC y aplicar directivas de ABAC.
Para más información sobre cómo usar OpenSharing con ABAC, consulte OpenSharing y ABAC.
Tablas de clonación con políticas ABAC
Los clones profundos y superficiales no están soportados en tablas con políticas ABAC. Para clonar una tabla, utiliza un principal o grupo de servicio que esté listado en la EXCEPT cláusula de cada política que se aplique a la tabla.
Importante
Las entidades de seguridad exentas ven datos sin filtrar y sin enmascarar. Solo exime las identidades de confianza, como las entidades de servicio usadas para cargas de trabajo de ETL o canalización.
Por ejemplo, la siguiente política enmascara las columnas de PII para todos los usuarios excepto para el etl_service_principal, que puede clonar la tabla:
CREATE POLICY mask_pii
ON CATALOG prod
COLUMN MASK prod.governance.mask_value
TO `account users`
EXCEPT `etl_service_principal`
FOR TABLES
MATCH COLUMNS
has_tag_value('pii', 'ssn') AS ssn
ON COLUMN ssn;
Índices de búsqueda de IA y directivas de ABAC
Las directivas de ABAC de una tabla de origen no se aplican a los índices de búsqueda de IA creados a partir de esa tabla. El índice sincroniza todas las filas de la tabla de origen y no aplica directivas de filtro de fila ni máscara de columna al atender consultas.
En el caso de las tablas con máscaras de columna, puede excluir columnas enmascaradas del índice mediante la configuración de sincronización de columnas .
Varias directivas en la misma tabla o columna para el mismo usuario
Solo un filtro de fila distinto puede resolverse en tiempo de ejecución para una tabla determinada y un usuario determinado, y solo una máscara de columna distinta puede resolverse para una columna determinada y un usuario determinado. Puede definir varias directivas, pero cuando un usuario consulta la tabla, solo deben coincidir las condiciones de una directiva. Si se aplican varios filtros de fila o máscaras de columna distintos al mismo usuario y tabla o columna, Azure Databricks bloquea el acceso y devuelve un error. Se permiten varias directivas si se resuelven en el mismo filtro de fila o UDF de máscara de columnas con los mismos argumentos.
Para más detalles, véase Filtros y máscaras en conflicto.
ABAC en proceso dedicado
Para ver las limitaciones de ABAC en el cómputo dedicado, consulte Limitaciones.
Limitaciones comunes a los filtros de fila de nivel de tabla y ABAC y máscaras de columna
Para conocer las limitaciones generales de los filtros de fila y las máscaras de columna que se aplican tanto a los filtros de fila de ABAC como a las máscaras de columna, consulte Limitaciones.