Udostępnij przez


Microsoft Entra SDK dla AgentID: Przegląd

Microsoft Entra SDK dla AgentID to usługa sieciowa oparta na kontenerach, która obsługuje pozyskiwanie tokenów, ich walidację i bezpieczne wykonywanie połączeń z interfejsem API podrzędnym. Działa jako kontener pomocniczy w połączeniu z aplikacją, co umożliwia odciążenie logiki uwierzytelniania do dedykowanej usługi. Scentralizowanie operacji tożsamości w zestawie Microsoft Entra SDK for AgentID eliminuje konieczność osadzania złożonej logiki zarządzania tokenami w każdej usłudze, zmniejszając duplikację kodu i potencjalne luki w zabezpieczeniach.

Jeśli tworzysz za pomocą platformy Kubernetes, konteneryzowanych usług z platformą Docker lub nowoczesnych mikrousług na platformie Azure, zestaw Microsoft Entra SDK for AgentID zapewnia ustandaryzowany sposób obsługi uwierzytelniania i autoryzacji w aplikacjach natywnych dla chmury.

Co to jest Microsoft Entra SDK dla AgentID?

Zestaw Microsoft Entra SDK for AgentID komunikuje się z aplikacją za pośrednictwem interfejsu API HTTP na potrzeby uwierzytelniania i autoryzacji, zapewniając spójne wzorce integracji niezależnie od stosu technologii. Zamiast osadzać logikę tożsamości bezpośrednio w kodzie aplikacji, zestaw Microsoft Entra SDK for AgentID obsługuje zarządzanie tokenami, walidację i wywołania interfejsu API za pośrednictwem standardowych żądań HTTP.

Takie podejście umożliwia architektury mikrousług wielolotowych, w których można pisać różne usługi w języku Python, Node.js, Go, Java i innych przy zachowaniu spójnych wzorców uwierzytelniania.

Typowa architektura jest następująca:

Aplikacja kliencka → interfejs API sieci Web → Microsoft Entra SDK for AgentID → Microsoft Entra ID

Aby uzyskać najnowsze tagi obrazu kontenera i wersji, zobacz Obraz kontenera , aby rozpocząć pracę.

Uwaga / Notatka

Zestaw SDK Microsoft Entra dla AgentID jest obecnie dostępny w wersji zapoznawczej. Sprawdź wersje usługi GitHub pod kątem najnowszych dostępnych tagów.

Zabezpieczenia

Upewnij się, że wdrożenie zestawu Microsoft Entra SDK dla identyfikatora AgentID jest zgodne z najlepszymi rozwiązaniami dotyczącymi bezpiecznej operacji. Zestaw SDK musi działać w środowisku konteneryzowanym z ograniczonym dostępem do sieci, aby zapobiec nieautoryzowanemu dostępowi. Uwidacznianie interfejsu API zestawu SDK publicznie może prowadzić do luk w zabezpieczeniach, takich jak nieautoryzowane pozyskiwanie tokenów.

Zapoznaj się z najlepszymi rozwiązaniami dotyczącymi zabezpieczeń , aby zapewnić najlepsze rozwiązania dotyczące zaleceń dotyczących zabezpieczeń sieci, poświadczeń i środowiska uruchomieniowego.

Ostrzeżenie

Interfejs API zestawu SDK nie może być publicznie dostępny. Powinno to być osiągalne tylko przez aplikacje w ramach tej samej granicy zaufania (np. tego samego zasobnika lub sieci wirtualnej), aby zapobiec nieautoryzowanemu pozyskiwaniu tokenu.

Szybki start

Aby rozpocząć pracę z zestawem Microsoft Entra SDK for AgentID, zalecane są następujące kroki:

  1. Wybieranie wdrożenia — wybierz pozycję Kubernetes, Docker lub AKS
  2. Konfigurowanie ustawień — konfigurowanie zmiennych środowiskowych
  3. Wybierz scenariusz — postępuj zgodnie z przykładem z przewodnikiem
  4. Wdrażanie w środowisku produkcyjnym — przegląd najlepszych rozwiązań w zakresie zabezpieczeń

