Compartilhar via


Provisionamento de credenciais do Catálogo do Unity para acesso a sistemas externos

Importante

Esse recurso está em uma versão prévia.

Gorjeta

Para obter informações sobre como ler dados do Azure Databricks usando o Microsoft Fabric, veja Use o Microsoft Fabric para ler dados registrados no Unity Catalog.

Este artigo descreve como a funcionalidade de distribuição de credenciais do Unity Catalog suporta o acesso a dados no Azure Databricks a partir de mecanismos externos de processamento.

A venda automática de credenciais dá suporte a sistemas externos que se conectam ao Catálogo do Unity usando a API REST do Unity e o catálogo REST do Iceberg. Confira Ler tabelas do Databricks de clientes Delta e Acessar dados do Databricks usando sistemas externos.

O que é a venda automática de credenciais do Catálogo do Unity?

A Venda de credenciais concede credenciais de curta duração usando a API REST do Catálogo Unity. As credenciais concedidas herdam os privilégios do principal do Azure Databricks usado para configurar a integração. Essas credenciais concedem aos clientes externos acesso aos dados registrados no metastore do Catálogo do Unity.

Observação

A distribuição de credenciais do Catálogo Unity dá suporte ao seguinte:

  • Acesso de leitura às tabelas gerenciadas do Catálogo do Unity.
  • Acesso somente leitura a tabelas configuradas para leituras de Iceberg.
  • Permissão de leitura e escrita para tabelas externas do Unity Catalog.

Alguns clientes dão suporte ao acesso a tabelas apoiadas pelo Delta Lake, enquanto outros exigem que você habilite leituras de Iceberg (UniForm) em tabelas. Confira Ler tabelas Delta com clientes do Iceberg.

Para receber uma credencial temporária, a entidade de serviço do Azure Databricks (usuário, grupo ou entidade de serviço) que faz a solicitação deve ter o privilégio EXTERNAL USE SCHEMA no esquema que contém a tabela à qual precisa acessar do mecanismo externo. O metastore do Catálogo do Unity que contém o esquema também deve ser habilitado explicitamente para acesso externo. Consulte Ativar o acesso a dados externos ao Catálogo do Unity.

As credenciais incluem uma cadeia de caracteres de token de acesso de curta duração e uma URL de local de armazenamento em nuvem que o mecanismo externo pode usar para acessar dados de tabela e metadados do local de armazenamento em nuvem.

Requisitos

  • Você deve configurar o acesso externo no metastore e conceder EXTERNAL USE SCHEMA ao principal responsável pela configuração da conexão. Consulte Ativar o acesso a dados externos ao Catálogo do Unity.
  • Para acessar o workspace do Azure Databricks usando APIs Abertas do Catálogo do Unity ou APIs REST do Iceberg, a URL do workspace deve estar acessível ao mecanismo que está executando a solicitação. Isso inclui workspaces que usam listas de acesso IP ou Link Privado do Azure.
  • Para acessar o local de armazenamento em nuvem subjacente para objetos de dados registrados no Catálogo do Unity, as URLs de armazenamento geradas pela API de credenciais temporárias do Catálogo do Unity devem estar acessíveis ao mecanismo que executa a solicitação. Isso significa que o mecanismo deve ter permissão no firewall e nas listas de controle de acesso de rede para as contas de armazenamento em nuvem subjacentes.

Solicitar uma credencial temporária para acesso a dados externos

O suporte para fornecimento de credenciais varia de acordo com o cliente externo. Quando houver suporte, o cliente deve aproveitar automaticamente as credenciais fornecidas quando uma conexão for configurada.

Esta seção dá um exemplo de como chamar explicitamente o ponto de extremidade da API de fornecimento de credenciais. Alguns clientes externos podem exigir que você defina explicitamente as configurações para acessar dados e metadados no armazenamento de objetos de nuvem que dão suporte às tabelas do Catálogo do Unity. Você pode usar valores retornados pela venda automática de credenciais para configurar o acesso.

Observação

Você pode recuperar uma lista de tabelas que dão suporte à venda automática de credenciais invocando a API ListTables com a opção include_manifest_capabilities habilitada. Somente tabelas marcadas HAS_DIRECT_EXTERNAL_ENGINE_READ_SUPPORT ou HAS_DIRECT_EXTERNAL_ENGINE_WRITE_SUPPORT são qualificadas para referência na API de credenciais de tabela temporária. Confira GET /api/2.1/unity-catalog/tables.

O exemplo de curl a seguir solicita explicitamente uma credencial temporária para acesso a dados externos. Essa solicitação deve ser concluída por uma entidade de segurança do workspace suficientemente privilegiado.

curl -X POST -H "Authentication: Bearer $OAUTH_TOKEN" \
https://<workspace-instance>/api/2.1/unity-catalog/temporary-table-credentials \
-d '{"table_id": "<string>", "operation_name": "<READ|READ_WRITE>"}'

Para obter detalhes, consulte POST /api/2.1/unity-catalog/temporary-table-credentials na referência da API REST do Azure Databricks.

Limitações

As seguintes limitações existem:

  • Nem todos os clientes externos dão suporte à venda automática de credenciais e o suporte pode variar dependendo do armazenamento de objetos de nuvem subjacente.
  • Há suporte apenas para tabelas gerenciadas do Catálogo do Unity e tabelas externas do Catálogo do Unity.
  • Não há suporte para os seguintes tipos de tabela ou tabelas com recursos habilitados:
    • Tabelas com filtros de linha ou máscaras de coluna.
    • Tabelas compartilhadas usando o Compartilhamento Delta.
    • Tabelas federadas do Lakehouse (tabelas externas).
    • Exibições.
    • Exibições materializadas.
    • Tabelas de streaming de Delta Live Tables.
    • Tabelas online.
    • Índices de Busca Vetorial.