Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Identidades, permissões e privilégios controlam quem pode executar, gerir e consultar pipelines e os dados que produzem.
A Databricks recomenda o uso do Unity Catalog para todos os novos pipelines. Por padrão, exibições materializadas e tabelas de streaming criadas por pipelines configurados com o Unity Catalog só podem ser consultadas pelo proprietário do pipeline. Consulte Utilizar o catálogo Unity com pipelines.
Se os seus pipelines publicam conjuntos de dados no metastore legado do Hive, consulte Utilizar pipelines Lakeflow com o metastore legado do Hive.
Para obter práticas recomendadas gerais sobre configurações de identidade, consulte Práticas recomendadas de identidade.
Qual identidade é usada para atualizações de pipeline?
Os pipelines processam atualizações utilizando a identidade do utilizador run-as. Por defeito, o utilizador run-as é o criador do pipeline, mas pode mudá-lo para outro utilizador ou para um principal de serviço. Veja Definir o utilizador como executado.
Databricks recomenda definir o utilizador de execução como uma entidade de serviço, para que as atualizações da canalização não fiquem associadas à conta de um utilizador individual. Consulte Entidades de serviço.
Atribua a esse principal de serviço apenas os privilégios do Unity Catalog de que o pipeline necessita, em vez de acesso alargado ao nível da conta. Por exemplo, conceda USE CATALOG no catálogo de destino, USE SCHEMA e o privilégio CREATE apropriado (CREATE MATERIALIZED VIEW ou CREATE TABLE) no esquema de saída, e SELECT nas suas fontes. Para o conjunto completo de privilégios necessários para publicar no Catálogo Unity, veja Requisitos.
Quem pode executar uma atualização de pipeline?
As atualizações de pipeline podem ser executadas por qualquer usuário ou entidade de serviço com permissões CAN RUN, CAN MANAGE ou IS OWNER.
Quem pode visualizar um pipeline e a sua saída?
Para abrir um pipeline e ver os seus detalhes, um utilizador precisa de ter, pelo menos, a permissão CAN VIEW no pipeline. Para a lista completa dos níveis de permissões dos pipelines e as capacidades que cada um concede, consulte Lakeflow pipelines ACLs.
Para visualizar o pipeline que está subjacente a uma tabela de streaming ou vista materializada, um utilizador não administrador também precisa do privilégio REFRESH nessa tabela de streaming ou vista materializada, além das suas permissões no pipeline. Sem o REFRESH privilégio, o URL do pipeline mostra que o Pipeline não está disponível.
Configurar permissões de pipeline
Para gerenciar permissões no pipeline, é necessário ter a permissão CAN MANAGE ou IS OWNER. Os pipelines usam listas de controle de acesso (ACLs) para controlar permissões. Para uma lista completa de permissões e das suas capacidades, veja ACLs dos pipelines Lakeflow.
- Na barra lateral, clique em Jobs & Pipelines.
- Selecione o Nome de um pipeline.
- Clique em Share (Partilhar). A caixa de diálogo Configurações de permissões é exibida.
- Clique em Selecionar Usuário, Grupo ou Entidade de Serviço... e selecione um usuário, grupo ou entidade de serviço.
- Selecione uma permissão no menu pendente.
- Clique em Adicionar.
- Clique em Salvar.
Muda o proprietário do oleoduto
Por defeito, o proprietário do pipeline é também o utilizador de execução sob o qual as atualizações do pipeline são executadas. Mudar o proprietário altera a identidade usada para futuras atualizações.
Se pretender alterar a identidade com a qual as atualizações do pipeline são executadas sem alterar o proprietário, defina antes o utilizador de execução. Veja Definir o utilizador como executado.
Para mudar o proprietário de um pipeline, tens de ser tanto administrador de metastore como administrador de workspace. Muda o proprietário usando a interface ou a API REST.
Usar a interface do usuário
- Na barra lateral, clique em Jobs & Pipelines.
- Selecione o nome do pipeline.
- Clique em Share (Partilhar). A caixa de diálogo Configurações de permissões é exibida.
- Limpa o proprietário atual e depois seleciona o novo proprietário. O proprietário pode ser um utilizador ou um principal de serviço. A Databricks recomenda um service principal. Consulte Entidades de serviço.
- Clique em Salvar.
Utilizar a API REST
Se o controlo de proprietário não estiver disponível na interface de utilizador, como acontece com alguns pipelines geridos internamente, altere o proprietário através da operação da API REST Set pipeline permissions. Especifique o user_name do novo proprietário (ou service_principal_name para um principal de serviço) com o nível de permissão IS_OWNER:
{
"access_control_list": [
{
"user_name": "new.owner@example.com",
"permission_level": "IS_OWNER"
}
]
}
Se nenhum utilizador for simultaneamente administrador da metastore e administrador do workspace
Se ninguém na sua organização for ao mesmo tempo administrador de metastore e administrador do workspace, contacte o seu representante da Databricks para alterar o proprietário do pipeline.
Permitir que utilizadores não administradores visualizem os registos do driver num pipeline habilitado com o Catálogo Unity
Por padrão, somente o proprietário do pipeline e os administradores do espaço de trabalho podem visualizar os logs de driver do cluster que executa um pipeline habilitado para Unity Catalog. Você pode habilitar o acesso aos logs de driver para qualquer usuário com permissões CAN MANAGE, CAN VIEW ou CAN RUN adicionando o seguinte parâmetro de configuração do Spark ao configuration objeto nas configurações de pipeline:
{
"configuration": {
"spark.databricks.acl.needAdminPermissionToViewLogs": "false"
}
}
Credenciais de referência de um escopo secreto
Nunca codifique chaves API, palavras-passe de base de dados ou tokens no código-fonte do seu pipeline. Armazene-as num escopo secreto e faça referência a elas em tempo de execução:
api_token = dbutils.secrets.get(scope="orders-pipeline-secrets", key="external_api_token")
O Azure Databricks redige automaticamente valores secretos ([REDACTED]) em qualquer lugar onde seriam impressos na saída do notebook ou log, e podes restringir quem consegue ler um scope com uma ACL secreta. Consulte Gestão secreta.
Proteger dados sensíveis na saída do pipeline
Para colunas que contenham informação pessoalmente identificável (PII), aplique a governação do Unity Catalog às tabelas que o seu pipeline produz, em vez de escrever lógica de mascaramento personalizada no seu código de pipeline:
- As máscaras da coluna redigem ou fazem hash do valor de uma coluna com base na pertença ao grupo do utilizador que faz a consulta.
- Os filtros de linhas restringem as linhas que o utilizador pode ver.
Aplicar estes controlos na tabela do Catálogo Unity protege informações pessoais identificáveis de forma consistente para todos os consumidores da tabela, incluindo dashboards, consultas ad hoc e trabalhos a jusante, não apenas dentro do pipeline. Consulte os filtros de linha e as máscaras de coluna. Como passo adicional, mantenha a informação de identificação pessoal isolada em colunas ou tabelas específicas, num esquema com um nome claro, para que as permissões de acesso e as auditorias sejam mais simples de compreender.