Partilhar via


Gerenciar credenciais de serviço

Este artigo descreve como listar, exibir, atualizar, conceder permissões e excluir credenciais de serviço, que são objetos protegíveis do Unity Catalog que permitem controlar o acesso a serviços de nuvem externos.

Consulte também:

Antes de começar

Para executar as tarefas descritas neste artigo, você deve atender aos seguintes requisitos:

  • Um espaço de trabalho do Azure Databricks habilitado para o Catálogo Unity.

  • Para listar ou exibir uma credencial de serviço, você deve ter um dos seguintes privilégios ou funções:

    • BROWSE privilégio no catálogo pai
    • CREATE SERVICE CREDENTIAL na metastore
    • ACCESS na credencial de serviço
    • Proprietário da credencial de serviço
    • Administrador do Metastore
  • Para executar qualquer uma das outras tarefas listadas neste artigo, você deve ser o proprietário da credencial de serviço ou um administrador de metastore.

  • Se você usar comandos SQL para listar, exibir ou atualizar a credencial de serviço, precisará calcular no Databricks Runtime 15.4 LTS ou superior. Não há nenhum requisito de versão do Databricks Runtime se você usar o Catalog Explorer ou a API REST.

Listar credenciais de serviço

Para exibir a lista de todas as credenciais de serviço em um metastore, você pode usar o Catalog Explorer ou um comando SQL.

Explorador de Catálogos

  1. Na barra lateral, clique em Ícone do catálogoCatálogo.
  2. Na página Acesso rápido, clique no >e vá para a guia Credenciais.
  3. Classifique as credenciais por Finalidade (ARMAZENAMENTO ou SERVIÇO).

SQL

Execute o seguinte comando em um bloco de anotações.

SHOW SERVICE CREDENTIALS;

Exibir uma credencial de serviço

Para exibir as propriedades de uma credencial de serviço, você pode usar o Catalog Explorer ou um comando SQL.

Explorador de Catálogos

  1. Na barra lateral, clique em Ícone do catálogoCatálogo.
  2. Na página Acesso rápido, clique no >e vá para a guia Credenciais.
  3. Clique no nome de uma credencial de serviço para ver suas propriedades.

SQL

Execute o seguinte comando em um bloco de anotações. Substitua <credential-name> pelo nome da credencial.

DESCRIBE SERVICE CREDENTIAL <credential-name>;

Mostrar concessões em uma credencial de serviço

Para mostrar concessões em uma credencial de serviço, use um comando como o seguinte. Opcionalmente, você pode filtrar os resultados para mostrar apenas as concessões para o principal especificado.

SHOW GRANTS [<principal>] ON SERVICE CREDENTIAL <service-credential-name>;

Substitua os valores de espaço reservado:

  • <principal>: O endereço de e-mail do usuário de nível de conta ou o nome do grupo de nível de conta que recebeu a permissão.
  • <service-credential-name>: O nome de uma credencial de serviço.

Nota

Se um grupo ou nome de usuário contiver um espaço ou @ símbolo, use ticks invertidos ao redor dele (não apóstrofos). Por exemplo , equipe financeira.

Conceder permissões para usar uma credencial de serviço para acessar um serviço de nuvem externo

Para conceder permissão para usar uma credencial de serviço para acessar um serviço de nuvem externo, conclua as etapas a seguir. Você pode usar o Gerenciador de Catálogos ou comandos SQL:

Explorador de Catálogos

  1. Na barra lateral, clique em Ícone do catálogoCatálogo.
  2. Na página Acesso rápido, clique no >e vá para a guia Credenciais.
  3. Clique no nome de uma credencial de serviço para abrir a página de detalhes.
  4. Clique em Permissões.
  5. Para conceder permissão a usuários ou grupos, selecione cada identidade e clique em Conceder.
    • Selecione ACCESS para conceder a capacidade de usar a credencial de serviço para acessar um serviço ou serviços de nuvem externos.
    • Selecione CREATE CONNECTION para conceder a capacidade de criar uma conexão Lakehouse Federation no Unity Catalog usando essa credencial de serviço. Consulte Gerenciar conexões para a Lakehouse Federation.
  6. Para revogar permissões de usuários ou grupos, selecione cada identidade e clique em Revogar.

