Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Esta página lista os requisitos, as cotas de política e as limitações atuais do ABAC (controle de acesso baseado em atributo) no Catálogo do Unity.
Requisitos de computação
Para usar políticas abac, você deve usar uma das seguintes configurações de computação:
- Computação sem servidor
- Computação padrão no Databricks Runtime 16.4 ou superior
- Computação dedicada no Databricks Runtime 16.4 ou superior com filtragem de controle de acesso refinado habilitada
Para obter diretrizes sobre como executar cargas de trabalho que exigem runtimes mais antigos, consulte o Access de runtimes mais antigos.
Requisito de marcas governadas
As políticas abac usam marcas governadas, não marcas desgovernadas. As marcas governadas são definidas no nível da conta com controles de acesso que determinam quem pode criá-las, atribuir e gerenciá-las. Para obter detalhes completos, consulte Marcas governadas.
Observação
Depois de atribuir ou modificar uma marca, pode levar alguns minutos para que a alteração entre em vigor.
Cotas de política
| Recurso | Limite |
|---|---|
| Políticas por metastore | 10.000 |
| Políticas por catálogo ou esquema | 100 |
| Políticas por tabela | 50 |
Entidades de segurança por política (aplica-se a cláusulas e EXCEPT a ambosTO) |
20 |
Condições de coluna por MATCH COLUMNS cláusula |
3 |
Para obter mais detalhes, incluindo cotas de marcas governadas, consulte os limites de serviço.
Limitações do ABAC
Acesso de runtimes mais antigos
A computação padrão e dedicada em versões do Databricks Runtime anteriores à 16.4 não pode acessar tabelas protegidas pelo ABAC. Se você precisar de determinadas cargas de trabalho para continuar em execução em um runtime mais antigo, faça o escopo da política ABAC para um grupo específico em vez de aplicá-la amplamente. Adicione apenas os usuários ou entidades de segurança que você deseja que a política aplique a esse grupo e exclua a entidade de segurança que executa a carga de trabalho de runtime mais antiga usando a EXCEPT cláusula. Os usuários fora do grupo mantêm acesso total às tabelas subjacentes. Isso permite que essa carga de trabalho continue acessando as tabelas enquanto você faz a transição para um runtime com suporte.
Políticas abac em exibições
Você não pode aplicar políticas ABAC diretamente a exibições. No entanto, quando um usuário consulta uma exibição que faz referência a tabelas com políticas ABAC, essas políticas são respeitadas ao acessar dados por meio da exibição.
Filtros de linha ABAC e máscaras de coluna nas tabelas subjacentes são avaliados usando a identidade do usuário da sessão, o que significa que a pessoa que está executando a consulta. O usuário vê apenas as linhas e os valores de coluna que está autorizado a acessar, conforme definido pelas políticas abac nas tabelas base. Verificações de acesso à tabela base e verificações de acesso a dependências usam a identidade do proprietário da exibição, para que os usuários possam consultar exibições sem privilégios diretos nas tabelas subjacentes.
Observação
O mesmo modelo de identidade do usuário de sessão se aplica quando tabelas com políticas ABAC são acessadas por meio de funções.
O modelo de identidade do usuário da sessão foi introduzido junto com a versão de GA do ABAC. Anteriormente, as políticas eram avaliadas usando a identidade do proprietário ou do definidor de função do modo de exibição. Para obter mais informações, consulte as notas sobre a versão de abril de 2026.
Políticas abac em exibições materializadas e tabelas de streaming
Observação
Anteriormente, as políticas abac em exibições materializadas e tabelas de streaming só eram compatíveis quando o proprietário do pipeline ou a identidade executar como estava isenta da política. Essa limitação foi removida.
Quando um pipeline atualiza uma exibição materializada ou uma tabela de streaming, as políticas são avaliadas usando a identidade do proprietário do pipeline ou executar como. Se essa identidade estiver sujeita à política, a exibição materializada ou a tabela de streaming conterão permanentemente dados mascarados ou filtrados. O Databricks recomenda manter a identidade de atualização isenta usando a EXCEPT cláusula e direcionando os consumidores que devem ver dados mascarados ou filtrados na TO cláusula.
Tabelas de compartilhamento Delta com políticas ou exibições abac que fazem referência a elas
Tabelas com políticas abac ou exibições que fazem referência a tabelas com políticas ABAC só poderão ser compartilhadas por meio do Compartilhamento Delta se o proprietário do compartilhamento estiver isento da política (listado na EXCEPT cláusula). A política não rege o acesso do destinatário. Os destinatários podem aplicar suas próprias políticas ABAC a tabelas compartilhadas para impor o controle de acesso ao seu lado.
- Para provedores de compartilhamento, consulte Adicionar tabelas e esquemas protegidos por políticas ABAC a um compartilhamento.
- Para os destinatários de compartilhamento, consulte Ler dados protegidos pelo ABAC e aplicar políticas ABAC.
Para obter detalhes sobre como usar o Compartilhamento Delta com o ABAC, consulte Delta Sharing e ABAC.
Viagem no tempo e clonagem em tabelas com políticas abac
As políticas abac não podem ser avaliadas em relação a instantâneos históricos de tabela, portanto, as consultas de viagem no tempo falham em tabelas com filtros de linha ativos ou máscaras de coluna. Clones profundos e rasos também não têm suporte em tabelas com políticas ABAC.
Para habilitar essas operações, crie uma entidade de serviço ou grupo e adicione-a à cláusula da EXCEPT política. A política não é avaliada para entidades de segurança isentas, portanto, essas operações podem ser executadas.
Importante
Entidades de segurança isentas veem dados não filtrados e desmascarados. Isenta apenas identidades confiáveis, como entidades de serviço usadas para cargas de trabalho de ETL ou pipeline.
Por exemplo, a política a seguir mascara colunas PII para todos os usuários, exceto 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 vetor e políticas ABAC
As políticas abac em uma tabela de origem não se aplicam a índices de pesquisa de vetor criados a partir dessa tabela. O índice sincroniza todas as linhas da tabela de origem e não impõe políticas de filtro de linha ou máscara de coluna ao atender consultas.
Para tabelas com máscaras de coluna, você pode excluir colunas mascaradas do índice usando as colunas para sincronizar a configuração.
Várias políticas na mesma tabela ou coluna para o mesmo usuário
Somente um filtro de linha distinto pode ser resolvido em runtime para uma determinada tabela e um determinado usuário, e apenas uma máscara de coluna distinta pode ser resolvida para uma determinada coluna e um determinado usuário. Você pode definir várias políticas, mas quando um usuário consulta a tabela, apenas as condições de uma política devem corresponder. Se vários filtros de linha ou máscaras de coluna distintos se aplicarem ao mesmo usuário e tabela ou coluna, Azure Databricks bloqueará o acesso e retornará um erro. Várias políticas serão permitidas se forem resolvidas para o mesmo filtro de linha ou UDF de máscara de coluna com os mesmos argumentos.
Para obter detalhes, consulte Regras para vários filtros e máscaras.
Políticas abac e esquema de informações
Não há nenhuma tabela de esquema de informações para políticas abac. As information_schema.row_filters tabelas e information_schema.column_masks as tabelas mostram apenas filtros de linha no nível da tabela e máscaras de coluna. Eles não mostram definições de política abac ou os filtros e máscaras derivados de políticas ABAC em runtime.
Para listar políticas abac, use a API REST do Catálogo do Unity. Os eventos de criação, modificação e exclusão de política são capturados na tabela do sistema de log de auditoria.
ABAC na computação dedicada
Para obter limitações do ABAC na computação dedicada, consulte Limitações.
Limitações comuns ao ABAC e aos filtros de linha e máscaras de coluna no nível da tabela
Para obter limitações gerais de filtros de linha e máscaras de coluna que se aplicam a filtros de linha de nível de tabela e ABAC e máscaras de coluna, consulte Limitações.