Najważniejsze korzyści

Architektura oddziela kwestie związane z tożsamością od logiki biznesowej, zapewniając następujące korzyści:

Korzyść Description
Obsługa wielu języków Wywoływanie przez HTTP w Pythonie, Node.js, Go, Javie i innych
Konfiguracja scentralizowanych zabezpieczeń Jedno miejsce na potrzeby konfiguracji tożsamości, zarządzania tokenami i zarządzania poświadczeniami
Kontener Native Opracowane na potrzeby platform Kubernetes, Docker, AKS i innych nowoczesnych wdrożeń
Zero Trust Ready Integruje się z tożsamością zarządzaną i tokenami potwierdzenia posiadania — utrzymywanie poufnych danych poza kodem aplikacji

Kiedy używać Microsoft Entra SDK dla AgentID lub Microsoft.Identity.Web

Scenario Używanie zestawu Microsoft Entra SDK dla identyfikatora agenta Korzystanie z witryny Microsoft.Identity.Web
Obsługa języków Wiele języków (Python, Node.js, Go, Java itp.) Tylko platforma .NET
Model wdrażania Kontenery (Kubernetes, Docker, AKS) Dowolny model wdrażania
Wzorce tożsamości Spójne wzorce we wszystkich usługach Głęboka integracja z platformą .NET Framework
Tożsamość agenta Dostępne we wszystkich obsługiwanych językach Tylko platforma .NET
Walidacja tokenu Dostępne we wszystkich obsługiwanych językach Tylko platforma .NET
Model zabezpieczeń Wpisy tajne i tokeny odizolowane od kodu aplikacji Integracja z aplikacją
Wydajność Wymagany dodatkowy przeskok sieciowy Bezpośrednie wywołania wewnątrzprocesowe
Integracja z platformą Integracja interfejsu API HTTP Natywna integracja platformy .NET
Konteneryzacja Przeznaczony dla środowisk konteneryzowanych Działa z kontenerami lub bez tych kontenerów

Aby uzyskać szczegółowe wskazówki dotyczące wyboru między dwoma podejściami, zobacz Porównanie z witryną Microsoft.Identity.Web .

Walidacja tokenu

Zestaw Microsoft Entra SDK dla AgentID weryfikuje zarówno tokeny dostępu, jak i tokeny identyfikacyjne wystawione przez Microsoft Entra ID, weryfikując ich podpisy względem publicznych kluczy Microsoft Entra ID, sprawdzając czasy wygaśnięcia oraz upewniając się, że tokeny są przeznaczone dla twojej aplikacji. Po zweryfikowaniu można wyodrębnić oświadczenia użytkownika, role i zakresy, aby podejmować świadome decyzje dotyczące autoryzacji w ramach logiki aplikacji.

Tworzenie nagłówka dla pozyskiwania tokenu i autoryzacji

  • Przepływ On-Behalf-Of OAuth 2.0 — delegowanie kontekstu użytkownika do docelowych interfejsów API
  • Poświadczenia klienta — uwierzytelnianie aplikacji do aplikacji
  • Tożsamość zarządzana — natywne uwierzytelnianie usługi platformy Azure
  • Tożsamość agenta — wzorce autonomicznych lub delegowanych agentów

Wywołania interfejsu API podrzędnego

  • Automatyczne uzyskiwanie i dołączanie tokenów
  • Opcjonalne zastąpienia żądania (zakresy, metoda, nagłówki)
  • Obsługa podpisanych żądań HTTP (PoP/SHR)

Scenariusze i samouczki

Poniższe przewodniki to kompleksowe samouczki krok po kroku z praktycznymi przykładami kodu pokazującymi, jak zintegrować zestaw Microsoft Entra SDK for AgentID z aplikacjami. Każdy scenariusz zawiera kompletne przykłady żądań/odpowiedzi, fragmenty kodu i wzorce implementacji dostosowane do różnych języków programowania i struktur.

