Configurar manualmente uma conexão de serviço de identidade de carga de trabalho do Azure Resource Manager

Serviços Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022

Quando você soluciona problemas de uma conexão de serviço de identidade de carga de trabalho do Azure Resource Manager, pode ser preciso configurar manualmente a conexão em vez de usar a ferramenta automatizada que está disponível no Azure DevOps.

Antes de iniciar uma configuração manual, experimente a abordagem automatizada.

Para autenticação, você pode usar uma identidade gerenciada ou um registro de aplicativo. A opção de identidade gerenciada é útil se você não tiver permissões para criar entidades de serviço ou se estiver usando um locatário do Microsoft Entra diferente daquele do seu usuário do Azure DevOps.

Descontinuação do emissor do Azure DevOps

As conexões de serviço de federação de identidade de carga de trabalho que usam o emissor do Azure DevOps (https://vstoken.dev.azure.com) estão obsoletas e serão desativadas em 1º de julho de 2027. As novas conexões de serviço de federação de identidade de carga de trabalho usam o emissor Microsoft Entra (https://login.microsoftonline.com/) por padrão. Se a sua conexão de serviço existente estiver sinalizada como obsoleta, converta-a para o emissor Microsoft Entra antes da data de desativação.

Essa descontinuação se aplica apenas a conexões de serviço elegíveis na nuvem pública do Azure que usam aplicativos Microsoft Entra de locatário único ou identidades gerenciadas. As conexões de serviço destinadas a nuvens não públicas e as conexões de serviço que usam aplicativos multilocatário não estão no escopo desta descontinuação. O Azure DevOps marca as conexões de serviço afetadas na lista de conexões de serviço e na interface de configuração. Se você tiver uma conexão de serviço existente que use o emissor Azure DevOps, converta a conexão existente em vez de criar uma conexão de substituição. Consulte Converter conexões de serviço para obter mais detalhes.

Permissões necessárias

Para configurar ou converter uma conexão de serviço de identidade de carga de trabalho, talvez seja necessário ter permissões em Azure DevOps e Azure ou Microsoft Entra.

Area Permissão necessária
Azure DevOps Permissão de administrador de conexão de serviço ou administrador de ponto de extremidade na conexão de serviço.
Identidade gerenciada atribuída pelo usuário Permissão para atualizar a identidade gerenciada e adicionar credenciais federadas. A função mínima pode ser Colaborador de Credencial Federada de Identidade Gerenciada, Colaborador de Identidade Gerenciada ou outra função que permite a criação de credenciais federadas.
Registro do aplicativo Acesso de proprietário ao registro de aplicativo ou a outra função do Microsoft Entra que permita gerenciar credenciais federadas.
Recurso do Azure de destino Permissão para atribuir a identidade à função exigida, como Colaborador, na assinatura, no grupo de recursos ou no recurso.

As permissões do Azure DevOps e as permissões do Azure são distintas. Um usuário pode ser capaz de editar uma conexão de serviço em Azure DevOps mas ainda precisa de ajuda de um administrador Azure ou proprietário de identidade para adicionar a credencial federada em Azure ou Microsoft Entra.

Visão geral do processo de instalação

O diagrama a seguir ilustra as etapas de alto nível para configurar uma conexão de serviço de identidade de carga de trabalho:

Diagrama exibindo os dois caminhos opcionais ao configurar a identidade da carga de trabalho.

Converter conexões de serviço existentes

Se uma conexão de serviço existente usa o emissor obsoleto do Azure DevOps, converta-a para usar o emissor do Microsoft Entra.

Usar a conversão automática quando disponível

  1. Em Azure DevOps, abra o seu projeto e vá para Configurações do projeto>Pipelines>Conexões de serviço.

  2. Selecione a conexão de serviço sinalizada como preterida na lista ou na interface do usuário de configuração.

  3. Selecione Atualizar para atualizar a conexão de serviço.

  4. Deixe Azure DevOps tentar a conversão.

Se a conversão for bem-sucedida, a conexão de serviço usará o emissor Microsoft Entra e nenhuma configuração manual adicional será necessária. Consulte Converter conexões de serviço para ver as etapas detalhadas de conversão.

Usar a conversão manual quando a conversão automática não for concluída

Se Azure DevOps não puder atualizar a identidade automaticamente, ela mostrará os valores de credencial federados que você precisa adicionar em Azure ou Microsoft Entra. Use os valores mostrados em Azure DevOps para criar a credencial federada na identidade associada à conexão de serviço.

Você precisa dos seguintes valores de Azure DevOps:

  • Emissor
  • Identificador de Assunto

Depois de adicionar a credencial federada em Azure ou Microsoft Entra, retorne à conexão de serviço em Azure DevOps e conclua a instalação. Para obter etapas detalhadas de conversão, consulte Converter conexões de serviço.

Limitations

A experiência de substituição do emissor Azure DevOps não se aplica a todos os cenários de identidade de carga de trabalho.

  • As conexões de serviço voltadas para nuvens não públicas estão fora do escopo desta descontinuação.
  • As conexões de serviço que usam aplicativos multilocatários não estão no escopo desta descontinuação.

Definir uma conexão de serviço de identidade de carga de trabalho

Para configurar manualmente a autenticação de identidade gerenciada para seus Azure Pipelines, siga estas etapas para criar uma identidade gerenciada no portal do Azure, estabelecer uma conexão de serviço no Azure DevOps, adicionar credenciais federadas e conceder as permissões necessárias. Siga estas etapas nesta ordem:

  1. Crie a identidade gerenciada no portal do Azure.
  2. Crie a conexão de serviço no Azure DevOps e salve como rascunho.
  3. Adicione uma credencial federada à sua identidade gerenciada no portal do Azure.
  4. Conceda permissões a uma identidade gerenciada no portal do Azure.
  5. Salve sua conexão de serviço no Azure DevOps.

Você também pode usar a API REST para esse processo.

Pré-requisitos para autenticação de identidade gerenciada

Crie uma identidade gerenciada no portal do Azure.

  1. Entre no portal do Azure.

  2. Na caixa de busca, insira Identidades gerenciadas.

  3. Selecione Criar.

  4. No painel Criar identidade gerenciada atribuída pelo usuário, insira ou selecione valores para os seguintes itens:

    • Assinatura:: selecione a assinatura onde criar a identidade gerenciada atribuída pelo usuário.
    • Grupo de recursos: selecione um grupo de recursos para criar a identidade gerenciada atribuída pelo usuário ou clique em Criar para criar um grupo de recursos.
    • Região: selecione uma região para implantar a identidade gerenciada atribuída pelo usuário (por exemplo: Leste dos EUA).
    • Nome: insira o nome da identidade gerenciada atribuída pelo usuário (por exemplo: UADEVOPS).
  5. Selecione Revisar + criar para criar uma nova identidade gerenciada. Quando a implantação for concluída, selecione Ir para o recurso.

  6. Copie os valores Assinatura, ID da Assinatura, e ID do cliente para sua identidade gerenciada para usar posteriormente.

  7. Em sua identidade gerenciada no portal do Azure, acesse Configurações>Propriedades.

  8. Copie o valor da ID do locatário para usar posteriormente.

Crie uma conexão de serviço para autenticação de identidade gerenciada no Azure DevOps

  1. No Azure DevOps, abra seu projeto e acesse >Pipelines>Conexões de serviço.

  2. Selecione Nova conexão de serviço.

  3. Selecione Azure Resource Manager.

  4. Selecione o tipo de identidade Registro de aplicativo ou identidade gerenciada (manual) e, em seguida, selecione a credencial de federação de identidade de carga de trabalho.

    Captura de tela que mostra a seleção da conexão do serviço de identidade de workload para a identidade gerenciada.

  5. Na Etapa 1: Noções básicas:

    Etapa 1: Noções básicas, insira ou selecione os seguintes parâmetros:

    Parâmetro Descrição
    Nome da conexão de serviço Obrigatória. Use este valor no identificador de assunto da sua credencial federada.
    Description Optional. A descrição da conexão de serviço.
    Ambiente Obrigatória. Escolha um ambiente de nuvem para se conectar. Se você selecionar Azure Stack, insira a URL do ambiente, que é algo como https://management.local.azurestack.external.
    ID do Diretório (locatário) Obrigatória. Insira a ID do locatário da sua identidade gerenciada.
  6. Selecione Avançar.

  7. Na Etapa 2: detalhes de registro do aplicativo:

    Etapa 2: Detalhes do registro do aplicativo, insira ou selecione os seguintes parâmetros:

    Parâmetro Descrição
    Emissor Obrigatória. O DevOps cria automaticamente a URL do emissor.
    Identificador de Assunto Obrigatória. O DevOps cria automaticamente o identificador de entidade.
    1. Selecione o Nível de escopo. Selecione Assinatura, Grupo de Gerenciamento ou Espaço de Trabalho de Machine Learning. Grupos de gerenciamento são contêineres que ajudarão você a gerenciar o acesso, a política e a conformidade entre várias assinaturas. O workspace do Machine Learning é um local para criar artefatos de Machine Learning.

      • Para o escopo da Assinatura, insira os seguintes parâmetros:

        Parâmetro Descrição
        ID da assinatura Obrigatória. Insira a ID da assinatura do Azure.
        Nome da assinatura Obrigatória. Insira o nome da assinatura do Azure.
      • Para o escopo do Grupo de Gerenciamento, insira os seguintes parâmetros:

        Parâmetro Descrição
        ID do Grupo de Gerenciamento Obrigatória. Insira a ID do grupo de gerenciamento do Azure.
        Nome do Grupo de Gerenciamento Obrigatória. Insira o nome do grupo de gerenciamento do Azure.
      • Para o escopo do Workspace do Machine Learning, insira os seguintes parâmetros:

        Parâmetro Descrição
        ID da assinatura Obrigatória. Insira a ID da assinatura do Azure.
        Nome da assinatura Obrigatória. Insira o nome da assinatura do Azure.
        Grupo de Recursos Obrigatória. Selecione o grupo de recursos que contém o espaço de trabalho.
        Nome do Workspace do ML Obrigatória. Insira o nome do workspace existente do Azure Machine Learning.
        Localização do Workspace do ML Obrigatória. Insira a localização do workspace existente do Azure Machine Learning.
    2. Na seção Autenticação , para ID do Aplicativo (cliente), insira a ID do cliente para sua identidade gerenciada.

    3. Na seção Segurança , se você selecionar Conceder permissão de acesso a todos os pipelines, todos os pipelines poderão usar essa conexão. Não use essa opção. Em vez disso, autorize cada pipeline individualmente a usar a conexão de serviço.

  8. No Azure DevOps, copie os valores gerados para Emissor e Identificador de Assunto.

  9. Selecione Manter como rascunho para salvar um rascunho da credencial. Você não pode concluir a instalação até que sua identidade gerenciada tenha uma credencial federada no portal do Azure.

Adicione uma credencial federada no portal do Azure

  1. Em uma nova janela do navegador, em sua identidade gerenciada no portal do Azure, acesse Configurações>Credenciais federadas.

  2. Selecione Adicionar Credenciais.

  3. Selecione o cenário Outro emissor.

  4. Cole os valores para Issuer e Identificador de Assunto que você copiou do seu projeto Azure DevOps nas suas credenciais federadas no portal do Azure. Para Tipo, selecione Identificador de assunto explícito.

    Comparação de captura de tela de credenciais federadas no Azure DevOps e no portal do Azure.

  5. Insira o Nome da sua credencial federada.

  6. Selecione Adicionar.

Conceda permissões a uma identidade gerenciada no portal do Azure

  1. No portal do Azure, acesse o recurso do Azure para o qual você deseja conceder permissões (por exemplo, um grupo de recursos).

  2. Selecione IAM (Controle de acesso) .

    Captura de tela que mostra a seleção de Controle de acesso no menu de recursos.

  3. Selecione Adicionar atribuição de função. Atribua a função requerida à sua identidade gerenciada (exemplo, Colaborador).

  4. Selecione Examinar e atribuir.

Salve sua conexão de serviço do Azure DevOps

  1. No Azure DevOps, volte ao rascunho da sua conexão de serviço.

  2. Selecione Concluir configuração.

  3. Selecione Verificar e salvar. Quando essa etapa for concluída com êxito, sua identidade gerenciada estará totalmente configurada.