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.
Puede compartir tablas y vistas protegidas por directivas de ABAC a través de Delta Sharing si el propietario del recurso compartido está exento de las directivas del lado del proveedor. En esta página se explica cómo compartir tablas con filtros de fila y máscaras de columna y cómo controlar las vistas cuando necesite aplicar directivas en el lado del destinatario.
Prerrequisitos
- Databricks Runtime 16.4 o superior, o computación sin servidor.
- Permisos de administrador de cuenta o administrador del área de trabajo (para crear etiquetas reguladas).
-
MANAGEpermiso de acceso en el catálogo o esquema de destino. -
EXECUTEen las UDF. - Delta Sharing configurado entre el proveedor y el destinatario. Consulte ¿Qué es Delta Sharing?.
Uso compartido de tablas protegidas por directivas de ABAC
Los propietarios de recursos compartidos pueden compartir tablas protegidas por directivas de ABAC a través de Delta Sharing si cumplen ambas condiciones:
- Tienen los permisos de uso compartido delta necesarios.
- Están exentos de las directivas de ABAC (enumeradas en la
EXCEPTcláusula ).
En el ejemplo siguiente se muestra una directiva del lado proveedor en la que el propietario del recurso compartido está exento:
-- Provider: row filter policy with the share owner exempted
CREATE POLICY hide_eu_customers
ON CATALOG provider_catalog
ROW FILTER hide_eu
TO `account users`
EXCEPT 'share_owner_group'
FOR TABLES
MATCH COLUMNS has_tag('geo_region') AS region
USING COLUMNS (region);
-- Add the table to the share
CREATE SHARE employees_share;
ALTER SHARE employees_share ADD TABLE provider_catalog.hr.employees;
GRANT SELECT ON SHARE employees_share TO RECIPIENT `recipient_org`;
La directiva de ABAC del proveedor no rige el acceso del destinatario. Dado que el propietario del recurso compartido está exento de la directiva del lado proveedor, el destinatario ve datos sin filtrar o sin enmascarar de forma predeterminada. Los destinatarios pueden aplicar sus propias directivas de ABAC a las tablas compartidas para controlar el acceso de 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.
Compartición de vistas protegidas por políticas de ABAC
Los propietarios de recursos compartidos también pueden compartir vistas que hacen referencia a tablas base que ABAC protege. Al igual que con el uso compartido de tablas directamente, el propietario del recurso compartido debe estar exento de las directivas de ABAC en las tablas subyacentes.
-- Provider: row filter policy with the share owner exempted
CREATE POLICY hide_eu_customers
ON CATALOG provider_catalog
ROW FILTER hide_eu
TO `account users`
EXCEPT 'share_owner_group'
FOR TABLES
MATCH COLUMNS has_tag('geo_region') AS region
USING COLUMNS (region);
-- Add the view to the share
ALTER SHARE employees_share ADD VIEW provider_catalog.hr.employees_view AS hr.employees_view;
GRANT SELECT ON SHARE employees_share TO RECIPIENT `recipient_org`;
Note
Si estaba compartiendo vistas antes del 23 de abril de 2026, es posible que tenga que actualizar las políticas de ABAC. Antes de esta fecha, el propietario de la vista debía estar excluido de las políticas de las tablas subyacentes. A partir del 23 de abril de 2026, el accionista debe estar exento en su lugar. Si Databricks se ha puesto en contacto con usted como cliente potencialmente afectado, tiene hasta el 22 de julio de 2026 para actualizar las EXCEPT cláusulas.
Vistas locales del destinatario en tablas compartidas
Dado que las directivas de ABAC solo se pueden establecer en tablas, no en vistas, si necesita que los usuarios del lado destinatario consuman datos a través de vistas y datos confidenciales deben protegerse, comparta las tablas base y establezca directivas de ABAC en ellas. El destinatario crea vistas localmente sobre las tablas compartidas y las directivas de las tablas base se respetan cuando se accede a los datos a través de esas vistas. En este caso, no es necesario compartir vistas del lado proveedor.
Este enfoque funciona de la siguiente manera:
- Comparta solo las tablas base, no las vistas. En el lado del destinatario, las tablas compartidas aparecen en un esquema de recurso compartido delta de solo lectura.
- Aplique directivas de ABAC a las tablas de origen en el lado del proveedor y a las tablas compartidas en el lado del destinatario. La política del proveedor controla el acceso en el lado del proveedor. El destinatario crea una directiva para controlar el acceso de los usuarios en el lado del destinatario.
- Cree vistas en el destinatario sobre las tablas base compartidas en un esquema independiente. Dado que los esquemas de Delta Sharing son de solo lectura, las vistas locales de destinatario deben crearse en un esquema diferente. Si establece directivas de ABAC en las tablas Delta Sharing, estas directivas se respetan cuando los usuarios acceden a los datos a través de las vistas locales del destinatario.
-- Recipient: apply an ABAC policy to the shared table
CREATE POLICY hide_eu_customers
ON CATALOG recipient_catalog
ROW FILTER hide_eu
TO `account users`
EXCEPT 'recipient_admins'
FOR TABLES
MATCH COLUMNS has_tag('geo_region') AS region
USING COLUMNS (region);
-- Create a view in a separate schema (delta share schema is read-only)
CREATE VIEW recipient_catalog.analytics.employees_view AS
SELECT * FROM recipient_catalog.delta_share_schema.employees;