Compartilhar via


Usar tokens de acesso pessoal

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Um PAT (token de acesso pessoal) serve como uma senha alternativa para autenticação em Azure DevOps. Os PATs identificam você e determinam sua acessibilidade e escopo de acesso. Trate PATs com o mesmo nível de cuidado que as senhas.

Cuidado

Evite usar PATs quando um método de autenticação mais seguro estiver disponível. Os PATs têm riscos inerentes à segurança porque são credenciais de longa duração que podem ser vazadas, roubadas ou mal utilizadas. Sempre que possível, use tokens Microsoft Entra, identidades gerenciadas ou principais de serviço.

Quando você usa as ferramentas da Microsoft, sua conta da Microsoft ou Microsoft Entra ID é reconhecida e tem suporte. Se você usar ferramentas que não dão suporte a contas Microsoft Entra ou se preferir não compartilhar suas credenciais primárias, considere usar PATs como um método de autenticação alternativo.

Importante

Considere usar os mais seguros tokens Microsoft Entra em relação aos tokens de acesso pessoal de maior risco. Para obter mais informações, consulte Reduzir o uso do PAT. Examine as diretrizes de autenticação para escolher o mecanismo de autenticação correto para suas necessidades.

Dica

Você pode usar a IA para ajudar nessa tarefa mais adiante neste artigo ou consulte Ativar a assistência de IA com o Azure DevOps Server MCP para começar.

Pré-requisitos

Categoria Requisitos
Permissões Permissão para acessar e modificar as configurações do usuário em que os PATs são gerenciados.
- Vá para o seu perfil e selecione Configurações de usuário>Tokens de acesso pessoal. Se você pode ver e gerenciar seus PATs aqui, então tem as permissões necessárias.
- Vá para seu projeto e selecione Configurações do projeto>Permissões. Localize sua conta de usuário na lista e verifique as permissões atribuídas a você. Procure permissões relacionadas ao gerenciamento de tokens ou configurações de usuário.
- Se sua organização tiver políticas em vigor, talvez um administrador precise conceder permissões específicas ou adicioná-lo a uma lista de permissões para criar e gerenciar PATs.
- Os PATs estão vinculados à conta de usuário que criou o token. Dependendo das tarefas executadas pelo PAT, você pode precisar de mais permissões por conta própria.
Níveis de acesso Pelo menos acesso básico.
Tarefas Utilize PATs somente quando necessário e sempre roteie-os regularmente. Consulte a seção Práticas recomendadas para usar PATs.

Criar um PAT

Observação

