Partilhar via


Conceder permissões à identidade gerida da área de trabalho

Este artigo ensina como conceder permissões para a identidade gerenciada no espaço de trabalho Synapse do Azure. As permissões, por sua vez, permitem o acesso a pools SQL dedicados no espaço de trabalho e na conta do Azure Data Lake Storage Gen2 por meio do portal do Azure.

Nota

Essa identidade gerenciada do espaço de trabalho é chamada de identidade gerenciada pelo restante deste documento.

Conceder as permissões de identidade gerenciada à conta do Armazenamento Data Lake

Uma conta do Data Lake Storage Gen2 é necessária para criar um espaço de trabalho do Azure Synapse. Para iniciar com êxito pools do Spark no espaço de trabalho do Azure Synapse, a identidade gerenciada do Azure Synapse precisa da função de Colaborador de Dados do Blob de Armazenamento nessa conta de armazenamento. A orquestração de pipeline no Azure Synapse também se beneficia dessa função.

Conceder permissões à identidade gerenciada durante a criação do espaço de trabalho

O Azure Synapse tenta conceder a função de Colaborador de Dados de Blob de Armazenamento à identidade gerenciada depois de criar o espaço de trabalho do Azure Synapse usando o portal do Azure. Você fornece os detalhes da conta do Armazenamento Data Lake na guia Noções básicas .

Captura de tela da guia Noções básicas no fluxo de criação do espaço de trabalho.

Escolha a conta e o sistema de arquivos do Data Lake Storage Gen2 em Nome da conta e Nome do sistema de arquivos.

Captura de tela mostrando os detalhes da conta do Data Lake Storage Gen2.

Se o criador do espaço de trabalho também for Proprietário da conta de Armazenamento Data Lake, o Azure Synapse atribuirá a função de Colaborador de Dados de Blob de Armazenamento à identidade gerenciada. É apresentada a seguinte mensagem.

Captura de tela da atribuição bem-sucedida do contribuidor de dados do blob de armazenamento.

Se o criador do espaço de trabalho não for o proprietário da conta de Armazenamento Data Lake, o Azure Synapse não atribuirá a função de Colaborador de Dados de Blob de Armazenamento à identidade gerenciada. A mensagem a seguir notifica o criador do espaço de trabalho de que ele não tem permissões suficientes para conceder a função de Colaborador de Dados de Blob de Armazenamento à identidade gerenciada.

Captura de tela de uma atribuição de contribuidor de dados de blob de armazenamento malsucedida, com a caixa de erro realçada.

Não é possível criar pools do Spark a menos que o Colaborador de Dados de Blob de Armazenamento seja atribuído à identidade gerenciada.

Conceder permissões à identidade gerenciada após a criação do espaço de trabalho

Durante a criação do espaço de trabalho, se você não atribuir o contribuidor de Dados de Blob de Armazenamento à identidade gerenciada, o Proprietário da conta do Data Lake Storage Gen2 atribuirá manualmente essa função à identidade. As etapas a seguir ajudam você a realizar a atribuição manual.

Etapa 1: Navegue até a conta do Data Lake Storage Gen2

No portal do Azure, abra a conta de armazenamento Data Lake Storage Gen2 e selecione Contêineres na navegação à esquerda. Você só precisa atribuir a função de Colaborador de Dados de Blob de Armazenamento no nível do contêiner ou do sistema de arquivos.

Captura de tela do portal do Azure, da Visão geral da conta do Data Lake Storage Gen2.

Etapa 2: Selecione o contêiner

A identidade gerenciada deve ter acesso aos dados do contêiner (sistema de arquivos) fornecido quando o espaço de trabalho foi criado. Você pode encontrar esse contêiner ou sistema de arquivos no portal do Azure. Abra o espaço de trabalho Azure Synapse no portal do Azure e selecione a guia Visão geral na navegação à esquerda.

Captura de ecrã do portal do Azure a mostrar o nome do ficheiro do Data Lake Storage Gen2 'contosocontainer'.

Selecione esse mesmo contêiner ou sistema de arquivos para conceder a função de Colaborador de Dados de Blob de Armazenamento à identidade gerenciada.

Captura de tela que mostra o contêiner ou sistema de arquivos que você deve selecionar.

Etapa 3: Abra o controle de acesso e adicione a atribuição de função

  1. Selecione Controle de acesso (IAM) no menu de recursos.

  2. Selecione Adicionar>atribuição de função para abrir a página Adicionar atribuição de função.

  3. Atribua a seguinte função. Para obter os passos detalhados, veja o artigo Atribuir funções do Azure com o portal do Azure.

    Definição Value
    Role Contribuidor de Dados de Blobs de Armazenamento
    Atribuir acesso a IDENTIDADE GERENCIADA
    Membros Nome da identidade gerenciada

    Nota

    O nome da identidade gerenciada também é o nome do espaço de trabalho.

    Captura de ecrã da página adicionar atribuição de funções no portal do Azure.

  4. Selecione Salvar para adicionar a atribuição de função.

Etapa 4: Verificar se a função de Colaborador de Dados de Blob de Armazenamento está atribuída à identidade gerenciada

Selecione Controle de acesso (IAM) e, em seguida, selecione Atribuições de função.

Captura de ecrã do botão Atribuições de Função no portal do Azure, utilizado para verificar a atribuição de funções.

Você verá sua identidade gerenciada listada na seção Colaborador de Dados de Blob de Armazenamento com a função de Colaborador de Dados de Blob de Armazenamento atribuída a ela.

Captura de tela do portal do Azure, mostrando a seleção de contêiner de conta do Data Lake Storage Gen2.

Alternativa à função de Colaborador de Dados de Blob de Armazenamento

Em vez de conceder a si mesmo uma função de Colaborador de Dados de Blob de Armazenamento , você também pode conceder permissões mais granulares em um subconjunto de arquivos.

Todos os usuários que precisam acessar alguns dados neste contêiner também devem ter permissão EXECUTE em todas as pastas pai até a raiz (o contêiner).

Para saber mais, consulte Usar o Gerenciador de Armazenamento do Azure para gerenciar ACLs no Armazenamento do Azure Data Lake.

Nota

A permissão de execução no nível do contêiner deve ser definida no Data Lake Storage Gen2. As permissões na pasta podem ser definidas no Azure Synapse.

Se você quiser consultar data2.csv neste exemplo, as seguintes permissões são necessárias:

  • Executar permissão no contêiner
  • Executar permissão na pasta1
  • permissão de Ler sobre data2.csv

Diagrama que mostra a estrutura de permissão no data lake.

  1. Entre no Azure Synapse com um usuário administrador que tenha permissões totais nos dados que você deseja acessar.

  2. No painel de dados, clique com o botão direito do mouse no arquivo e selecione Gerenciar acesso.

    Captura de tela que mostra a opção gerenciar acesso.

  3. Selecione pelo menos a permissão de leitura . Insira o UPN ou o ID do objeto do usuário, por exemplo, user@contoso.com. Selecione Adicionar.

  4. Conceda permissão de leitura para este usuário.

    Captura de tela que mostra a concessão de permissões de leitura.

Nota

Para usuários convidados, essa etapa precisa ser feita diretamente com o Azure Data Lake porque não pode ser feita diretamente por meio do Azure Synapse.