Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este artigo descreve como criar destinatários de Compartilhamento Delta que não têm acesso a um espaço de trabalho Databricks habilitado para Catálogo Unity e conceder a esses destinatários acesso a dados compartilhados com segurança usando tokens de portador. Esse fluxo de autenticação, juntamente com o fluxo de autenticação de federação de token OIDC, é chamado de compartilhamento aberto.
Eis como funciona:
Como um provedor de dados, você cria o objeto de destinatário em seu metastore do Unity Catalog.
Ao criar o objeto de destinatário, você seleciona o método de token de portador, o Azure Databricks gera um token, um arquivo de credencial que inclui o token e um link de ativação para você compartilhar com o destinatário.
O objeto destinatário tem o tipo de autenticação de
TOKEN. Você pode atualizar e revogar o token conforme necessário.O destinatário acessa o link de ativação, baixa o arquivo de credenciais e usa o arquivo de credenciais para autenticar e obter acesso de leitura às tabelas que você inclui nos compartilhamentos aos quais você dá acesso.
O fluxo de federação OIDC é uma alternativa ao fluxo de token de portador descrito neste artigo. Tem vantagens de segurança e conveniência sobre o fluxo de token portador. Para obter detalhes, consulte a utilização da federação Open ID Connect (OIDC) para ativar a autenticação para as partilhas de Delta Sharing (partilha aberta).
Importante
Todos os tokens de partilha aberta emitidos antes de 8 de dezembro de 2025, com datas de expiração após 8 de dezembro de 2026, ou sem data de expiração, expiram automaticamente a 8 de dezembro de 2026. Se atualmente utiliza tokens de destinatário com duração longa ou ilimitada, revise as suas integrações e renove os tokens conforme necessário para evitar alterações disruptivas após esta data.
Criar o destinatário
Para criar um destinatário para compartilhamento aberto, você pode usar o Gerenciador de Catálogos, a CLI do Catálogo Databricks Unity ou o CREATE RECIPIENT comando SQL em um bloco de anotações do Azure Databricks ou o editor de consultas Databricks SQL.
Permissões necessárias: administrador ou usuário do Metastore com o CREATE RECIPIENT privilégio para o metastore do Unity Catalog onde os dados que você deseja compartilhar estão registrados.
Explorador de Catálogos
No seu espaço de trabalho do Azure Databricks, clique no
Catálogo.
Na parte superior do painel Catálogo , clique no
ícone de engrenagem e selecione Compartilhamento Delta.
Como alternativa, na página Acesso rápido , clique no botão Compartilhamento Delta > .
Na guia Compartilhado por mim, clique em Novo destinatário.
Insira o nome do destinatário
Para Tipo de destinatário, selecione Abrir.
Selecione Token.
(Opcional) Defina o tempo de vida do token (em segundos, minutos, horas ou dias a partir da hora de criação do destinatário). Deixe Definir expiração selecionado para definir um tempo de expiração. Os tokens são válidos por um máximo de um ano após a criação.
Se selecionar Definir expiração e deixar o campo em branco, o tempo de vida do token será definido pelo valor de tempo de vida do token do destinatário estabelecido na configuração do metastore. Consulte Modificar o tempo de vida do token de destinatário. Para obter informações sobre como alterar o tempo de vida do token e rodar tokens, consulte Gerir tokens de destinatário.
(Opcional) Insira um comentário.
Clique em Criar.
Copie o link de ativação.
Como alternativa, você pode obter o link de ativação mais tarde. Consulte Obter o link de ativação.
(Opcional) Crie propriedades personalizadas de Destinatário.
Na guia Visão Geral do Destinatário, clique no ícone
ícone de edição ao lado de Propriedades do Destinatário. Em seguida, adicione um nome de propriedade (Key) e Value. Para obter detalhes, consulte Gerenciar propriedades do destinatário.
SQL
Execute o seguinte comando em um bloco de anotações ou no editor de consultas Databricks SQL:
CREATE RECIPIENT [IF NOT EXISTS] <recipient-name>
[COMMENT "<comment>"];
Você também pode adicionar propriedades personalizadas para o destinatário. Para obter detalhes, consulte Gerenciar propriedades do destinatário.
CLI
Execute o seguinte comando usando a CLI do Databricks.
databricks recipients create <recipient-name>
Você também pode adicionar propriedades personalizadas para o destinatário. Para obter detalhes, consulte Gerenciar propriedades do destinatário.
A saída inclui o activation_url que você compartilha com o destinatário.
O destinatário é criado com o authentication_type de TOKEN.
Observação
Ao criar o destinatário, você tem a opção de limitar o acesso do destinatário a um conjunto restrito de endereços IP. Você também pode adicionar uma lista de acesso IP a um destinatário existente. Consulte Restringir o acesso de destinatários do Compartilhamento Delta usando listas de acesso IP (compartilhamento aberto).
Obter o link de ativação
Para obter o link de ativação do novo destinatário, você pode usar o Gerenciador de Catálogos, a CLI do Catálogo Unity do Databricks ou o DESCRIBE RECIPIENT comando SQL em um bloco de anotações do Azure Databricks ou no editor de consultas do Databricks SQL.
Se o destinatário já tiver baixado o arquivo de credenciais, o link de ativação não será retornado ou exibido.
Permissões necessárias: administrador do Metastore, usuário com o USE RECIPIENT privilégio ou proprietário do objeto destinatário.
Explorador de Catálogos
No seu espaço de trabalho do Azure Databricks, clique no
Catálogo.
Na parte superior do painel Catálogo , clique no
ícone de engrenagem e selecione Compartilhamento Delta.
Como alternativa, na página Acesso rápido , clique no botão Compartilhamento Delta > .
Na guia Compartilhado por mim, clique em Destinatários e selecione o destinatário.
Na página de detalhes do destinatário, copie o link Ativação.
SQL
Execute o seguinte comando em um bloco de anotações ou no editor de consultas Databricks SQL.
DESCRIBE RECIPIENT <recipient-name>;
A saída inclui o activation_link.
CLI
Execute o seguinte comando usando a CLI do Databricks.
databricks recipients get <recipient-name>
A saída inclui o activation_url.
Conceder ao destinatário acesso a um compartilhamento
Depois de criar o destinatário e os compartilhamentos, você pode conceder ao destinatário acesso a esses compartilhamentos.
Para conceder acesso de compartilhamento aos destinatários, você pode usar o Gerenciador de Catálogos, a CLI do Catálogo Unity do Databricks ou o GRANT ON SHARE comando SQL em um bloco de anotações do Azure Databricks ou no editor de consultas do Databricks SQL.
Permissões necessárias: uma das seguintes opções:
- Administrador da Metastore.
- Permissões delegadas ou propriedade nos objetos de partilha e destinatário ((
USE SHARE+SET SHARE PERMISSION) ou proprietário da partilha) E (USE RECIPIENTou proprietário do destinatário).
Para obter instruções, consulte Gerenciar o acesso a compartilhamentos de dados do Delta Sharing (para provedores).
Enviar ao destinatário suas informações de conexão
Você deve informar ao destinatário como acessar os dados que você está compartilhando com ele. Use um canal seguro para partilhar o link de ativação e um link para as instruções de utilização .
Você pode baixar o arquivo de credenciais apenas uma vez. Os destinatários devem tratar a credencial baixada como um segredo e não devem compartilhá-la fora de sua organização. Se você tiver preocupações de que uma credencial pode ter sido tratada de forma insegura, você pode alternar a credencial de um destinatário a qualquer momento. Para obter mais informações sobre como gerenciar credenciais para garantir acesso seguro de destinatários, consulte Considerações de segurança para tokens.
Gerenciar tokens de destinatário
Se você estiver a partilhar dados com um destinatário utilizando o fluxo de token de partilha aberta, talvez seja necessário rotacionar o token desse destinatário. Girar um token consiste em definir um token existente para expirar e substituí-lo por um novo token e URL de ativação.
Você deve girar o token de um destinatário e gerar uma nova URL de ativação nas seguintes circunstâncias:
- Quando o token de destinatário existente estiver prestes a expirar.
- Se um destinatário perder o URL de ativação ou se estiver comprometido.
- Se a credencial estiver corrompida, perdida ou comprometida depois de ser baixada por um destinatário.
- Quando você modifica o tempo de vida do token de destinatário para um metastore. Consulte Modificar o tempo de vida do token de destinatário.
Considerações de segurança para tokens
A qualquer momento, um destinatário pode ter, no máximo, dois tokens: um token ativo e um token rotativo. O token girado é aquele que foi definido para expirar e ser substituído pelo token ativo. Até que o token girado expire, tentar girá-lo novamente resulta em um erro.
Ao girar o token de um destinatário, você pode, opcionalmente, definir --existing-token-expire-in-seconds o número de segundos antes que o token de destinatário existente, ou seja, aquele a ser girado, expire. Se você definir o valor como 0, o token de destinatário existente expirará imediatamente.
O Databricks recomenda que você defina --existing-token-expire-in-seconds para um período relativamente curto que dê à organização do destinatário tempo para acessar a nova URL de ativação enquanto minimiza a quantidade de tempo que o destinatário tem dois tokens ativos. Se você suspeitar que o token de destinatário existente está comprometido, o Databricks recomenda que você o force a expirar imediatamente.
Se a URL de ativação existente de um destinatário nunca tiver sido acessada, girar o token existente invalidará essa URL de ativação e a substituirá por uma nova.
Se todos os tokens de destinatário tiverem expirado, a rotação do token substituirá a URL de ativação existente por uma nova. A Databricks recomenda que rotei ou elimine prontamente um destinatário cujo token tenha expirado.
Se um URL de ativação de destinatário for enviado inadvertidamente para a pessoa errada ou for enviado por um canal inseguro, o Databricks recomenda que você:
- Revogar o acesso do destinatário ao compartilhamento.
- Gire o destinatário e defina
--existing-token-expire-in-secondscomo0. - Partilhe o novo URL de ativação com o destinatário pretendido através de um canal seguro.
- Depois que a URL de ativação for acessada, conceda ao destinatário acesso ao compartilhamento novamente.
Em situações extremas, em vez de girar o token do destinatário, pode-se eliminar e recriar o destinatário.
Rodar o token do destinatário
Para girar o token de um destinatário, você pode usar o Catalog Explorer ou a CLI do Databricks Unity Catalog.
Permissões necessárias: Proprietário do objeto do recetor.
Explorador de Catálogos
No seu espaço de trabalho do Azure Databricks, clique no
Catálogo.
No painel esquerdo, expanda o menu Compartilhamento Delta e selecione Compartilhado por mim.
Na parte superior do painel Catálogo , clique no
ícone de engrenagem e selecione Compartilhamento Delta.
Como alternativa, na página Acesso rápido , clique no botão Compartilhamento Delta > .
Na guia Compartilhado por mim, clique em Destinatários e selecione o destinatário.
No separador Detalhes, em Expiração do Token, clique em Rodar.
Na caixa de diálogo Rodear token, configure o token para expirar imediatamente ou por um período de tempo determinado. Para obter conselhos sobre quando expirar tokens existentes, consulte Considerações de segurança para tokens.
Clique em Girar.
Na guia Detalhes, copie a nova ligação de Ativação e partilhe-a com o destinatário através de um canal seguro. Consulte Obter o link de ativação.
CLI
Execute o seguinte comando usando a CLI do Databricks. Substitua os valores dos espaços reservados:
-
<recipient-name>: o nome do destinatário. -
<expiration-seconds>: O número de segundos até que o token de destinatário existente expire. Durante esse período, o token existente continuará a funcionar. Um valor de0significa que o token existente expira imediatamente. Para obter conselhos sobre quando expirar tokens existentes, consulte Considerações de segurança para tokens.
databricks recipients rotate-token \ <recipient-name> \ <expiration-seconds>-
Obtenha o novo link de ativação do destinatário e compartilhe-o com o destinatário em um canal seguro. Consulte Obter o link de ativação.
Modificar o tempo de vida do token do destinatário
Se você precisar modificar o tempo de vida do token de destinatário padrão para seu metastore do Catálogo Unity, poderá usar o Catalog Explorer ou a CLI do Databricks Unity Catalog.
Observação
O tempo de vida do token de destinatário para destinatários existentes não é atualizado automaticamente quando você altera o tempo de vida do token de destinatário padrão para um metastore. Para aplicar o novo tempo de vida do token a um determinado destinatário, você deve girar o token dele. Consulte Gerenciar tokens de destinatário.
Permissões necessárias: Administrador da conta.
Explorador de Catálogos
- Inicie sessão na consola da conta.
- Na barra lateral, clique no
Catálogo.
- Clique no nome do metastore.
- Em Durabilidade do token de destinatário do Delta Sharing, clique em Editar.
- Habilite Definir expiração.
- Insira um número de segundos, minutos, horas ou dias e selecione a unidade de medida. Os tokens são válidos por um máximo de um ano após a criação.
- Clique em Guardar.
CLI
Execute o seguinte comando usando a CLI do Databricks. Substitua 12a345b6-7890-1cd2-3456-e789f0a12b34 pelo UUID do metastore e substitua 86400 pelo número de segundos antes que o token de destinatário expire. Os tokens são válidos por um máximo de um ano após a criação.
databricks metastores update \
12a345b6-7890-1cd2-3456-e789f0a12b34 \
--delta-sharing-recipient-token-lifetime-in-seconds 86400