Partilhar via


Crie aplicativos seguros com o Azure DevOps

Serviços de DevOps do Azure | Azure DevOps Server | Azure DevOps Server 2022

Crie aplicativos e serviços seguros e escaláveis que se integram ao Azure DevOps para acessar recursos do usuário e automatizar processos programaticamente. Quer esteja a criar ferramentas de automação internas ou a criar produtos comerciais, o Azure DevOps fornece APIs robustas e opções de autenticação modernas para dar suporte às suas necessidades de integração.

Por que integrar com o Azure DevOps?

A integração do Azure DevOps permite:

🔧 Automatize fluxos de trabalho

  • Crie e rastreie bugs automaticamente a partir de relatórios de clientes
  • Monitorar itens de trabalho e exibir status em painéis personalizados
  • Sincronizar dados entre o Azure DevOps e sistemas externos
  • Gerar relatórios e análises a partir de dados do Azure DevOps

🏗️ Construa soluções comerciais

  • Desenvolver extensões de mercado para clientes do Azure DevOps
  • Criar produtos SaaS que se integram ao Azure DevOps
  • Criar aplicativos móveis que se conectam aos serviços do Azure DevOps
  • Integrar o Azure DevOps com sistemas empresariais

Introdução: escolha o seu caminho

🚀 Opções de início rápido

Necessidade Abordagem recomendada Melhor para
Automação simples API REST com tokens de acesso pessoal (PATs) Scripts, ferramentas pessoais
Aplicações de produção Bibliotecas de cliente .NET com identidade gerenciada Aplicações empresariais, serviços alojados no Azure
Aplicações interativas Autenticação do Microsoft Entra Aplicações viradas para o utilizador, ferramentas de ambiente de trabalho
Componentes personalizados da interface do usuário Extensões do Azure DevOps Personalizações de equipe, produtos de marketplace

🔐 Autenticação: Segurança em primeiro lugar

Escolha o método de autenticação correto:

✅ Recomendado para produção:

⚡ Desenvolvimento rápido:

❌ Evite para produção:

  • Autenticação de nome de usuário/senha (preterida)
  • Credenciais codificadas no código-fonte
  • Escopos de permissão excessivamente amplos

Abordagens de desenvolvimento

🔌 Integração com a API REST

Ideal para: Chamadas HTTP diretas, desenvolvimento independente de plataforma, automação simples

**Key benefits:**
- Works with any programming language
- Full control over HTTP requests and responses
- Lightweight integration for simple scenarios
- Easy to debug and test

**Get started:**
- [Learn REST API basics](./how-to/call-rest-api.md)
- [Browse API reference](/rest/api/azure/devops/)
- [Try APIs in the browser](https://docs.microsoft.com/rest/api/azure/devops/)

📚 Bibliotecas de cliente .NET

Ideal para: Aplicações C#, desenvolvimento empresarial, integrações complexas

**Key benefits:**
- Strongly typed APIs with IntelliSense support
- Built-in retry logic and error handling
- Async/await patterns for better performance
- Production-ready authentication options

**Get started:**
- [.NET client library samples](./get-started/client-libraries/samples.md)
- [Authentication guidance](./get-started/authentication/authentication-guidance.md)
- [Client library concepts](./concepts/dotnet-client-libraries.md)

🔔 Integração orientada a eventos

Ideal para: Respostas em tempo real, automação baseada em webhook, sincronização do sistema externo

**Key benefits:**
- Real-time event notifications
- Reduced polling and improved efficiency
- Support for multiple event types
- Easy integration with external services

**Get started:**
- [Service hooks overview](../service-hooks/overview.md)
- [Webhook configuration guide](../service-hooks/services/webhooks.md)
- [Event reference documentation](../service-hooks/events.md)

🧩 Extensões de plataforma

Ideal para: Componentes personalizados da interface do usuário, recursos específicos da equipe, produtos do mercado

**Key benefits:**
- Native integration with Azure DevOps UI
- Access to platform APIs and services
- Distribution through Visual Studio Marketplace
- Rich customization capabilities

**Get started:**
- [Extension development overview](../extend/overview.md)
- [Extension samples and tutorials](../extend/develop/samples-overview.md)
- [Marketplace publishing guide](../extend/publish/overview.md)

Padrões de arquitetura

Integração de microsserviços:

Azure Function/App Service → Managed Identity → Azure DevOps APIs
- Secure, serverless integration
- Automatic credential management
- Scalable and cost-effective

Aplicação empresarial:

On-premises App → Service Principal → Azure DevOps REST APIs
- Certificate-based authentication
- Centralized credential management
- Audit logging and compliance

Aplicativo voltado para o usuário:

Web/Mobile App → Microsoft Entra OAuth → Azure DevOps on behalf of user
- User consent flows
- Secure token management
- Granular permission control

Segurança e conformidade

🛡️ Melhores práticas de segurança

Segurança de autenticação:

  • ✅ Use identidades gerenciadas quando possível
  • ✅ Implementar lógica de atualização de token adequada
  • ✅ Aplicar o princípio do menor privilégio
  • ✅ Habilitar o log de auditoria para todas as chamadas de API
  • ❌ Nunca confirme credenciais para controle do código-fonte
  • ❌ Não utilize âmbitos PAT demasiado amplos

Segurança da aplicação:

  • Implementar o tratamento e o registro de erros adequados
  • Usar HTTPS para todas as comunicações
  • Validar todos os dados de entrada
  • Gerenciar limitação de taxa de maneira eficiente
  • Armazenar dados confidenciais no Azure Key Vault

Considerações sobre conformidade:

Recursos e próximas etapas

📖 Documentação essencial

Conceitos principais:

Referências da API:

Exemplos de código:

🎯 Ações rápidas

Comece a construir hoje:

  1. Configurar autenticação - Escolha seu método de autenticação
  2. Experimente a API REST - Faça sua primeira chamada de API
  3. Executar exemplos de biblioteca de cliente - Consulte exemplos de código de trabalho
  4. Rever as práticas de segurança - Crie com segurança desde o início

Precisa de ajuda?

Sugestão

Novo na integração do Azure DevOps? Comece com as diretrizes de autenticação para entender suas opções e, em seguida, tente o início rápido da API REST para fazer sua primeira chamada de API bem-sucedida.