Gerenciar credenciais de armazenamento
Esta página descreve como listar, view, atualizar, conceder permissões e excluir credenciais de armazenamento.
A Databricks recomenda que o senhor conceda apenas CREATE EXTERNAL LOCATION
e nenhum outro privilégio nas credenciais de armazenamento.
Esta página descreve como gerenciar credenciais de armazenamento utilizando o Catalog Explorer e o comando SQL. Para obter informações sobre como utilizar o,Databricks CLI acesse Terraform ou. Consulte a documentação e o Databricks Terraform artigo “O que é o Databricks CLI”.
Listar credenciais de armazenamento
Para view a lista de todas as credenciais de armazenamento em um metastore, o senhor pode usar o Catalog Explorer ou um comando SQL.
- Catalog Explorer
- SQL
- Na barra lateral, clique em
Catálogo .
- Na página de acesso rápido , clique no botão External data (Dados externos ) > e vá para Credentials (Credenciais ) tab.
- Classifique as credenciais por Finalidade (STORAGE ou serviço).
Execute o seguinte comando em um notebook ou no editor Databricks SQL.
SHOW STORAGE CREDENTIALS;
visualizar uma credencial de armazenamento
Para view as propriedades de uma credencial de armazenamento, o senhor pode usar o Catalog Explorer ou um comando SQL.
- Catalog Explorer
- SQL
- Na barra lateral, clique em
Catálogo .
- Na página de acesso rápido , clique no botão External data (Dados externos ) > e vá para Credentials (Credenciais ) tab.
- Clique no nome de uma credencial de armazenamento para ver suas propriedades.
Execute o seguinte comando em um notebook ou no editor Databricks SQL. Substitua <credential-name>
pelo nome da credencial.
DESCRIBE STORAGE CREDENTIAL <credential-name>;
Atribuir uma credencial de armazenamento a um espaço de trabalho específico
Por padrão, uma credencial de armazenamento pode ser acessada de todos os workspaces na metastore. Isso significa que, se um usuário tiver recebido um privilégio (como CREATE EXTERNAL LOCATION
) nessa credencial de armazenamento, ele poderá exercer esse privilégio em qualquer workspace vinculado ao metastore. Se você usar workspaces para isolar o acesso aos dados do usuário, talvez queira permitir o acesso a uma credencial de armazenamento somente de workspaces específicos. Esse recurso é conhecido como vinculação de workspace ou isolamento de credenciais de armazenamento.
Um caso de uso típico para vincular uma credencial de armazenamento a workspaces específicos é o cenário em que um administrador de cloud configura uma credencial de armazenamento usando uma credencial de conta de cloud de produção, e você deve garantir que os usuários do Databricks usem essa credencial para criar locais externos somente no workspace de produção.
Para obter mais informações sobre a vinculação workspace, consulte Limitar o acesso do catálogo a um espaço de trabalho específico.
As vinculações de workspace são referenciadas quando os privilégios sobre as credenciais de armazenamento são exercidos. Por exemplo, se um usuário criar uma localização externa usando uma credencial de armazenamento, a vinculação de workspace na credencial de armazenamento é verificada apenas quando a localização externa é criada. Depois que a localização externa é criada, ela funcionará independentemente das vinculações de workspace configuradas na credencial de armazenamento.
Vincular uma credencial de armazenamento a um ou mais espaços de trabalho
Para atribuir uma credencial de armazenamento a espaços de trabalho específicos, você pode usar o Catalog Explorer ou a CLI da Databricks.
Permissões necessárias : administrador da Metastore, proprietário da credencial de armazenamento ou MANAGE
na credencial de armazenamento.
Os administradores do metastore podem ver todas as credenciais de armazenamento em um metastore usando o Catalog Explorer, e os proprietários de credenciais de armazenamento podem ver todas as credenciais que possuem em um metastore, independentemente de a credencial estar atribuída ao workspace atual. As credenciais de armazenamento que não estão atribuídas ao workspace aparecem esmaecidas.
- Catalog Explorer
- CLI
-
Efetue login em um workspace vinculado ao metastore.
-
Na barra lateral, clique em
Catálogo .
-
Na página de acesso rápido , clique no botão External data (Dados externos ) > e vá para Credentials (Credenciais ) tab.
-
Selecione a credencial de armazenamento e vá para a guia Workspaces .
-
Na guia Workspaces , desmarque a caixa de seleção Todos os workspaces têm acesso .
Se sua credencial de armazenamento já estiver vinculada a um ou mais workspaces, essa caixa de seleção já estará desmarcada.
-
Clique em Atribuir a workspaces e digite ou localize os workspaces que deseja atribuir.
Para revogar o acesso, vá para a tab Workspaces , selecione o workspace e clique em Revogar . Para permitir o acesso de todos os workspaces, marque a caixa de seleção Todos os workspaces têm acesso .
Há dois grupos de Databricks CLI grupos de comando e dois passos necessários para atribuir uma credencial de armazenamento a um workspace.
Nos exemplos a seguir, substitua <profile-name>
pelo nome do perfil de configuração de autenticação do Databricks. Ele deve incluir o valor de um access token pessoal, além do nome da instância workspace e o ID workspace do workspace onde o senhor gerou o access token pessoal. Consulte Autenticação pessoal access token (obsoleta).
-
Use o comando
storage-credentials
do grupoupdate
para definir o comandoisolation mode
da credencial de armazenamento paraISOLATED
:Bashdatabricks storage-credentials update <my-storage-credential> \
--isolation-mode ISOLATED \
--profile <profile-name>O padrão
isolation-mode
éOPEN
para todos os workspaces anexados ao metastore. -
Use o comando
workspace-bindings
do grupoupdate-bindings
para atribuir o espaço de trabalho à credencial de armazenamento:Bashdatabricks workspace-bindings update-bindings storage-credential <my-storage-credential> \
--json '{
"add": [{"workspace_id": <workspace-id>}...],
"remove": [{"workspace_id": <workspace-id>}...]
}' --profile <profile-name>Use as propriedades
"add"
e"remove"
para adicionar ou remover vinculações de workspace.
A vinculação somente para leitura (BINDING_TYPE_READ_ONLY
) não está disponível para credenciais de armazenamento. Portanto, não há razão para definir binding_type
para a vinculação de credenciais de armazenamento.
Para listar todas as atribuições de workspace para uma credencial de armazenamento, use o comando workspace-bindings
do grupo get-bindings
:
databricks workspace-bindings get-bindings storage-credential <my-storage-credential> \
--profile <profile-name>
Desvincular uma credencial de armazenamento de um workspace
As instruções para revogar o acesso workspace a uma credencial de armazenamento usando o Catalog Explorer ou o grupo de comando workspace-bindings
CLI estão incluídas em Vincular uma credencial de armazenamento a um ou mais espaços de trabalho.
Mostrar concessões em uma credencial de armazenamento
Para view as concessões em uma credencial de armazenamento, é possível utilizar o Catalog Explorer ou um comando SQL.
- Catalog Explorer
- SQL
- Na barra lateral, clique em
Catálogo .
- Na página de acesso rápido , clique no botão External data (Dados externos ) > e vá para Credentials (Credenciais ) tab.
- Clique no nome de uma credencial de armazenamento.
- Clique em Permissões .
Para mostrar concessões em uma credencial de armazenamento, use um comando como o seguinte. Opcionalmente, você pode filtrar os resultados para mostrar somente as concessões para o principal especificado.
SHOW GRANTS [<principal>] ON STORAGE CREDENTIAL <storage-credential-name>;
Substitua os valores temporários:
<principal>
: O endereço email do usuário accountou o nome do grupo account a quem conceder a permissão. Se um grupo ou nome de usuário contiver um espaço ou símbolo@
, use marcações invertidas ao redor dele (não apóstrofos). Por exemplo, equipe financeira .<storage-credential-name>
: nome de uma credencial de armazenamento.
Conceder permissões para criar locais externos
Para conceder permissão para criar um local externo usando uma credencial de armazenamento, conclua as seguintes etapas:
- Catalog Explorer
- SQL
- Na barra lateral, clique em
Catálogo .
- Na página de acesso rápido , clique no botão External data (Dados externos ) > e vá para Credentials (Credenciais ) tab.
- Clique no nome de uma credencial de armazenamento para abrir a página de detalhes.
- Clique em Permissões .
- Para conceder permissão a usuários ou grupos, selecione cada identidade e clique em Conceder .
- Para revogar permissões de usuários ou grupos, selecione cada identidade e clique em Revogar .
Execute o seguinte comando em um Notebook ou no editor de consultas SQL:
GRANT CREATE EXTERNAL LOCATION ON STORAGE CREDENTIAL <storage-credential-name> TO <principal>;
Substitua os valores temporários:
<principal>
: O endereço email do usuário accountou o nome do grupo account a quem conceder a permissão. Se um grupo ou nome de usuário contiver um espaço ou símbolo@
, use marcações invertidas ao redor dele (não apóstrofos). Por exemplo, equipe financeira .<storage-credential-name>
: nome de uma credencial de armazenamento.
Alterar o proprietário de uma credencial de armazenamento
O criador de uma credencial de armazenamento é seu proprietário inicial. Para alterar o proprietário para um usuário ou grupo de nível accountdiferente, o senhor pode usar o Catalog Explorer ou um comando SQL.
- Catalog Explorer
- SQL
- Na barra lateral, clique em
Catálogo .
- Na página de acesso rápido , clique no botão External data (Dados externos ) > e vá para Credentials (Credenciais ) tab.
- Clique no nome de uma credencial de armazenamento.
- Clique
ao lado de Proprietário .
- Digite para pesquisar um diretor e selecioná-lo.
- Clique em Salvar .
Execute o seguinte comando em um notebook ou no editor Databricks SQL. Substitua os valores temporários:
<credential-name>
: nome da credencial.<principal>
: O endereço email de um usuário de nível accountou o nome de um grupo de nível account.
ALTER STORAGE CREDENTIAL <credential-name> OWNER TO <principal>;
Marcar uma credencial de armazenamento como somente para leitura
Se quiser que os usuários tenham acesso somente leitura a todos os dados gerenciados por uma credencial de armazenamento, o senhor pode usar o Catalog Explorer para marcar a credencial de armazenamento como somente leitura.
Tornar as credenciais de armazenamento somente para leitura significa que qualquer armazenamento configurado com essa credencial é somente para leitura.
Você pode marcar as credenciais de armazenamento como somente para leitura ao criá-las.
Você também pode usar o Catalog Explorer para alterar o status de somente leitura depois de criar uma credencial de armazenamento:
- No Catalog Explorer, localize a credencial de armazenamento, clique no
menu kebab na linha do objeto e selecione Editar.
- Na caixa de diálogo de edição, selecione a opção Somente leitura .
Renomear uma credencial de armazenamento
Para renomear uma credencial de armazenamento, o senhor pode usar o Catalog Explorer ou um comando SQL.
- Catalog Explorer
- SQL
- Na barra lateral, clique em
Catálogo .
- Na página de acesso rápido , clique no botão External data (Dados externos ) > e vá para Credentials (Credenciais ) tab.
- Clique no nome de uma credencial de armazenamento para abrir a caixa de diálogo de edição.
- Renomeie a credencial de armazenamento e salve-a.
Execute o seguinte comando em um notebook ou no editor Databricks SQL. Substitua os valores temporários:
<credential-name>
: nome da credencial.<new-credential-name>
: novo nome para a credencial.
ALTER STORAGE CREDENTIAL <credential-name> RENAME TO <new-credential-name>;
Excluir uma credencial de armazenamento
Para excluir (descartar) uma credencial de armazenamento, você deve ser seu proprietário. Para excluir uma credencial de armazenamento, o senhor pode usar o Catalog Explorer ou um comando SQL.
- Catalog Explorer
- SQL
- Na barra lateral, clique em
Catálogo .
- Na página de acesso rápido , clique no botão External data (Dados externos ) > e vá para Credentials (Credenciais ) tab.
- Clique no nome de uma credencial de armazenamento para abrir a caixa de diálogo de edição.
- Clique no botão Excluir .
Execute o seguinte comando em um notebook ou no editor Databricks SQL. Substitua <credential-name>
pelo nome da credencial. As partes do comando que estão entre colchetes são opcionais. Por padrão, se a credencial for usada por um local externo, ela não será excluída. Substitua <credential-name>
pelo nome da credencial.
IF EXISTS
não retorna um erro se a credencial não existir.
DROP STORAGE CREDENTIAL [IF EXISTS] <credential-name>;