Scenario Description
Weryfikowanie nagłówka autoryzacji Wyodrębnianie roszczeń z tokenów typu bearer na potrzeby kontroli dostępu i niestandardowego pośredniczącego oprogramowania autoryzacyjnego
Uzyskaj nagłówek autoryzacji Uzyskiwanie tokenów do bezpiecznego wywoływania podrzędnych interfejsów API
Wywoływanie interfejsu API podrzędnego Wykonuj wywołania HTTP do chronionych API z automatycznym dołączaniem tokenu dla wielojęzycznych mikrousług.
Korzystanie z tożsamości zarządzanej Uwierzytelnij się jako usługa Azure do wywoływania usługi Microsoft Graph lub innych usług Azure
Implementowanie długoterminowego przepływu OBO Obsługa kontekstu użytkownika w przypadku długotrwałych operacji przy użyciu odświeżania tokenu i delegowania w imieniu użytkownika
Używanie podpisanych żądań HTTP Implementowanie zabezpieczeń dowodu posiadania przy użyciu tokenów poP
Autonomiczne przetwarzanie wsadowe agenta Przetwarzanie zadań wsadowych przy użyciu tożsamości agenta autonomicznego
Integracja z języka TypeScript Użyj zestawu Microsoft Entra SDK dla identyfikatora AgentID w aplikacjach Node.js/Express/NestJS
Integracja z języka Python Używanie pakietu SDK Microsoft Entra do obsługi AgentID z aplikacji Flask/FastAPI/Django

Wzorce architektury

Typowy przepływ, w którym klient wywołuje internetowy interfejs API, interfejs API deleguje operacje tożsamości do zestawu Microsoft Entra SDK dla identyfikatora AgentID za pośrednictwem punktów końcowych HTTP. Zestaw SDK weryfikuje tokeny przychodzące przy użyciu punktu końcowego /Validate, uzyskuje tokeny przy użyciu /AuthorizationHeader i /AuthorizationHeaderUnauthenticated, i może bezpośrednio wywoływać dalsze interfejsy API przy użyciu /DownstreamApi i /DownstreamApiUnauthenticated.

Wchodzi w interakcję z identyfikatorem Entra firmy Microsoft na potrzeby wystawiania tokenów i pobierania metadanych Open ID Connect z architekturą pokazaną w poniższym fragmencie kodu:

%%{init: {
  "theme": "base",
  "themeVariables": {
    "background": "#121212",
    "primaryColor": "#1E1E1E",
    "primaryBorderColor": "#FFFFFF",
    "primaryTextColor": "#FFFFFF",
    "textColor": "#FFFFFF",
    "lineColor": "#FFFFFF",
    "labelBackground": "#000000"
  }
}}%%
flowchart LR
    classDef dnode fill:#1E1E1E,stroke:#FFFFFF,stroke-width:2px,color:#FFFFFF
    linkStyle default stroke:#FFFFFF,stroke-width:2px,color:#FFFFFF

    client[Client Application]:::dnode -->| Bearer over HTTP | webapi[Web API]:::dnode
    subgraph Pod / Host
        webapi -->|"/Validate<br/>/AuthorizationHeader/{name}<br/>/DownstreamApi/{name}"| sidecar[Microsoft Entra SDK for AgentID]:::dnode
    end
    sidecar -->|Token validation & acquisition| entra[Microsoft Entra ID]:::dnode

Pomoc techniczna i zasoby

Poniższe zasoby zawierają kompleksowe wskazówki i pomoc w rozwiązywaniu problemów i odpowiedzi na typowe pytania.

Resource Description
Tożsamości agenta Dowiedz się więcej o autonomicznych i delegowanych wzorcach agentów dla zaawansowanych scenariuszy
Dokumentacja interfejsu API Kompletna dokumentacja punktu końcowego z formatami żądań/odpowiedzi, parametrami zapytania i kodami błędów
Rozwiązywanie problemów Typowe problemy i rozwiązania krok po kroku dotyczące problemów z wdrażaniem i środowiskiem uruchomieniowym
FAQ Często zadawane pytania dotyczące konfiguracji, zabezpieczeń i integracji

Aby uzyskać dodatkową pomoc:

Dodatkowe zasoby