Pular para o conteúdo principal

Visão geral

O Devin se conecta ao Azure DevOps por meio de uma entidade de serviço do Microsoft Entra. Seu administrador aprova o aplicativo Cognition Azure DevOps Service Principal, publicado pela Cognition, no seu tenant, o que cria uma entidade de serviço que você adiciona à sua organização do Azure DevOps com as permissões que escolher.
  • Apenas User.Read é solicitado durante a aprovação no Entra — isso estabelece apenas a identidade
  • A aprovação no Entra, por si só, não concede acesso a repositórios nem ao código
  • Todo o acesso aos repositórios é controlado pelas permissões que você atribui no Azure DevOps
Ao contrário de algumas outras integrações de SCM, o Azure DevOps não exibe apps de terceiros da mesma forma. Todo o gerenciamento de conexões é feito no Devin, em Configurações > Configurações Enterprise > Integrações.

Pré-requisitos

Antes de configurar a integração com o Azure DevOps, certifique-se de que você tenha:
  1. conta Enterprise do Devin com permissão para gerenciar integrações
  2. administrador do Microsoft Entra que possa conceder consentimento administrativo para aplicativos
  3. administrador da organização do Azure DevOps que possa adicionar usuários e atribuir permissões

Configuração da integração

  1. Entre na sua conta do Devin em app.devin.ai.
  2. Em outro navegador ou em uma janela anônima, entre no Azure DevOps (necessário para a etapa 6).
  3. Na sua conta Enterprise do Devin, acesse Configurações > Configurações Enterprise > Integrações e selecione Azure DevOps.
  4. Abra o menu suspenso no botão Connect e selecione Connect with entidade de serviço.
Conectar com entidade de serviço
  1. Você será redirecionado à Microsoft para conceder ao Devin permissão para acessar seu tenant. Após aprovar, você voltará para a página de integração do Azure DevOps no Devin, que agora exibirá a seção Add organization with entidade de serviço.
    • A aprovação cria um entidade de serviço no seu tenant do Microsoft Entra
    • Esta etapa solicita apenas User.Read — ela não concede acesso aos repositórios
  2. No Azure DevOps, acesse Configurações da organização > Users:
    • Clique em Add Users e adicione o entidade de serviço (Cognition Azure DevOps Service Principal)
    • Selecione Basic como nível de acesso (Stakeholder não é suficiente — as APIs exigem Basic)
    • Adicione a todos os projetos aos quais você quer que o Devin tenha acesso
    • Atribua o entidade de serviço aos Groups relevantes do Azure DevOps (normalmente Project Contributors)
  3. De volta ao Devin, na seção Add organization with entidade de serviço da página de integração do Azure DevOps, insira o nome da organização do Azure DevOps da etapa anterior e clique em Add.
  4. No Devin, selecione Git Permissions na sua integração do Azure DevOps, escolha uma sub-organização e conceda permissões no nível de Group ou Repository.
Permissões Git do Azure DevOps
  1. Para cada Organization que recebeu permissões, acesse Configurações do Devin > Devin’s Machine, clique em + Repository e integre os repositórios.

O que o Devin pode acessar

A integração do Devin com o Azure DevOps é limitada exclusivamente a operações Git:
CapacidadeDescrição
Listar repositóriosVisualizar os repositórios disponíveis e seus metadados
Ler branchesAcessar informações das branches e o histórico de commits
Criar pull requestsAbrir novas PRs para alterações de código
Visualizar pull requestsAcessar eventos, comentários e status das PRs
Fazer push de códigoFazer push de novas branches e commits para os repositórios
O Devin não tem acesso a itens de trabalho, pipelines, builds, planos de teste, artefatos, wiki ou conexões de serviço.
Se a sua organização precisar que o Devin ofereça suporte a outras áreas do Azure DevOps no futuro, entre em contato com enterprise@cognition.ai para discutir seus requisitos.

Considerações de segurança

  • Permissões mínimas do Entra — Apenas User.Read é solicitado. Não há acesso de leitura ao diretório inteiro, visibilidade de associação a grupos nem controle administrativo.
  • Autorização explícita — A aprovação no Entra, por si só, não concede acesso ao Azure DevOps. Todo acesso ao repositório deve ser atribuído explicitamente pelo admin do Azure DevOps.
  • Credenciais criptografadas — Todos os tokens são criptografados e armazenados com segurança.
  • Acesso com escopo definido — As permissões podem ser limitadas a projetos, repositórios e operações específicos na UI Enterprise do Devin.
  • Auditabilidade — A atividade é registrada nos logs de entrada do Entra e nos logs de auditoria do Azure DevOps.
  • Políticas de branch respeitadas — As PRs do Devin estão sujeitas às mesmas políticas de branch e aos mesmos requisitos de revisão que qualquer outro colaborador.

Melhores práticas

  • Use permissões no nível do repositório — Conceda ao Devin acesso apenas aos repositórios e projetos específicos de que ele precisa, em vez de conceder acesso a toda a organização.
  • Ative políticas de branch — Configure políticas de branch no Azure DevOps para garantir que todas as alterações passem pelos processos de revisão adequados antes do merge.
  • Monitore os logs de auditoria — Revise regularmente os logs de auditoria do Azure DevOps e os logs de entrada do Entra relacionados à atividade da entidade de serviço.

Solução de problemas

Falha no consentimento do administrador:
  • Verifique se o usuário que está aprovando tem permissão para conceder consentimento de administrador para aplicativos no seu tenant do Entra
  • Se o seu tenant restringe o consentimento para aplicativos, talvez seja necessário que um Administrador Global ou Administrador de Aplicativos na Nuvem conceda o consentimento
Entidade de serviço não visível no Azure DevOps:
  • Verifique se o consentimento do administrador foi concluído com sucesso no portal do Entra, em Enterprise Applications (procure por Cognition Azure DevOps Service Principal)
  • Certifique-se de que a entidade de serviço foi adicionada explicitamente à sua organização do Azure DevOps em Configurações da organização > Users
Acesso Condicional / MFA bloqueando o acesso:
  • Se a entidade de serviço estiver sujeita a políticas de Acesso Condicional que exigem MFA, a atualização do token falhará silenciosamente. Crie uma exclusão de Acesso Condicional para a entidade de serviço no aplicativo Devin.
O Devin não consegue ver meus repositórios:
  • Verifique se a entidade de serviço foi adicionada à organização do Azure DevOps em Configurações da organização > Users
  • Confirme se o nível de acesso está definido como Basic (Stakeholder não é suficiente para acesso à API)
  • Verifique se as permissões do repositório foram concedidas nas Configurações Enterprise do Devin
  • Certifique-se de que os repositórios foram adicionados à Devin’s Machine
Falha na criação de pull request:
  • Confirme se a entidade de serviço tem permissões de Colaborador no repositório de destino
  • Verifique se as políticas de branch não estão bloqueando a criação da PR
  • Verifique se a branch de destino existe e está acessível

Configuração de rede

Se você tiver a filtragem de IP ativada na instância do Azure DevOps, precisará incluir os endereços IP do Devin na lista de permissões. Para acessar a lista mais atualizada, consulte nossa documentação sobre lista de IPs permitidos.