As etapas e capturas de tela a seguir refletem Azure DevOps Services. A experiência de Azure DevOps Server pode variar ligeiramente.

  1. Entre em sua organização (https://dev.azure.com/{Your_Organization}).
  1. Entre no portal da Web Azure DevOps Server (https://{server}/{collection} ou http://{server}:{port}/tfs/{collection}).
  1. Na sua página inicial, abra as configurações do usuário e selecione Tokens de acesso pessoal.

    A captura de tela mostra a opção de tokens de acesso pessoal em configurações do usuário.

  2. Selecione + New Token.

    A captura de tela mostra o botão Novo Token na página Tokens de acesso pessoal.

  3. Nomeie seu token, selecione a organização em que deseja usar o token e defina seu token para expirar automaticamente após um determinado número de dias.

    A captura de tela mostra a caixa de diálogo Criar um novo token de acesso pessoal com campos de nome, organização e expiração.

  4. Selecione os escopos para esse token, para autorizar as suas tarefas específicas.

    Por exemplo, para criar um token para um agente de build e release autenticar no Azure DevOps, defina o escopo do token como Pools de Agentes (Leitura e gerenciamento). Para ler eventos de logs de auditoria e gerenciar ou excluir fluxos, selecione Ler Log de Auditoria e, em seguida, selecione Criar.

    A captura de tela mostra as opções de seleção de escopo para um PAT.

    O administrador pode impedir que você crie PATs com escopo completo ou limite-o apenas a PATs de escopo de empacotamento. Entre em contato com o administrador para entrar na lista de permissões se precisar de acesso a mais escopos. Alguns escopos, por exemplo, vso.governance podem não estar disponíveis na interface do usuário (UI) se não forem para uso público generalizado.

  5. Quando terminar, copie o token e armazene-o em um local seguro. Para a sua segurança, ele não será exibido novamente.

    A captura de tela mostra o botão Copiar token para área de transferência com o valor de PAT gerado.

Você pode usar seu PAT em qualquer lugar em que suas credenciais de usuário sejam necessárias para autenticação no Azure DevOps. Lembre-se:

  • Trate um PAT com o mesmo cuidado que sua senha e mantenha-o confidencial. Não compartilhe PATs.
  • Para organizações apoiadas por Microsoft Entra ID, faça login com seu novo PAT dentro de 90 dias ou ele se tornará inativo. Para obter mais informações, consulte a frequência de entrada do usuário para acesso condicional.

Notificações

Durante o tempo de vida de um PAT, os usuários recebem duas notificações: uma quando o PAT é criado e outra antes de expirar.

Depois de criar um PAT, você poderá receber uma notificação semelhante ao exemplo a seguir. Essa notificação serve como confirmação de que seu PAT foi adicionado com êxito à sua organização.

A captura de tela mostra o email de notificação criado pelo PAT.

Um email de notificação de expiração é enviado antes que o token expire. Se o administrador removeu sua capacidade de criar PATs na organização, o email indica que não é mais possível regenerar PATs. Entre em contato com o administrador da coleção de projetos para ser incluído em uma lista de autorização para criação contínua de PAT nessa organização.

Para obter mais informações, consulte Configurar um servidor SMTP e personalizar email para alertas e solicitações de feedback.

Notificação inesperada

Se você receber uma notificação PAT inesperada, isso pode indicar que um administrador ou uma ferramenta criou um PAT para você. Estes são alguns exemplos:

  • Um token chamado git: https://dev.azure.com/{yourorganization} on YourMachine é criado quando você se conecta a um repositório git Azure DevOps por meio de git.exe.
  • Um token chamado Service Hooks: Azure App Service: Deploy web app é criado quando você ou um administrador configura uma implantação de aplicativo Web Azure App Service.
  • Um token chamado WebAppLoadTestCDIntToken é criado quando o teste de carga da web é configurado como parte de um pipeline por você ou um administrador.
  • Um token chamado Microsoft Teams Integration é criado quando uma Extensão de Mensagens de Integração Microsoft Teams é configurada.

Se você acha que a situação é séria:

Usar um PAT

Seu PAT serve como a sua identidade digital, parecido a uma senha. Você pode usar PATs como uma maneira rápida de fazer solicitações pontuais ou protótipo de um aplicativo localmente. Use um PAT em seu código para autenticar solicitações de API REST e automatizar fluxos de trabalho, incluindo o PAT no cabeçalho de autorização de sua solicitação.

Depois que o código do aplicativo estiver funcionando, alterne para Microsoft Entra OAuth para adquirir tokens para os usuários do aplicativo ou uma entidade de serviço ou identidade gerenciada para adquirir tokens como um aplicativo. Não continue executando aplicativos ou scripts com PATs a longo prazo. Você pode usar Microsoft Entra tokens em qualquer lugar em que um PAT seja usado.

Considere adquirir um token Microsoft Entra por meio do Azure CLI para solicitações não planejadas.

Para fornecer o PAT por meio de um cabeçalho HTTP, primeiro você deve convertê-lo em uma Base64 cadeia de caracteres. Em seguida, ele pode ser fornecido como um cabeçalho HTTP no seguinte formato:


Authorization: Basic BASE64_USERNAME_PAT_STRING

Modificar um PAT

Execute as etapas abaixo para:

  • Regenerar um PAT para criar um novo token, o que invalida o anterior.
  • Ampliar um PAT para aumentar seu período de validade.
  • Modificar o escopo de um PAT para alterar suas permissões.
  1. Na sua página inicial, abra as configurações do usuário e selecione Tokens de acesso pessoal.

  2. Selecione o token que você deseja modificar e selecione Editar.

    A captura de tela mostra o botão Editar realçado para uma entrada PAT.

  3. Edite o nome, a data de expiração ou o escopo de acesso associados ao token e selecione Salvar.

    A captura de tela mostra a caixa de diálogo Editar para um PAT com campos de nome, expiração e escopo.

Revogar um PAT

Você pode revogar um PAT a qualquer momento pelos motivos abaixo, e outros:

  • Violação de segurança: revogue um PAT imediatamente se você suspeitar que ele foi comprometido, vazado ou exposto em logs ou repositórios públicos.
  • Não é mais necessário: revogar um PAT quando o projeto, o serviço ou a integração para o qual ele foi criado for concluído.
  • Conformidade com política: revogar um PAT para impor políticas de segurança, requisitos de conformidade ou cronogramas de rotação de tokens organizacionais.
  • Alterações de usuário: revogar um PAT quando um membro da equipe sair da organização ou alterar as funções e não precisar mais de acesso.
  • Redução de escopo: revogar e recriar um PAT com permissões reduzidas quando precisar limitar seus recursos de acesso.
  • Manutenção regular: revogar um PAT como parte da higiene de segurança de rotina e do gerenciamento do ciclo de vida do token.

Para revogar um PAT, siga estas etapas:

  1. Em sua home page, abra as configurações do usuário e selecione tokens de acesso pessoal.

  2. Em Segurança, selecione tokens de acesso pessoal. Selecione o token para o qual você deseja revogar o acesso e, em seguida, selecione Revogar.

    A captura de tela mostra a opção Revogar para um token selecionado na página de Tokens de Acesso Pessoal.

  3. Na caixa de diálogo Confirmação , selecione Revogar.

    A captura de tela mostra a caixa de diálogo de confirmação para revogar um PAT.

APIs de Gerenciamento de Ciclo de Vida do PAT

As APIs de Gerenciamento de Ciclo de Vida do PAT podem ser úteis quando a manutenção de grandes volumes de tokens por meio da interface do usuário é insustentável. Gerenciar a rotação de PATs programaticamente também abre a oportunidade de rotacionar PATs regularmente e encurtar seus tempos de vida padrão. Você pode configurar o aplicativo de exemplo Python com seu locatário Microsoft Entra e sua organização do Azure DevOps.

Algumas coisas a serem observadas sobre estas APIs:

  • Microsoft Entra tokens de acesso são necessários para acessar essa API. Use uma forma mais forte de autenticação ao criar novos tokens.
  • Somente usuários ou aplicativos que usam um fluxo "em nome do usuário" podem gerar PATs. Aplicativos que usam fluxos "em nome do aplicativo" ou fluxos de autenticação que não emitem tokens de acesso Microsoft Entra não são válidos para uso com esta API. Dessa forma, entidades de serviço ou identidades gerenciadas não podem criar ou gerenciar PATs.
  • Anteriormente, os escopos compatíveis com as APIs de Gerenciamento de Ciclo de Vida do PAT eram limitados ao user_impersonation, mas agora o vso.pats está disponível e é o escopo recomendado para ser usado com essas APIs. Reduza o escopo de todos os aplicativos que anteriormente dependiam de user_impersonation para chamar essas APIs.

Formato PAT

As strings PAT usam um formato específico projetado para melhorar a detecção de segredos nas ferramentas de detecção de PATs vazados e ofertas de parceiros. O formato inclui bits identificáveis que melhoram a taxa de detecção de falsos positivos e permitem uma mitigação mais rápida de vazamentos detectados.

  • Os tokens têm 84 caracteres, com 52 caracteres sendo dados aleatórios, o que melhora a entropia geral. Os tokens são resistentes a ataques de força bruta.
  • Os tokens emitidos por Azure DevOps incluem uma assinatura AZDO fixa nas posições 76-80.

Se você integrar com PATs e tiver a validação de PAT interna, verifique se o código de validação acomoda o comprimento do token de 84 caracteres.

Práticas recomendadas para usar PATs

Alternativas a serem consideradas

  • Adquira um token Microsoft Entra por meio do Azure CLI para solicitações imprevistas em vez de criar um PAT (Token de Acesso Pessoal) de vida mais longa.
  • Use gerentes de credenciais como Git Credential Manager ou Azure Artifacts Credential Manager para simplificar o gerenciamento de credenciais, com a autenticação definida como tokens oauth ou Microsoft Entra.

Criar PATs

  • Não coloque dados pessoais no nome do PAT. Não renomeie o nome PAT para incluir parte ou todo o token PAT real.
  • Evite criar PATs globais, a menos que seja necessário em todas as organizações.
  • Use um token diferente por fluxo ou caso de uso.
  • Selecione apenas os escopos mínimos necessários para cada PAT. Conceda o privilégio mínimo necessário para sua tarefa específica. Crie PATs separadas com escopos limitados para fluxos de trabalho diferentes em vez de usar um único token de escopo amplo. Se o PAT precisar de permissões de apenas leitura, não forneça permissões de gravação até que seja necessário.
  • Mantenha o tempo de vida do PAT curto.

Gerenciar PATs

  • Não compartilhe seus PATs!
  • Store seus PATs em uma solução de gerenciamento de chave segura, como Azure Key Vault.
  • Gire ou regenere regularmente os seus PATs pela interface do usuário ou por meio das APIs de gerenciamento do ciclo de vida dos PATs.
  • Revogar os PATs quando eles não forem mais necessários.

Para administradores

Perguntas Frequentes

Q. Por que não posso editar ou regenerar um PAT definido para uma única organização?

A. Entre na organização onde seu PAT está definido. Você pode visualizar seus PATs quando estiver logado em qualquer organização do mesmo Microsoft Entra ID alterando o filtro de escopo de acesso. Você só pode editar tokens no escopo da organização quando estiver conectado à organização específica.

Q. O que acontece com um PAT se uma conta de usuário estiver desabilitada?

A. Quando um usuário é removido do Azure DevOps, o PAT é invalidado dentro de uma hora. Se sua organização estiver conectada a Microsoft Entra ID, o PAT também será invalidado em Microsoft Entra ID porque pertence ao usuário. Gire o PAT para outro usuário ou conta de serviço para manter os serviços em execução.

Q. Posso usar PATs com todas as APIs REST Azure DevOps?

A. Não. Você pode usar PATs com a maioria das APIs REST Azure DevOps, mas organizações e perfis e as APIs de Ciclo de Vida de Gerenciamento de PAT dão suporte apenas a tokens Microsoft Entra.

Q. O que acontece se eu acidentalmente verificar meu PAT em um repositório público em GitHub?

A. Azure DevOps verifica se há PATs vazadas em repositórios de GitHub públicos. Quando detectado, Azure DevOps notifica o proprietário do token e registra o evento em seu log audit. A menos que sejam desabilitados, os PATs vazados serão revogados automaticamente. Para obter mais informações, consulte Revogar automaticamente PATs vazados.

Q. Posso usar um token de acesso pessoal como uma chave de API para publicar pacotes NuGet em um feed de Azure Artifacts usando a linha de comando dotnet/nuget.exe?

A. Não. Azure Artifacts não dá suporte à passagem de um PAT como uma chave de API. Ao usar um ambiente de desenvolvimento local, instale o Azure Artifacts Provedor de Credenciais para autenticar com Azure Artifacts. Para obter mais informações, consulte os seguintes exemplos: dotnet e NuGet.exe. Se você quiser publicar seus pacotes usando Azure Pipelines, use a tarefa NuGet Authenticate para autenticar-se no feed. Para obter mais informações, consulte o exemplo em Publicar pacotes NuGet com o Azure Pipelines (YAML/Classic).

Q. Por que meu PAT parou de funcionar?

A. A autenticação pat exige que você entre regularmente no Azure DevOps usando o fluxo de autenticação completo. Entrar uma vez a cada 30 dias é suficiente para muitos usuários, mas talvez seja necessário entrar com mais frequência dependendo da configuração do Microsoft Entra. Se o PAT parar de funcionar, primeiro tente entrar em sua organização e concluir o prompt de autenticação completo. Se o seu PAT continuar não funcionando, comprove se ele expirou.

Para Azure DevOps Server, habilitar a autenticação básica IIS invalida o uso de PAT. Mantenha a Autenticação Básica do IIS desativada.

Q. Como faço para criar tokens de acesso que não estão vinculados a um usuário específico?

A. Os PATs são sempre associados à identidade do usuário que os criou. Para usar tokens não vinculados a um usuário específico, use tokens Microsoft Entra emitidos por um principal de serviço de aplicativo ou identidade gerenciada. Para os pipelines, use conexões de serviço para autenticar sem usar credenciais específicas de usuários. Saiba mais sobre a redução do uso de PAT no Azure DevOps.

Q. Como posso regenerar/girar PATs por meio da API? Vi essa opção na interface do usuário, mas não vejo um método semelhante na API.

A. A funcionalidade Regenerar disponível na interface do usuário realmente realiza algumas ações, que você pode replicar por meio de uma API.

Para girar seu PAT, siga estas etapas:

  1. Veja os metadados PAT com uma chamada GET.
  2. Crie um novo PAT com a ID de PAT antiga usando uma chamada POST .
  3. Revogue o PAT antigo usando uma chamada DELETE .

Q. Por quanto tempo um PAT expirado, revogado ou inativo permanece visível na lista de tokens Azure DevOps?

A. Você não pode mais usar ou regenerar PATs expiradas ou revogadas. Esses tokens inativos permanecem visíveis por vários meses após a expiração ou revogação antes de serem removidos automaticamente da exibição.

Q. Por que vejo uma mensagem "Preciso de aprovação do administrador" ao tentar usar um aplicativo Microsoft Entra para chamar as APIs de Gerenciamento de Ciclo de Vida do PAT?

A. As políticas de segurança do locatário exigem consentimento do administrador para que os aplicativos possam acessar os recursos da organização. Entre em contato com o administrador do locatário.

Usar a IA para gerenciar tokens de acesso pessoal

Se você tiver o Azure DevOps MCP Server configurado, poderá usar assistentes de IA para gerenciar e revisar seus personal access tokens usando comandos em linguagem natural. O SERVIDOR MCP fornece ao assistente de IA acesso seguro aos seus dados de Azure DevOps, permitindo que você liste tokens, verifique as datas de expiração e examine os escopos de token sem navegar pela interface da Web.

Prompts de exemplo para gerenciar tokens de acesso pessoal

Tarefa Prompt de exemplo
Criar um token de privilégio mínimo Help me create a PAT for <organization-name> that only has read access to work items and code in the <project-name> project, valid for 30 days
Renovar tokens expirando Show me all my PATs in <organization-name> expiring in the next 14 days, their scopes, and what I need to update when I regenerate them
Auditar a higiene do meu token List all my active PATs in <organization-name>, when each was last used, and flag any that have broader scopes than necessary
Solucionar problemas de falhas de autenticação My PAT stopped working for Git push to <repo-name> in <project-name> - help me check if it expired, has the right scope, or if a policy is blocking it
Localizar tokens a serem substituídos pela autenticação do Entra Show me which of my PATs in <organization-name> are used for interactive scenarios that could switch to Microsoft Entra authentication instead
Configurar uma conexão de serviço de CI/CD What's the minimum PAT scope needed for an Azure Pipelines service connection to <organization-name> that runs builds and deploys releases?

Dica

Se você estiver usando o Visual Studio Code, o agent mode será especialmente útil para revisar e auditar seus PATs, incluindo a identificação de tokens que precisam de substituição ou que possuem permissões excessivas.

  • Para evitar o uso de dados obsoletos ou armazenados em cache de consultas anteriores, adicione ao prompt Do not use previously fetched data.