Requisitos, quotas e limitações para políticas de filtro de linhas e máscaras de coluna

Note

Esta página cobre requisitos, quotas e limitações para políticas de filtro de linhas e máscaras de coluna. Para políticasGRANT, consulte políticas ABACGRANT.

Esta página lista requisitos, quotas de políticas e limitações atuais para políticas de filtro de linhas ABAC e máscaras de coluna no Unity Catalog.

Requisitos de computação

Para usar políticas ABAC, você deve usar uma das seguintes configurações de computação:

Para orientações sobre a execução de cargas de trabalho que requerem runtimes mais antigos, veja Access from runtimes mais antigos.

Requisito de etiquetas reguladas

As políticas ABAC usam etiquetas governadas, não etiquetas não governadas. As etiquetas governadas são definidas ao nível da conta com controlos de acesso que determinam quem as pode criar, atribuir e gerir. Para detalhes completos, veja Etiquetas Governadas.

Note

Depois de atribuir ou modificar uma etiqueta, pode demorar alguns minutos até a alteração fazer efeito.

Quotas políticas

Recurso Limite
Políticas por metastore 10.000
Políticas por catálogo ou esquema 100
Políticas por tabela 50
Princípios por política (aplica-se a ambas TO as cláusulas e EXCEPT acontecimentos) 20
Condições de coluna por MATCH COLUMNS cláusula 3

Para mais detalhes, incluindo quotas de etiquetas reguladas, consulte Limites de serviço.

Limitações ABAC

Atributos de identidade em condições de política

As has_identity_attribute_value funções e has_identity_attribute_tag_match avaliam os atributos de identidade do utilizador que executa a consulta. São apoiadas na WHEN cláusula das políticas de coluna sobre máscaras. Aplicam-se as seguintes limitações:

  • Não são suportadas na MATCH COLUMNS cláusula das políticas de coluna sobre máscaras.
  • Não são apoiadas nas GRANT políticas nem DENY nas nossas políticas.
  • A interface de criação de políticas no Explorador de Catálogos não suporta funções de atributos. Use SQL para criar estas políticas.

Para padrões de utilização, veja Mascarar uma coluna baseada nos atributos do utilizador que faz a consulta.

Acesso a partir de runtimes mais antigos

Computação padrão e dedicada no Databricks Versões de runtime anteriores à 16.4 não conseguem aceder a tabelas seguras por ABAC. Se precisares que certas cargas de trabalho continuem a correr num runtime mais antigo, define a política ABAC para um grupo específico em vez de a aplicares de forma abrangente. Adiciona apenas os utilizadores ou principais que queres que a política aplique a esse grupo e exclua o principal que executa a carga de trabalho de execução mais antiga usando a EXCEPT cláusula. Os utilizadores fora do grupo mantêm acesso total às tabelas subjacentes. Isto permite que essa carga continue a aceder às tabelas enquanto transita para um runtime suportado.

Políticas da ABAC sobre opiniões

Não podes aplicar as políticas ABAC diretamente às visualizações. No entanto, quando um utilizador consulta uma vista que faz referência a tabelas com políticas ABAC, essas políticas são respeitadas ao aceder a dados através da vista.

Os filtros de linhas ABAC e as máscaras de coluna nas tabelas subjacentes são avaliados usando a identidade do utilizador da sessão, ou seja, a pessoa que executa a consulta. O utilizador vê apenas as linhas e valores das colunas a que está autorizado a aceder, conforme definido pelas políticas ABAC nas tabelas base. As verificações de acesso à tabela base e as verificações de acesso às dependências utilizam a identidade do proprietário da vista, permitindo que os utilizadores consultem as vistas sem privilégios diretos nas tabelas subjacentes.

Note

O mesmo modelo de identidade de utilizador de sessão aplica-se quando tabelas com políticas ABAC são acedidas através de funções.

