Udostępnij za pośrednictwem


Tworzenie bezpiecznych aplikacji za pomocą usługi Azure DevOps

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

Twórz bezpieczne, skalowalne aplikacje i usługi zintegrowane z usługą Azure DevOps w celu uzyskiwania dostępu do zasobów użytkowników i automatyzowania procesów programowo. Niezależnie od tego, czy tworzysz wewnętrzne narzędzia automatyzacji, czy kompilujesz produkty komercyjne, usługa Azure DevOps udostępnia niezawodne interfejsy API i nowoczesne opcje uwierzytelniania, aby obsługiwać potrzeby integracji.

Wskazówka

Możesz użyć sztucznej inteligencji, aby ułatwić wykonywanie zadań usługi Azure DevOps. Aby rozpocząć pracę, zobacz Włączanie pomocy AI w usłudze Azure DevOps MCP Server.

Dlaczego warto zintegrować z usługą Azure DevOps?

Integracja usługi Azure DevOps umożliwia:

Automatyzowanie przepływów pracy

Tworzenie rozwiązań komercyjnych

  • Opracowywanie rozszerzeń witryny Marketplace dla klientów usługi Azure DevOps
  • Tworzenie produktów SaaS, które integrują się z usługą Azure DevOps
  • Tworzenie aplikacji mobilnych łączących się z usługami Azure DevOps
  • Integrowanie usługi Azure DevOps z systemami przedsiębiorstwa

Wprowadzenie: wybierz ścieżkę

Opcje szybkiego startu

Potrzeba Zalecane podejście Najlepsze dla
Prosta automatyzacja Interfejs API REST z osobistymi tokenami dostępu (PAT) Skrypty, narzędzia osobiste
Aplikacje produkcyjne Biblioteki klienta platformy .NET z tożsamością zarządzaną Aplikacje dla przedsiębiorstw, usługi hostowane na platformie Azure
Aplikacje interakcyjne Uwierzytelnianie Microsoft Entra Aplikacje dla użytkownika, narzędzia komputerowe
Niestandardowe składniki interfejsu użytkownika Rozszerzenia usługi Azure DevOps Dostosowania zespołu, rynkowe produkty

Uwierzytelnianie: Najpierw zabezpieczenia

Wybierz odpowiednią metodę uwierzytelniania dla danego scenariusza.

Zalecane w środowisku produkcyjnym:

  • Tożsamość zarządzana — w przypadku aplikacji hostowanych na platformie Azure (najbezpieczniejsze)
  • Główny serwisowy — w przypadku potoków ciągłej integracji i ciągłego wdrażania oraz zautomatyzowanych usług
  • Microsoft Entra ID — w przypadku aplikacji przeznaczonych dla użytkowników wymagających przepływów OAuth

Szybkie programowanie:

Unikaj stosowania w środowisku produkcyjnym:

  • Uwierzytelnianie za pomocą nazwy użytkownika/hasła (przestarzałe)
  • Zakodowane na stałe poświadczenia w kodzie źródłowym
  • Nadmiernie szerokie zakresy uprawnień

Podejścia do rozwoju

Integracja interfejsu API REST

Najlepsze dla: Bezpośrednie wywołania HTTP, niezależne od platformy programowanie, prosta automatyzacja

**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/)

Biblioteki klienckie .NET

Najlepsze dla: Aplikacje w języku C#, programowanie dla przedsiębiorstw, złożone integracje

**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)

Integracja sterowana zdarzeniami

Najlepsze dla: Odpowiedzi w czasie rzeczywistym, automatyzacja oparta na elementach webhook, synchronizacja systemu zewnętrznego

**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)

Rozszerzania platformy

Najlepsze dla: Niestandardowe składniki interfejsu użytkownika, funkcje specyficzne dla zespołu, produkty marketplace

**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)

Wzorce architektury

Integracja mikrousług:

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

Aplikacja dla przedsiębiorstw:

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

Aplikacja skierowana do użytkownika:

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

Zabezpieczenia i zgodność

Najlepsze rozwiązania dotyczące zabezpieczeń

Zabezpieczenia uwierzytelniania:

  • ✅ Używanie tokenów Entra firmy Microsoft zamiast osobistych tokenów dostępu (PAT) na potrzeby nowych integracji — identyfikator Entra zapewnia krótszą żywotność tokenów, automatyczne zarządzanie poświadczeniami, wymuszanie zasad dostępu warunkowego i scentralizowaną inspekcję
  • ✅ Używanie tożsamości zarządzanych dla obciążeń hostowanych na platformie Azure w celu całkowitego wyeliminowania zarządzania poświadczeniami
  • ✅ Używanie jednostek usługi w scenariuszach automatyzacji, które nie mogą używać tożsamości zarządzanych
  • ✅ Implementowanie prawidłowej logiki odświeżania tokenu
  • ✅ Stosowanie zasady najniższych uprawnień
  • ✅ Włączanie rejestrowania inspekcji dla wszystkich wywołań interfejsu API
  • Ogranicz tworzenie Personal Access Token (PAT) przy użyciu zasad organizacji, jeśli jest to możliwe
  • ❌ Nigdy nie zatwierdzaj poświadczeń do systemu kontroli wersji
  • ❌ Nie używaj nadmiernie szerokich zakresów PAT
  • ❌ Nie twórz długoterminowych tokenów PAT, gdy działają krótkoterminowe tokeny Entra

Zabezpieczenia aplikacji:

  • Implementowanie prawidłowej obsługi błędów i rejestrowania
  • Używanie protokołu HTTPS dla całej komunikacji
  • Weryfikowanie wszystkich danych wejściowych
  • Obsługa limitów szybkości w sposób efektywny
  • Przechowywanie poufnych danych w usłudze Azure Key Vault

Zagadnienia dotyczące zgodności:

  • Przegląd zabezpieczeń usługi Azure DevOps
  • Omówienie wymagań dotyczących rezydencji danych.
  • Zaimplementuj odpowiednie mechanizmy kontroli dostępu i inspekcję.
  • Postępuj zgodnie z wytycznymi dotyczącymi zgodności specyficznymi dla branży.

Zasoby i następne kroki

Podstawowa dokumentacja

Podstawowe pojęcia:

Dokumentacja interfejsu API:

Przykłady kodu:

Szybkie akcje

Rozpocznij tworzenie dzisiaj:

  1. Konfigurowanie uwierzytelniania — wybierz metodę uwierzytelniania
  2. Wypróbuj interfejs API REST — wykonaj pierwsze wywołanie interfejsu API
  3. Uruchamianie przykładów biblioteki klienta — zobacz przykłady kodu roboczego
  4. Przegląd rozwiązań zabezpieczeń — bezpieczne tworzenie od początku

Potrzebujesz pomocy?

Wskazówka

Dopiero zaczynasz korzystać z integracji usługi Azure DevOps? Zacznij od wskazówek dotyczących uwierzytelniania , aby zrozumieć opcje, a następnie wypróbuj przewodnik Szybki start dotyczący interfejsu API REST , aby wykonać pierwsze pomyślne wywołanie interfejsu API.