Habilitar o acesso a dados externos no Unity Catalog

A Databricks fornece acesso às tabelas do Unity Catalog usando a API REST do Unity e o catálogo REST do Iceberg.

Um administrador da metastore deve habilitar o acesso externo a dados para cada metastore que você precisa acessar externamente. O usuário ou a entidade de serviço que configura a conexão deve ter o privilégio EXTERNAL USE SCHEMA para cada esquema que contenha tabelas que o senhor precise ler externamente.

A API REST do Unity oferece suporte a leituras diretas para tabelas Delta, enquanto o catálogo REST do Iceberg oferece suporte a leituras em tabelas habilitadas para leituras do Iceberg. Consulte Access Databricks uso de dados sistemas externos.

Habilitar o acesso externo a dados no metastore

Para permitir que mecanismos externos acessem dados em uma metastore, um administrador da metastore deve habilitar o acesso externo aos dados da metastore. Essa opção é desativada pelo site default para evitar acesso externo não autorizado.

Para habilitar o acesso externo a dados, faça o seguinte:

  1. Em um Databricks workspace anexado ao metastore, clique em Ícone de catálogo Catalog.

  2. Clique no ícone de Ícone de engrenagem engrenagem na parte superior do painel Catálogo e selecione Metastore.

  3. Em Details (Detalhes ) tab, ative External data access (Acesso a dados externos).

Observação

Essas opções são exibidas somente para usuários suficientemente privilegiados. Se você não vê essas opções, você não tem permissões para habilitar o acesso externo a dados para uma metastore.

Conceda um diretor EXTERNAL USE SCHEMA

Os clientes externos que se conectam ao Databricks precisam de autorização de um principal com privilégios suficientes.

A Databricks oferece suporte a OAuth e tokens de acesso pessoal (PAT) para autenticação. Consulte Autenticar o acesso a Databricks recurso.

O diretor que solicita a credencial temporária deve ter:

  • O privilégio EXTERNAL USE SCHEMA no esquema que o contém ou em seu catálogo principal.

    Esse privilégio sempre deve ser concedido explicitamente. Somente o proprietário do catálogo principal pode concedê-lo. Para evitar a exfiltração acidental, ALL PRIVILEGES não inclui o privilégio EXTERNAL USE SCHEMA, e os proprietários de esquemas não têm esse privilégio em default.

  • SELECT permissão na tabela, USE CATALOG em seu catálogo principal e USE SCHEMA em seu esquema pai.

O exemplo de sintaxe a seguir demonstra a concessão de EXTERNAL USE SCHEMA a um usuário:

GRANT EXTERNAL USE SCHEMA ON SCHEMA catalog_name.schema_name TO `user@company.com`

Supondo que o usuário tenha as permissões para ler todas as tabelas desejadas no esquema, nenhuma permissão adicional é necessária. Se o senhor precisar conceder permissões adicionais para ler tabelas, consulte Privilégios e objetos protegidos do Unity Catalog.