O modelo de identidade de utilizador de sessão foi introduzido juntamente com a versão ABAC GA. Anteriormente, as políticas eram avaliadas usando a identidade do proprietário da vista ou do definidor da função. Para mais informações, consulte as notas de lançamento de abril de 2026.

Políticas ABAC sobre visualizações materializadas e tabelas de streaming

Quando um pipeline atualiza uma vista materializada ou tabela de streaming, avalia políticas usando a identidade do proprietário ou do run-as. Se essa identidade estiver sujeita a uma política ABAC, a visualização materializada ou tabela de streaming contém permanentemente dados mascarados ou filtrados. Para evitar isto, adicione o proprietário do pipeline ou a identidade run-as à EXCEPT cláusula das políticas ABAC associada a todas as tabelas lidas durante a atualização do pipeline. Use a TO cláusula para especificar quais os utilizadores e grupos que recebem dados mascarados ou filtrados.

Tabelas OpenSharing com políticas ABAC ou vistas que as referenciam

Tabelas com políticas ou vistas ABAC que referenciam tabelas com políticas ABAC só podem ser partilhadas através do OpenSharing se o acionista estiver isento da política (listado na EXCEPT cláusula). A política não regula o acesso do destinatário. Os destinatários podem aplicar as suas próprias políticas ABAC às tabelas partilhadas para impor controlo de acesso do seu lado.

Para detalhes sobre como usar o OpenSharing com ABAC, consulte OpenSharing e ABAC.

Viagem no tempo e clonagem em tabelas com políticas ABAC

As políticas ABAC não podem ser avaliadas com snapshots históricos de tabelas, por isso as consultas de viagem no tempo falham em tabelas com filtros de linhas ativos ou máscaras de colunas. Clones profundos e superficiais também não são suportados em tabelas com políticas ABAC.

Para permitir estas operações, crie um principal ou grupo de serviço e adicione-o à cláusula da EXCEPT política. A política não é avaliada para diretores isentos, por isso estas operações podem decorrer.

Importante

Os diretores isentos veem dados não filtrados e sem máscara. Apenas isenta identidades confiáveis, como os principais de serviço usados para ETL ou cargas de trabalho de pipeline.

Por exemplo, a seguinte política oculta colunas de PII para todos os utilizadores, exceto para o etl_service_principal, que pode executar consultas de viagem no tempo e clonar operações:

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 pesquisa por IA e políticas ABAC

As políticas ABAC numa tabela de origem não se aplicam a índices de AI Search criados a partir dessa tabela. O índice sincroniza todas as linhas da tabela de origem e não aplica políticas de filtro de linhas ou máscaras de coluna ao servir consultas.

Para tabelas com máscaras de colunas, podes excluir colunas mascaradas do índice usando a definição de colunas para sincronizar .

Múltiplas políticas na mesma tabela ou coluna para o mesmo utilizador

Apenas um filtro de linha distinto pode resolver em tempo de execução para uma dada tabela e um dado utilizador, e apenas uma máscara de coluna distinta pode resolver para uma determinada coluna e para um dado utilizador. Pode definir múltiplas políticas, mas quando um utilizador consulta a tabela, apenas as condições de uma política devem corresponder. Se se aplicarem múltiplos filtros de linhas distintos ou máscaras de coluna ao mesmo utilizador e tabela ou coluna, o Azure Databricks bloqueia o acesso e devolve um erro. São permitidas múltiplas políticas se resolverem para o mesmo filtro de linha ou UDF de máscara de coluna com os mesmos argumentos.

Para mais detalhes, consulte Regras para múltiplos filtros e máscaras.

ABAC em computação dedicada

Para conhecer as limitações do ABAC na computação dedicada, consulte Limitações.

Limitações comuns ao ABAC e aos filtros de linhas ao nível de tabela e máscaras de coluna

Para limitações gerais de filtros de linhas e máscaras de coluna que se aplicam tanto a filtros de linhas ABAC como a nível de tabela e máscaras de coluna, veja Limitações.