Conceder e gerenciar acesso aos compartilhamentos de dados de compartilhamento da Delta (para provedores)

Este artigo explica como conceder a um destinatário de dados acesso a um compartilhamento Delta Sharing. Ele também explica como view, atualizar e revogar o acesso.

Requisitos

Para compartilhar dados com destinatários:

  • Você deve usar um workspace do Databricks que tenha um metastore do Unity Catalog anexado.

  • Você deve usar um SQL warehouse ou clusters que usem um modo de acesso clusters com capacidade Unity-Catalog.

  • Os compartilhamentos e destinatários já devem estar definidos.

  • Você deve ser um dos seguintes:

    • Administrador de metastore.

    • Usuário com permissões ou propriedade delegada no compartilhamento e nos objetos destinatários ((USE SHARE + SET SHARE PERMISSION) ou proprietário do compartilhamento) E (USE RECIPIENT ou proprietário destinatário).

Conceder acesso ao destinatário para compartilhar

Para conceder acesso de compartilhamento aos destinatários, você pode usar o Catalog Explorer, a CLI Unity Catalog ou comandos SQL em um Notebook do Databricks ou no editor query Databricks SQL .

Permissões necessárias: Uma das seguintes:

  • Administrador de metastore.

  • Permissões ou propriedade delegadas no compartilhamento e nos objetos do destinatário ((USE SHARE + SET SHARE PERMISSION) ou proprietário do compartilhamento) E (USE RECIPIENT ou proprietário do destinatário).

Para adicionar destinatários a um compartilhamento (começando no compartilhamento):

  1. No seu workspace do Databricks, clique em Ícone de catálogo Catálogo.

  2. No painel esquerdo, expanda o menu Delta compartilhamento e selecione Compartilhado por mim.

  3. Na tab Compartilhamentos , localize e selecione o compartilhamento.

  4. Clique em Adicionar destinatário.

  5. Na caixa de diálogo Adicionar destinatário , comece digitando o nome do destinatário ou clique no menu suspenso para selecionar os destinatários que deseja adicionar ao compartilhamento.

  6. Clique em Adicionar.

Para conceder acesso de compartilhamento a um destinatário (começando no destinatário):

  1. No seu workspace do Databricks, clique em Ícone de catálogo Catálogo.

  2. No painel esquerdo, expanda o menu Delta compartilhamento e selecione Compartilhado por mim.

  3. Na tab Destinatários , localize e selecione o destinatário.

  4. Clique em Conceder compartilhamento.

  5. Na caixa de diálogo Conceder compartilhamento , comece digitando o nome do compartilhamento ou clique no menu suspenso para selecionar os compartilhamentos que deseja conceder.

  6. Clique em Conceder.

execução do seguinte comando em um Notebook ou no editor query Databricks SQL .

GRANT SELECT ON SHARE <share-name> TO RECIPIENT <recipient-name>;

SELECT é o único privilégio que você pode conceder a um destinatário em um compartilhamento.

Crie um arquivo JSON que inclua o seguinte, substituindo recipient-name. SELECT é o único privilégio que você pode conceder em um compartilhamento.

{
  "privilege_assignments": [{
    "principal": "recipient-name",
    "privileges": [
      "SELECT"
    ]
  }]
}

Em seguida, execute o seguinte comando usando a CLI do Databricks. Substitua <share-name> pelo nome do compartilhamento que deseja conceder ao destinatário e substitua update-share-perms.json pelo nome do arquivo JSON.

databricks unity-catalog shares update-permissions --name <share-name> \
                                --json-file update-share-perms.json

Revogar o acesso do destinatário a um compartilhamento

Para revogar o acesso de um destinatário a um compartilhamento, você pode usar o Catalog Explorer, a CLI Unity Catalog ou o comando SQL REVOKE ON SHARE em um Notebook do Databricks ou no editor query Databricks SQL .

Permissões necessárias: administrador do metastore, usuário com o privilégio USE SHARE ou proprietário do objeto de compartilhamento.

