Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Serviços de DevOps do Azure | Azure DevOps Server | Azure DevOps Server 2022
Este artigo descreve os métodos de autenticação para a integração do Azure DevOps e ajuda-o a escolher a melhor opção para o seu cenário. Abordagens modernas de autenticação, como o Microsoft Entra ID, fornecem segurança aprimorada e a melhor abordagem para novos aplicativos.
Importante
Recomendamos a autenticação do Microsoft Entra ID para novos aplicativos que se integram aos Serviços de DevOps do Azure. Use tokens de acesso pessoal com moderação e use-os somente quando o Microsoft Entra ID não estiver disponível.
O OAuth 2.0 e a autenticação do Microsoft Entra ID estão disponíveis apenas para os Serviços de DevOps do Azure, não para o Servidor de DevOps do Azure.
Para cenários locais, utilize as bibliotecas de cliente .NET, a autenticação do Windows ou os tokens de acesso pessoal.
Métodos de autenticação por cenário
Escolha o método de autenticação apropriado com base no tipo de aplicativo e nos requisitos.
| Tipo de aplicação | Descrição | Exemplo | Método recomendado | Exemplos de código |
|---|---|---|---|---|
| Aplicações Web/ambiente de trabalho | Aplicativos interativos usando estruturas atuais | Aplicativo React, aplicativo de área de trabalho .NET | Microsoft Entra OAuth com a Biblioteca de Autenticação da Microsoft (MSAL) | Aplicativo de console cliente gerenciado |
| Aplicativos de serviço/em segundo plano | Aplicativos em execução sem interação do usuário | Azure Functions, serviços em segundo plano | Entidades de serviço e identidades gerenciadas | Principais de serviço |
| Aplicativos cliente herdados | Aplicativos existentes usando bibliotecas de cliente | Aplicativos de console com bibliotecas .NET do Azure DevOps | Bibliotecas de cliente .NET com OAuth | Aplicativo de console da biblioteca cliente |
| Aplicativos sem cabeça/CLI | Ferramentas de linha de comando não interativas | Crie scripts e ferramentas de automação | Fluxo de concessão de autorização de dispositivo | Perfil do dispositivo |
| Extensões do Azure DevOps | Extensões em execução no Azure DevOps | Widgets de painel personalizados e formulários de item de trabalho | SDK da extensão Web do Azure DevOps | Adicionar um widget de painel |
| Aplicativos do Azure DevOps Server | Integrações locais do Azure DevOps Server | Extensões de servidor personalizadas | Bibliotecas de cliente .NET ou Windows Auth | Aplicativo de console da biblioteca cliente |
| Scripts pessoais/ad hoc | Scripts rápidos para uso pessoal | Scripts do PowerShell, comandos curl | Tokens de acesso pessoal | Introdução às APIs REST |
Sugestões para começar
As seções a seguir fornecem recomendações para começar em diferentes cenários.
Novas aplicações
- Crie integrações do Azure DevOps com aplicativos Microsoft Entra OAuth para obter a melhor segurança e compatibilidade futura.
- Use princípios de serviço ou identidades geridas para cenários de serviço a serviço.
- Evite tokens de acesso pessoal em aplicativos de produção.
Aplicações existentes
- Planeje a migração de tokens de acesso pessoal para a autenticação do Microsoft Entra ID.
- Considere o cronograma de migração de autenticação para melhorias no Azure DevOps e redução do uso de tokens de acesso pessoal.
- Analise sua abordagem de autenticação atual em relação às práticas recomendadas de segurança.
Azure DevOps Server
- Use bibliotecas de cliente .NET com Autenticação do Windows quando possível.
- Use tokens de acesso pessoal para cenários do Azure DevOps Server quando eles forem aceitáveis.
- Planeje a migração futura dos Serviços de DevOps do Azure para aproveitar a autenticação moderna.
Respostas a perguntas comuns
As secções seguintes fornecem respostas a perguntas frequentes.
Devo usar o Microsoft Entra ID OAuth ou tokens de acesso pessoal?
Use o Microsoft Entra ID OAuth nos seguintes cenários:
- Novas aplicações e integrações
- Cargas de trabalho de produção que exigem segurança robusta
- Aplicativos que precisam de integração de identidade corporativa
- Projetos de longo prazo com requisitos de conformidade
Use tokens de acesso pessoal apenas nos seguintes cenários:
- Scripts pessoais e tarefas ad hoc
- Aplicativos herdados durante o planejamento da migração
- Cenários do Azure DevOps Server em que a autenticação moderna não está disponível
Devo usar entidades de serviço ou delegação de usuário para autenticação?
Use entidades de serviço ou identidades gerenciadas nos seguintes cenários:
- Crie aplicativos que operam de forma independente (serviços em segundo plano, automação).
- Crie aplicativos que não exigem interação do usuário.
- Implementar comunicação serviço-a-serviço.
- Crie pipelines de integração contínua e entrega contínua (CI/CD) ou fluxos de trabalho automatizados.
Use a delegação de usuário (OAuth com consentimento do usuário) nos seguintes cenários:
- Crie aplicativos que atuam para usuários humanos.
- Crie aplicativos interativos onde os usuários entram com suas próprias credenciais.
- Implemente recursos que exijam permissões específicas do usuário.
- Crie aplicações que respeitem os direitos de acesso individuais dos utilizadores.
Como faço para me autenticar com os Serviços de DevOps do Azure e o Servidor de DevOps do Azure?
A prática recomendada é criar caminhos de autenticação separados:
- Serviços de DevOps do Azure: use o Microsoft Entra ID OAuth.
- Azure DevOps Server: Use bibliotecas de cliente .NET com Autenticação do Windows ou tokens de acesso pessoal.
Use o requestContext método para detetar o tipo de serviço e aplique o método de autenticação apropriado.
Por que minha conta de serviço não pode acessar as APIs do Azure DevOps?
Aqui estão alguns problemas comuns que podem afetar o acesso à conta de serviço:
- Conta de serviço não "materializada": use o método de entrada correto. As contas de serviço precisam de permissões de entrada interativas ou de registro adequado do Microsoft Entra ID.
- Permissões insuficientes: verifique se a conta de serviço tem as permissões apropriadas do Azure DevOps.
- Método de autenticação: Use entidades de serviço ou identidades geridas em vez de tentar autenticar-se como uma conta de serviço.
Como faço para migrar de tokens de acesso pessoal para autenticação moderna?
Siga estes passos:
Identifique o uso atual do token de acesso pessoal em seus aplicativos.
Escolha um método de autenticação alternativo:
- Microsoft Entra ID OAuth para cenários delegados pelo utilizador
- Principais entidades de serviço para cenários entre serviços
Atualize o código de autenticação usando os exemplos de autenticação de migração do Azure DevOps.
Teste as alterações exaustivamente antes de remover quaisquer dependências de token de acesso pessoal.
Monitore e valide o novo método de autenticação.
Procedimentos de execução
Depois de escolher o método de autenticação para o seu cenário, conclua a implementação:
- Novos aplicativos: crie integrações do Azure DevOps com aplicativos Microsoft Entra OAuth
- Aplicativos de serviço: usar entidades de serviço e identidades gerenciadas no Azure DevOps
- Scripts pessoais: use tokens de acesso pessoais