SQL

Para conceder acesso, execute um dos seguintes comandos em um bloco de anotações, substituindo os valores de espaço reservado:

  • <principal>: O endereço de e-mail do usuário no nível da conta ou o nome do grupo no nível da conta a quem conceder a permissão.
  • <service-credential-name>: O nome de uma credencial de serviço.

Nota

Se um grupo ou nome de usuário contiver um espaço, traço (-) ou @ símbolo, use ticks invertidos ao redor dele (não apóstrofos). Por exemplo, `finance team`.

GRANT ACCESS ON SERVICE CREDENTIAL <service-credential-name> TO <principal>;

Se você quiser conceder a capacidade de criar uma conexão Lakehouse Federation no Unity Catalog usando essa credencial de serviço, use o seguinte:

GRANT CREATE CONNECTION ON SERVICE CREDENTIAL <service-credential-name> TO <principal>;

Para revogar o acesso, substitua GRANT por REVOKE nestes exemplos.

Alterar o proprietário de uma credencial de serviço

O criador de uma credencial de serviço é seu proprietário inicial. Para alterar o proprietário para um usuário ou grupo diferente no nível da conta, você pode usar o Gerenciador de Catálogos ou um comando SQL.

Explorador de Catálogos

  1. Na barra lateral, clique em Ícone do catálogoCatálogo.
  2. Na página Acesso rápido, clique no >e vá para a guia Credenciais.
  3. Clique no nome de uma credencial de serviço para abrir a caixa de diálogo de edição.
  4. Clique ao Ícone Editar lado de Proprietário.
  5. Digite para procurar uma entidade de segurança e selecione-a.
  6. Clique em Guardar.

SQL

Execute o seguinte comando em um bloco de anotações. Substitua os valores de espaço reservado:

  • <credential-name>: O nome da credencial.
  • <principal>: O endereço de e-mail de um usuário no nível da conta ou o nome de um grupo no nível da conta.
ALTER SERVICE CREDENTIAL <credential-name> OWNER TO <principal>;

Renomear uma credencial de serviço

Para renomear uma credencial de serviço, você pode usar o Gerenciador de Catálogos ou um comando SQL.

Explorador de Catálogos

  1. Na barra lateral, clique em Ícone do catálogoCatálogo.
  2. Na página Acesso rápido, clique no >e vá para a guia Credenciais.
  3. Clique no nome de uma credencial de serviço para abrir a caixa de diálogo de edição.
  4. Renomeie a credencial de serviço e salve-a.

SQL

Execute o seguinte comando em um bloco de anotações. Substitua os valores de espaço reservado:

  • <credential-name>: O nome da credencial.
  • <new-credential-name>: Um novo nome para a credencial.
ALTER SERVICE CREDENTIAL <credential-name> RENAME TO <new-credential-name>;

Excluir uma credencial de serviço

Para excluir (descartar) uma credencial de serviço, você deve ser seu proprietário. Para excluir uma credencial de serviço, você pode usar o Gerenciador de Catálogos ou um comando SQL.

Explorador de Catálogos

  1. Na barra lateral, clique em Ícone do catálogoCatálogo.
  2. Na página Acesso rápido, clique no >e vá para a guia Credenciais.
  3. Clique no nome de uma credencial de serviço para abrir a caixa de diálogo de edição.
  4. Clique no botão Eliminar.

SQL

Execute o seguinte comando em um bloco de anotações. Substitua <credential-name> pelo nome da credencial. Partes do comando que estão entre colchetes são opcionais.

IF EXISTS não retorna um erro se a credencial não existir.

DROP SERVICE CREDENTIAL [IF EXISTS] <credential-name>;