Para revogar o acesso de um destinatário a um compartilhamento, começando pelo compartilhamento:

  1. No seu workspace do Databricks, clique em Ícone de catálogo Catálogo.

  2. No painel esquerdo, expanda o menu Delta compartilhamento e selecione Compartilhado por mim.

  3. Na tab Compartilhamentos , localize e selecione o compartilhamento.

  4. Na tab Destinatários , localize o destinatário.

  5. Clique no Menu Kebab menu kebab (também conhecido como menu de três pontos) e selecione Revogar.

  6. Na caixa de diálogo de confirmação, clique em Revogar.

Para revogar o acesso de um destinatário a um compartilhamento, começando pelo destinatário:

  1. No seu workspace do Databricks, clique em Ícone de catálogo Catálogo.

  2. No painel esquerdo, expanda o menu Delta compartilhamento e selecione Compartilhado por mim.

  3. Na tab Destinatários , localize e selecione o destinatário.

  4. Na tab Compartilhamentos , localize o compartilhamento.

  5. Clique no Menu Kebab menu kebab (também conhecido como menu de três pontos) na linha de compartilhamento e selecione Revogar.

  6. Na caixa de diálogo de confirmação, clique em Revogar.

execução do seguinte comando em um Notebook ou no editor query Databricks SQL .

REVOKE SELECT ON SHARE <share-name> FROM RECIPIENT <recipient-name>;

Crie um arquivo JSON que inclua o seguinte, substituindo recipient-name:

{
  "changes": [{
    "principal": "recipient-name",
    "remove": ["SELECT"]
  }]
}

execução do seguinte comando usando a CLI do Databricks. Substitua <share-name> pelo nome do compartilhamento que deseja conceder ao destinatário e substitua update-share-perms.json pelo nome do arquivo JSON.

databricks unity-catalog shares update-permissions --name <share-name> --json-file update-share-perms.json

Exibir concessões em uma ação ou concessões possuídas por um destinatário

Para view as concessões atuais em um compartilhamento, você pode usar o Catalog Explorer, a CLI Unity Catalog ou o comando SQL SHOW GRANTS ON SHARE em um Notebook do Databricks ou no editor query Databricks SQL .

Permissões necessárias: se estiver visualizando destinatários com acesso a um compartilhamento, você deve ser um administrador de metastore, um usuário com o privilégio USE SHARE ou o proprietário do objeto de compartilhamento. Se estiver visualizando compartilhamentos concedidos a um destinatário, você deve ser um administrador metastore, um usuário com o privilégio USE RECIPIENT ou o proprietário do objeto destinatário.

Para view os destinatários com acesso a um compartilhamento:

  1. No seu workspace do Databricks, clique em Ícone de catálogo Catálogo.

  2. No painel esquerdo, expanda o menu Delta compartilhamento e selecione Compartilhado por mim.

  3. Na tab Compartilhamentos , localize e selecione o compartilhamento.

  4. Vá para a tab Destinatários para view todos os destinatários que têm acesso ao compartilhamento.

execução do seguinte comando em um Notebook ou no editor query Databricks SQL .

SHOW GRANT ON SHARE <share-name>;

execução do seguinte comando usando a CLI do Databricks.

databricks unity-catalog shares list-permissions --name <share-name>

Para view as concessões de compartilhamento atuais possuídas por um destinatário, você pode usar o Catalog Explorer, a CLI Unity Catalog ou o comando SQL SHOW GRANTS TO RECIPIENT em um Notebook do Databricks ou no editor query Databricks SQL .

Para view os compartilhamentos concedidos a um destinatário:

  1. No seu workspace do Databricks, clique em Ícone de catálogo Catálogo.

  2. No painel esquerdo, expanda o menu Delta compartilhamento e selecione Compartilhado por mim.

  3. Na tab Destinatários , localize e selecione o destinatário.

  4. Vá para a tab Compartilhamentos para view todos os compartilhamentos aos quais o destinatário tem acesso.

execução do seguinte comando em um Notebook ou no editor query Databricks SQL .

SHOW GRANTS TO RECIPIENT <recipient-name>;

execução do seguinte comando usando a CLI do Databricks.

databricks unity-catalog recipients list-permissions --name <recipient-name>