Partilhar via


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

Ao solucionar problemas de uma conexão de serviço de identidade de carga de trabalho do Azure Resource Manager, talvez seja necessário configurar manualmente a conexão em vez de usar a ferramenta automatizada disponível no Azure DevOps.

Recomendamos que experimente a abordagem automatizada antes de iniciar uma configuração manual.

Há duas opções para autenticação: usar uma identidade gerenciada ou usar uma entidade de serviço. A vantagem da opção de identidade gerenciada é que você pode usá-la se não tiver permissões para criar entidades de serviço ou se estiver usando um locatário do Microsoft Entra diferente do usuário do Azure DevOps.

Definir uma conexão de serviço de identidade de carga de trabalho para usar a autenticação de identidade gerenciada

Talvez seja necessário criar manualmente uma identidade gerenciada que use credenciais federadas e, em seguida, conceder as permissões necessárias. Você também pode usar a API REST para esse processo.

Criar uma identidade gerenciada

  1. Inicie sessão no portal do Azure.

  2. Na caixa de pesquisa, introduza Identidades Geridas.

  3. Selecione Criar.

  4. No painel Criar Identidade Gerenciada Atribuída ao Usuário, insira ou selecione valores para os seguintes itens:

    • Assinatura: selecione a assinatura na qual 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 selecione Criar novo para criar um novo 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. Copie os valores de ID de Assinatura e ID de Cliente para sua identidade gerenciada para usar mais tarde.

  6. Vá para Propriedades de configurações>.

  7. Copie o valor Tenant Id para usar mais tarde.

  8. Vá para Configurações>Credenciais federadas.

  9. Selecione Adicionar credenciais.

  10. Selecione o cenário Outro emissor .

  11. Insira valores para o identificador Emissor e Assunto. Você substituirá esses valores mais tarde quando criar uma conexão de serviço.

    Campo Descrição
    Emissor Introduzir https://vstoken.dev.azure.com/<unique-identifier>. O unique-identifier é o GUID da sua organização do Azure DevOps.
    Identificador do assunto Especifique sc://<Azure DevOps organization>/<project name>/<service connection name>. A conexão de serviço não precisa ser já criada.
  12. Selecione Guardar.

  13. Mantenha esta janela aberta. Mais tarde no processo, você retorna à janela e atualiza suas credenciais federadas de registro de aplicativo.

Conceder permissões à identidade gerenciada

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

  2. Selecione Controlo de acesso (IAM) .

    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 necessária à sua identidade gerenciada (por exemplo, Colaborador).

  4. Selecione Rever e atribuir.

Criar uma conexão de serviço para autenticação de identidade gerenciada

  1. No Azure DevOps, abra seu projeto e vá para >conexões do Serviço de Pipelines.>

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

  3. Selecione Azure Resource Manager e, em seguida, selecione Next.

  4. Selecione Federação de identidade de carga de trabalho (manual) e, em seguida, selecione Avançar.

    Captura de tela que mostra a seleção da conexão do serviço Identidade da Carga de Trabalho.

  5. Em Nome da conexão de serviço, insira o valor que você usou para Identificador de assunto quando criou suas credenciais federadas.

  6. Para ID da Subscrição e Nome da Subscrição, introduza os valores para a subscrição na sua conta do portal do Azure.

    Captura de ecrã que mostra credenciais de subscrição federada.

  7. Na seção de autenticação:

    1. Em Service Principal Id, insira o valor de Client Id da sua identidade gerenciada.

    2. Em ID do Locatário, insira o valor de ID do Locatário da sua identidade gerenciada.

      Captura de tela que mostra os valores de identidade gerenciada do portal do Azure.

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

    Captura de tela que mostra as credenciais de DevOps para autenticação federada.

  9. No portal do Azure, retorne às credenciais federadas de registro do aplicativo.

  10. Cole os valores para o identificador de Emissor e Assunto que você copiou do seu projeto de DevOps do Azure em suas credenciais federadas no portal do Azure.

    Captura de tela que mostra uma comparação de credenciais federadas no Azure DevOps e no portal do Azure.

  11. No portal do Azure, selecione Atualizar para salvar as credenciais atualizadas.

  12. No Azure DevOps, selecione Verificar e salvar.

