Escolher o mecanismo de autenticação certo
Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019
Para aplicativos que fazem interface com os Serviços de DevOps do Azure, você deve autenticar para obter acesso a recursos como APIs REST. Este artigo fornece orientação para ajudá-lo a escolher o mecanismo de autenticação certo para seu aplicativo.
A tabela a seguir descreve o mecanismo de autenticação recomendado para vários tipos de aplicativos. Consulte as seguintes descrições básicas, exemplos e exemplos de código para começar.
Tipo de aplicação | Description | Exemplo | Mecanismo de autenticação | Amostras de código |
---|---|---|---|---|
Interativo do lado do cliente (REST) | Aplicativo cliente que permite a interação do usuário chamando APIs REST dos Serviços de DevOps do Azure | Aplicativo de console enumerando projetos em uma organização | Biblioteca de Autenticação da Microsoft (MSAL) | amostra |
Lado do cliente interativo (Biblioteca do cliente) | Aplicativo cliente que permite a interação do usuário chamando bibliotecas de cliente dos Serviços de DevOps do Azure | Aplicativo de console enumerando bugs atribuídos ao usuário atual | Bibliotecas de cliente | amostra |
JavaScript interativo | Aplicação JavaScript baseada em GUI | Aplicativo de página única AngularJS exibindo informações do projeto para um usuário | Biblioteca de Autenticação da Microsoft para JavaScript (MSAL JS) | amostra |
Token de acesso pessoal (PAT) | Token ao portador para aceder aos seus próprios recursos | Utilize o seu PAT em vez da sua palavra-passe. | PATs | |
Lado do cliente não interativo | Aplicação do lado do cliente apenas texto sem cabeça | Aplicativo de console exibindo todos os bugs atribuídos a um usuário | Perfil do dispositivo | amostra |
Aplicativo interativo do lado do cliente direcionado ao Azure DevOps | Aplicativo cliente que permite a interação do usuário autentica usuários do Azure DevOps | Aplicativo de console que permite que os usuários do Azure DevOps vejam bugs atribuídos | Biblioteca de cliente (autenticação interativa e do Windows) | amostra |
Web interativa | Aplicação Web baseada em GUI que requer o consentimento do utilizador | Painel da Web personalizado exibindo resumos de compilação | Azure DevOps OAuth | amostra |
Entidades de serviço ou identidades gerenciadas | Aplicativo com acesso aos recursos do Azure DevOps da organização | Função do Azure para criar itens de trabalho | Entidades de serviço e identidades gerenciadas | amostra |
Aplicativo Azure DevOps Server | Aplicativo Azure DevOps Server usando a biblioteca Client OM | Extensão do Azure DevOps Server exibindo painéis de bugs da equipe | Bibliotecas de clientes | amostra |
Extensão dos Serviços de DevOps do Azure | Extensão dos Serviços de DevOps do Azure | Cartões Ágeis | SDK de extensão da Web VSS | amostra |
Para obter uma cartilha sobre conceitos de segurança e identidade no Azure DevOps, consulte Sobre segurança e identidade. Para saber mais sobre como armazenamos suas credenciais, consulte Armazenamento de credenciais para o Azure DevOps.
Habilitar a Autenticação Básica do IIS invalida o uso de PATs para o Servidor de DevOps do Azure
Para obter mais informações, consulte Usando a autenticação básica do IIS com o Azure DevOps local.
Perguntas mais frequentes (FAQ)
P: Por que uma das minhas contas de serviço não pode acessar a API REST do Azure DevOps?
R: A sua conta de serviço pode não ter "materializado". Como não é possível entrar com uma conta de serviço que não tenha permissões de entrada interativas, confira esta solução alternativa.
P: Estou criando um aplicativo interativo do lado do cliente. Devo usar as Bibliotecas de Cliente dos Serviços de DevOps do Azure ou as APIs REST dos Serviços de DevOps do Azure?
R: Recomendamos usar as Bibliotecas de Cliente dos Serviços de DevOps do Azure em APIs REST ao acessar os recursos dos Serviços de DevOps do Azure. Eles são mais simples e mais facilmente mantidos quando ocorrem alterações de versão em nossos pontos de extremidade REST. Se a funcionalidade estiver faltando nas bibliotecas do cliente, o MSAL é o melhor mecanismo de autenticação para usar com nossas APIs REST.
P: Esta orientação é apenas para os Serviços de DevOps do Azure ou também é relevante para utilizadores do Azure DevOps Server no local?
R: Esta orientação destina-se principalmente a utilizadores dos Serviços de DevOps do Azure. As Bibliotecas de Cliente são uma série de pacotes criados especificamente para estender a funcionalidade do Servidor de DevOps do Azure. Para usuários locais, recomendamos o uso das Bibliotecas de Cliente, Autenticação do Windows ou Tokens de Acesso Pessoal (PATs) para autenticar um usuário.
P: E se eu quiser que meu aplicativo se autentique com o Servidor de DevOps do Azure e os Serviços de DevOps do Azure?
R: A prática recomendada é ter caminhos de autenticação diferentes para o Servidor de DevOps do Azure e os Serviços de DevOps do Azure. Você pode usar o requestContext para descobrir qual você está batendo e, em seguida, usar o melhor mecanismo para cada um. Em vez disso, se você quiser uma solução unificada, os PATs funcionam para ambos.
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários