Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zestaw SDK Microsoft Entra ID Auth (sidecar) to skonteneryzowana usługa internetowa, która obsługuje uzyskiwanie tokenów, walidację tokenów oraz bezpieczne wywołania podrzędnych interfejsów API. Działa jako kontener pomocniczy w połączeniu z aplikacją, co umożliwia odciążenie logiki uwierzytelniania do dedykowanej usługi. Centralizując operacje związane z tożsamością w zestawie SDK uwierzytelniania Microsoft Entra ID (sidecar), eliminujesz konieczność implementowania złożonej logiki zarządzania tokenami w każdej usłudze, ograniczając powielanie kodu i potencjalne luki w zabezpieczeniach.
Jeśli tworzysz w Kubernetes, usługi konteneryzowane w Dockerze lub nowoczesne mikrousługi na platformie Azure, pakiet SDK uwierzytelniania Microsoft Entra ID (sidecar) zapewnia standardowy sposób obsługi uwierzytelniania i autoryzacji w aplikacjach cloud-native.
Co to jest zestaw SDK do uwierzytelniania Microsoft Entra ID (sidecar)?
Zestaw SDK uwierzytelniania Microsoft Entra ID (przyczepka) 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 osadzania logiki tożsamości bezpośrednio w kodzie aplikacji, zestaw MICROSOFT ENTRA ID Auth SDK (przyczepka) 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 zapisywać różne usługi w Python, Node.js, Go, Java i innych przy zachowaniu spójnych wzorców uwierzytelniania.
Typowa architektura jest następująca:
Aplikacja kliencka → Twój interfejs API sieci Web → zestaw SDK uwierzytelniania Microsoft Entra ID (sidecar) → Microsoft Entra ID
Aby uzyskać najnowsze tagi obrazu kontenera i wersji, zobacz Obraz kontenera , aby rozpocząć pracę.
Zabezpieczenia
Upewnij się, że wdrożenie zestawu SDK uwierzytelniania Microsoft Entra ID (sidecar) jest zgodne z najlepszymi praktykami w zakresie bezpiecznego działania. 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ąć korzystanie z zestawu SDK uwierzytelniania Microsoft Entra ID (sidecar), zaleca się wykonanie następujących kroków:
- Wybieranie wdrożenia — wybierz pozycję Kubernetes, Docker lub AKS
- Konfigurowanie ustawień — konfigurowanie zmiennych środowiskowych
- Wybierz scenariusz — postępuj zgodnie z przykładem z przewodnikiem
- 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 za pośrednictwem protokołu HTTP z użyciem języka Python, Node.js, Go, Java i innych języków |
| 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 Gotowe | Integruje się z tożsamością zarządzaną i tokenami potwierdzenia posiadania — utrzymywanie poufnych danych poza kodem aplikacji |
Kiedy używać pakietu SDK do uwierzytelniania Microsoft Entra ID (sidecar) lub Microsoft.Identity.Web
| Scenario | Użyj zestawu SDK uwierzytelniania Microsoft Entra ID (sidecar) | Użyj Microsoft. Identity.Web |
|---|---|---|
| Obsługa języków | Wiele języków (Python, Node.js, Go, Java itp.) | tylko .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 platformy .NET |
| Tożsamość agenta | Dostępne we wszystkich obsługiwanych językach | tylko .NET |
| Walidacja tokenu | Dostępne we wszystkich obsługiwanych językach | tylko .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 .NET |
| Konteneryzacja | Przeznaczony dla środowisk konteneryzowanych | Działa z kontenerami lub bez tych kontenerów |
Zobacz Porównanie z Microsoft.Identity.Web dla uzyskania szczegółowych wskazówek dotyczących wyboru między dwoma podejściami.
Walidacja tokenu
Zestaw Microsoft Entra ID Auth SDK (sidecar) weryfikuje tokeny dostępu i tokeny identyfikacyjne wystawione przez Microsoft Entra ID, w tym tokeny dostępu przeznaczone wyłącznie dla aplikacji osadzone w poświadczeniach SHR PoP, weryfikując ich podpisy na podstawie kluczy publicznych Microsoft Entra ID, sprawdzając terminy wygaśnięcia oraz upewniając się, że tokeny są przeznaczone dla Twojej aplikacji. W przypadku poświadczeń SHR PoP sprawdza także podpis SHR i zawsze weryfikuje znacznik czasu (ts). Domyślnie weryfikuje metodę HTTP (m), nazwę hosta albo nazwę hosta i port (u) oraz ścieżkę (p); operatorzy mogą wyłączyć te sprawdzenia. Powiązanie z parametrami zapytania (q) jest opcjonalne, a schemat URI, nagłówki (h) i treść (b) nie są weryfikowane. Po zweryfikowaniu można wyodrębnić oświadczenia, role i zakresy, aby podejmować świadome decyzje dotyczące autoryzacji w ramach logiki aplikacji.
Tworzenie nagłówka pozyskiwania/autoryzacji tokenu
- Przepływ On-Behalf-Of OAuth 2.0 — delegowanie kontekstu użytkownika do docelowych interfejsów API
- Poświadczenia klienta — uwierzytelnianie aplikacji do aplikacji
- Zarządzana tożsamość — uwierzytelnianie natywnej usługi 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 ID Auth SDK (sidecar) 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 deklaracji z tokenów okaziciela lub poświadczeń SHR PoP używanych wyłącznie przez aplikację na potrzeby kontroli dostępu i niestandardowego oprogramowania pośredniczącego do autoryzacji |
| 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 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 | Korzystanie z SDK uwierzytelniania Microsoft Entra ID (sidecar) w aplikacjach Node.js/Express/NestJS |
| Zintegruj z Pythonem | Używanie zestawu SDK uwierzytelniania Microsoft Entra ID (sidecar) w aplikacjach Flask/FastAPI/Django |
Wzorce architektury
Typowy przepływ, w którym klient wywołuje interfejs API sieci Web, a ten deleguje operacje związane z tożsamością do pakietu SDK uwierzytelniania Microsoft Entra ID (sidecar) za pomocą 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.
Współdziała z Microsoft Entra ID w sprawie wystawiania tokenów oraz pobierania metadanych Open ID Connect, z architekturą przedstawioną 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 or PoP over HTTP | webapi[Web API]:::dnode
subgraph Pod / Host
webapi -->|"/Validate<br/>/AuthorizationHeader/{name}<br/>/DownstreamApi/{name}"| sidecar["Microsoft Entra ID Auth SDK (sidecar)"]:::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:
- Zgłoś problemy dotyczące repozytorium Microsoft-identity-web
- Sprawdź przewodniki rozwiązywania problemów z Microsoft Entra ID