Definir uma conexão de serviço de identidade de carga de trabalho para usar a autenticação da entidade de serviço

Talvez seja necessário criar manualmente uma entidade de serviço que tenha credenciais federadas e, em seguida, conceder as permissões necessárias. Você também pode usar a API REST para esse processo.

Criar um registro de aplicativo e credenciais federadas

  1. No portal do Azure, vá para registros de aplicativos.

  2. Selecione Novo registo.

    Captura de ecrã que mostra um novo registo de aplicação.

  3. Em Nome, insira um nome para o registro do aplicativo e selecione Quem pode usar este aplicativo ou acessar esta API.

  4. Copie os valores para ID do aplicativo (cliente) e ID do diretório (locatário) do registro do aplicativo para usar mais tarde.

    Captura de ecrã que mostra o ID do cliente de registo da aplicação e o ID do inquilino.

  5. Vá para Gerenciar>certificados & segredos.

  6. Selecione Credenciais federadas.

    Captura de tela que mostra a guia credenciais federadas.

  7. Selecione Adicionar credenciais.

  8. Selecione o cenário Outro emissor .

    Captura de tela que mostra a seleção de um cenário de credenciais federadas.

  9. Insira valores para o identificador Emissor e Assunto. Você substituirá esses valores mais tarde quando criar uma conexão de serviço.

    Campo Descrição
    Emissor Introduzir https://vstoken.dev.azure.com/<unique-identifier>. O unique-identifier é o GUID da sua organização do Azure DevOps.
    Identificador do assunto Especifique sc://<Azure DevOps organization>/<project name>/<service connection name>. Sua conexão de serviço não precisa já ter sido criada.
  10. Selecione Guardar.

  11. Mantenha esta janela aberta. Mais tarde no processo, você retorna à janela e atualiza suas credenciais federadas de registro de aplicativo.

Conceder permissões ao registo da aplicação

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

  2. Selecione Controlo de acesso (IAM) .

    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 necessária ao registro do aplicativo (por exemplo, Colaborador).

  4. Selecione Rever e atribuir.

Criar uma conexão de serviço para autenticação da entidade de serviço

  1. No Azure DevOps, abra seu projeto e vá para >conexões do Serviço de Pipelines.>

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

  3. Selecione Azure Resource Manager e, em seguida, selecione Next.

  4. Selecione Federação de identidade de carga de trabalho (manual) e, em seguida, selecione Avançar.

    Captura de tela que mostra a seleção da conexão do serviço de identidade da carga de trabalho.

  5. Em Nome da conexão de serviço, insira o valor do identificador de assunto de suas credenciais federadas.

  6. Para ID da Subscrição e Nome da Subscrição, introduza os valores para a subscrição na sua conta do portal do Azure.

    Captura de ecrã que mostra credenciais de subscrição federada.

  7. Na seção de autenticação:

    1. Em Service Principal Id, insira o valor de Application (client) ID do seu registro de aplicativo.

    2. Para ID do Locatário (ID), insira o valor de ID do diretório (locatário) do registro do aplicativo.

  8. Copie os valores gerados para o identificador Emissor e Assunto.

    Captura de tela que mostra as credenciais de DevOps para autenticação federada.

  9. No portal do Azure, retorne às credenciais federadas de registro do aplicativo.

  10. Cole os valores para o identificador de Emissor e Assunto que você copiou do seu projeto de DevOps do Azure em suas credenciais federadas no portal do Azure.

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

  11. No portal do Azure, selecione Atualizar para salvar as credenciais atualizadas.

  12. No Azure DevOps, selecione Verificar e salvar.