Conceder permissões para a identidade gerenciada do espaço de trabalho

Este artigo ensina como conceder permissões à identidade gerenciada no workspace do Azure Synapse. As permissões, por sua vez, permitem o acesso a pools de SQL dedicados no workspace e à conta de armazenamento ADLS Gen2 por meio do portal do Azure.

Observação

Essa identidade gerenciada do workspace será referida como identidade gerenciada no restante deste documento.

Conceder as permissões de identidade gerenciada à conta de armazenamento ADLS Gen2

Uma conta de armazenamento ADLS Gen2 é necessária para criar um workspace do Azure Synapse. Para iniciar com êxito os Pools do Spark no workspace do Azure Synapse, a identidade gerenciada do Azure Synapse precisa da função Colaborador de Dados do Blob de Armazenamento na 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 workspace

O Azure Synapse tentará conceder a função de Colaborador de Dados do Blob de Armazenamento para a identidade gerenciada depois de criar o workspace do Azure Synapse usando o portal do Azure. Você fornece os detalhes da conta de armazenamento ADLS Gen2 na guia Noções Básicas.

Captura de tela da guia Básico no fluxo de criação do workspace.

Escolha a conta de armazenamento ADLS Gen2 e o sistema de arquivos em Nome da conta e Nome do sistema de arquivos.

Captura de tela do fornecimento dos detalhes da conta de armazenamento do ADLS Gen2.

Se o criador do workspace também for Proprietário da conta de armazenamento ADLS Gen2, o Azure Synapse atribuirá a função de Colaborador de Dados do Blob de Armazenamento à identidade gerenciada. Você verá a mensagem a seguir abaixo dos detalhes da conta de armazenamento que você inseriu.

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

Se o criador do workspace não for o proprietário da conta de armazenamento ADLS Gen2, o Azure Synapse não atribuirá a função de Colaborador de Dados do Blob de Armazenamento à identidade gerenciada. A mensagem exibida abaixo dos detalhes da conta de armazenamento notifica o criador do workspace de que ele não tem permissões suficientes para conceder a função de Colaborador de Dados do Blob de Armazenamento à identidade gerenciada.

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

Como afirma a mensagem, você não pode criar Pools do Spark, a menos que o Colaborador de Dados do Blob de Armazenamento seja atribuído à identidade gerenciada.

Conceder permissões para identidade gerenciada após a criação do workspace

Durante a criação do workspace, se você não atribuir o Colaborador de Dados do Blob de Armazenamento à identidade gerenciada, o Proprietário da conta de armazenamento ADLS Gen2 atribuirá manualmente essa função à identidade. As etapas a seguir ajudarão você a realizar a atribuição manual.

Etapa 1: navegar até a conta de armazenamento ADLS Gen2 no portal do Azure

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

Captura de tela do portal do Azure com a visão geral da conta de armazenamento do ADLS Gen2.

Etapa 2: selecionar o contêiner

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

Captura de tela do portal do Azure mostrando o nome do arquivo de armazenamento 'contosocontainer' do ADLS Gen2.

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

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

Etapa 3: abrir o controle de acesso e adicionar atribuição de função

  1. Selecione IAM (Controle de acesso) .

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

  3. Atribua a função a seguir. Para ver as etapas detalhadas, confira Atribuir funções do Azure usando o portal do Azure.

    Configuração Valor
    Função Colaborador de dados de blob de armazenamento
    Atribuir acesso a MANAGEDIDENTITY
    Membros nome da identidade gerenciada

    Observação

    O nome da identidade gerenciada também é o nome do workspace.

    Captura de tela da página “Adicionar atribuição de função” no portal do Azure.

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

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

Selecione Controle de Acesso (IAM) e selecione Atribuições de função.

Captura de tela do botão “Atribuições de função” no portal do Azure, usado para verificar a atribuição de função.

Você deve ver sua identidade gerenciada listada na seção Colaborador de Dados do Blob de Armazenamento com a função Contribuidor de Dados de Blob de Armazenamento atribuída a ela.
Captura de tela do portal do Azure, mostrando a seleção do contêiner da conta de armazenamento do ADLS Gen2.

Alternativa para a função de Colaborador de dados de blob de armazenamento

Em vez de conceder a si mesmo a 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 precisem acessar alguns dados nesse contêiner também devem ter a permissão EXECUTAR em todas as pastas pai até a raiz (o contêiner).

Saiba mais sobre como definir ACLs no Azure Data Lake Storage Gen2.

Observação

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

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

  • Permissão Executar no contêiner
  • Permissão Executar na pasta1
  • Permissão Ler em 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 completas para os dados que você deseja acessar.

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

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

  3. Selecione pelo menos a permissão Ler. Insira o UPN do usuário ou a ID do objeto, 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ão de leitura.

Observação

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

Próximas etapas

Saiba mais sobre a Identidade gerenciada do workspace