Venda automática de credenciais do Unity Catalog para acesso externo ao sistema
Prévia
Esse recurso está em Prévia Pública.
Este artigo descreve como a funcionalidade de venda de credenciais do site Unity Catalog oferece suporte ao acesso aos dados em Databricks a partir de mecanismos de processamento externos.
A venda automática de credenciais é compatível com sistemas externos que se conectam ao Unity Catalog usando a API REST do Unity e o catálogo REST do Iceberg. Consulte Read Databricks tables from Delta clients e Access Databricks uso de dados external systems.
O que é a venda automática de credenciais do Unity Catalog?
A venda automática de credenciais concede credenciais de curta duração usando a API REST do Unity Catalog. As credenciais concedidas herdam os privilégios do principal do Databricks usado para configurar a integração. Essas credenciais concedem aos clientes externos acesso aos dados registrados no metastore do Unity Catalog.
Observação
A venda automática de credenciais do Unity Catalog oferece suporte ao acesso somente leitura aos dados do Unity Catalog. Alguns clientes oferecem suporte ao acesso a tabelas apoiadas pelo Delta Lake, enquanto outros exigem que o senhor habilite leituras Iceberg (UniForm) nas tabelas. Consulte Habilitar leituras em Iceberg nas tabelas Delta (UniForm).
Para que seja concedida uma credencial temporária, o Databricks principal (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 que ele precisa acessar do mecanismo externo. O metastore do Unity Catalog que contém o esquema também deve ser ativado explicitamente para acesso externo. Consulte Habilitar acesso a dados externos no Unity Catalog.
As credenciais incluem cadeias de tokens de acesso de curta duração e URL do local de armazenamento em nuvem que o mecanismo externo pode usar para acessar os dados da tabela e os metadados do local de armazenamento em nuvem.
Requisitos
Você deve configurar o acesso externo no metastore e conceder
EXTERNAL USE SCHEMA
ao principal que está configurando a conexão. Consulte Ativar acesso a dados externos no Unity Catalog.Para acessar o Databricks workspace usando o Unity Catalog Open APIs ou Iceberg REST APIs, o URL workspace deve estar acessível ao mecanismo que executa a solicitação. Isso inclui espaços de trabalho que usam listas de acesso IP ou AWS Private Link.
Para acessar o local de armazenamento em nuvem subjacente para objetos de dados registrados no Unity Catalog, as URLs de armazenamento geradas pela API de credenciais temporárias do Unity Catalog devem estar acessíveis ao mecanismo que executa a solicitação. Isso significa que o mecanismo deve ser permitido no firewall e nas listas de controle de acesso à rede para a conta de armazenamento em nuvem subjacente.
Solicite uma credencial temporária para acesso externo a dados
O suporte para venda de credenciais varia de acordo com o cliente externo. Onde houver suporte, o cliente deve aproveitar automaticamente as credenciais vendidas quando uma conexão é configurada.
Esta seção fornece um exemplo de como chamar explicitamente o endpoint da API de venda de credenciais. Alguns clientes externos podem exigir que o senhor defina explicitamente as configurações para acessar dados e metadados no armazenamento de objetos na nuvem que fazem backup das tabelas do Unity Catalog. Você pode usar valores retornados pela venda de credenciais para configurar o acesso.
Observação
O senhor pode recuperar uma lista de tabelas que suportam a venda de credenciais invocando a API ListTables com a opção include_manifest_capabilities
ativada. Somente as tabelas marcadas como HAS_DIRECT_EXTERNAL_ENGINE_READ_SUPPORT
ou HAS_DIRECT_EXTERNAL_ENGINE_WRITE_SUPPORT
são elegíveis para referência na API temporary-table-credentials. Consulte GET /api/2.1/unity-catalog/tables.
O exemplo curl
a seguir solicita explicitamente uma credencial temporária para acesso externo a dados. Essa solicitação deve ser preenchida por um diretor com privilégios suficientes workspace.
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 da Databricks.
Limitações
Aplicam-se as seguintes limitações:
Nem todos os clientes externos oferecem suporte à venda de credenciais, e o suporte pode variar dependendo do armazenamento subjacente de objetos na nuvem.
Somente as tabelas gerenciais Unity Catalog e as tabelas externas Unity Catalog apoiadas por Delta Lake são compatíveis.
As tabelas habilitadas para leituras Iceberg compartilham esse requisito. Consulte Habilitar leituras em Iceberg nas tabelas Delta (UniForm).
Não há suporte para os seguintes tipos de tabela ou tabelas com recurso ativado:
Tabelas com filtros de linha ou máscaras de coluna.
Tabelas compartilhadas usando o Delta Sharing.
tabelas federadas de lakehouse (tabelas estrangeiras).
vista.
Visualização materializada.
Delta Live Tables tabelas de transmissão.
Tabelas online.
Índices de pesquisa vetorial.