Freigeben über


Microsoft Entra SDK für AgentID: Übersicht

Das Microsoft Entra SDK für AgentID ist ein containerisierter Webdienst, der Tokenakquisition, Validierung und sichere nachgeschaltete API-Aufrufe verarbeitet. Sie wird zusammen mit Ihrer Anwendung als Begleitcontainer ausgeführt, sodass Sie identitätslogik in einen dedizierten Dienst entladen können. Durch die Zentralisierung von Identitätsoperationen im Microsoft Entra SDK für AgentID entfällt die Notwendigkeit, komplexe Tokenverwaltungslogik in jeden Dienst einzubetten, wodurch die Codeduplizierung und potenzielle Sicherheitsrisiken reduziert werden.

Wenn Sie mit Kubernetes, containerisierten Diensten mit Docker oder modernen Microservices in Azure erstellen, bietet das Microsoft Entra SDK für AgentID eine standardisierte Möglichkeit zum Verarbeiten der Authentifizierung und Autorisierung in cloudeigenen Anwendungen.

Was ist das Microsoft Entra SDK für AgentID?

Das Microsoft Entra SDK für AgentID kommuniziert mit Ihrer Anwendung über eine HTTP-API für Authentifizierung und Autorisierung und stellt unabhängig vom Technologiestapel konsistente Integrationsmuster bereit. Anstatt Identitätslogik direkt in Ihren Anwendungscode einzubetten, verarbeitet das Microsoft Entra SDK für AgentID Tokenverwaltung, Validierung und API-Aufrufe über standardmäßige HTTP-Anforderungen.

Dieser Ansatz ermöglicht polyglot microservices-Architekturen, bei denen verschiedene Dienste in Python, Node.js, Go, Java und anderen geschrieben werden können, während konsistente Authentifizierungsmuster beibehalten werden.

Die typische Architektur lautet wie folgt:

Clientanwendung → Ihre Web-API → Microsoft Entra SDK für AgentID → Microsoft Entra ID

Die neuesten Container-Images und Versions-Tags finden Sie im Container-Image, um zu starten.

Hinweis

Das Microsoft Entra SDK für AgentID befindet sich derzeit in der Vorschauversion. Überprüfen Sie die GitHub-Versionen auf die neuesten verfügbaren Tags.

Sicherheit

Stellen Sie sicher, dass Ihr Microsoft Entra SDK für die AgentID-Bereitstellung bewährte Methoden für den sicheren Betrieb befolgt. Das SDK muss in einer containerisierten Umgebung mit eingeschränktem Netzwerkzugriff ausgeführt werden, um nicht autorisierten Zugriff zu verhindern. Das öffentliche Verfügbarmachen der SDK-API kann zu Sicherheitsrisiken führen, z. B. zum Erwerb nicht autorisierter Token.

Lesen Sie Security Best Practices, um sich über empfohlene bewährte Methoden zur Netzwerksicherheit, Laufzeitsicherheit und für Anmeldeinformationen zu informieren.

Vorsicht

Die SDK-API darf nicht öffentlich zugänglich sein. Es sollte nur von Anwendungen innerhalb derselben Vertrauensgrenze (z. B. desselben Pods oder virtuellen Netzwerks) erreichbar sein, um nicht autorisierte Tokenakquisition zu verhindern.

Quick Start

Um mit dem Microsoft Entra SDK für AgentID zu beginnen, werden die folgenden Schritte empfohlen:

  1. Wählen Sie Ihre Bereitstellung aus – Wählen Sie Kubernetes, Docker oder AKS aus.
  2. Konfigurieren von Einstellungen – Einrichten von Umgebungsvariablen
  3. Wählen Sie ein Szenario – Folgen Sie einem geführten Beispiel
  4. Bereitstellung in der Produktion – Bewährte Sicherheitspraktiken überprüfen

Hauptvorteile

Die Architektur trennt Identitätsbedenken von geschäftslogik und bietet die folgenden Vorteile:

Nutzen Description
Unterstützung für mehrere Sprachen Aufruf über HTTP mit Python, Node.js, Go, Java und anderen
Zentrale Sicherheitskonfiguration Ein Ort für identitätskonfiguration, Tokenverwaltung und Anmeldeinformationsverwaltung
Container Native Erstellt für Kubernetes, Docker, AKS und andere moderne Bereitstellungen
Zero Trust Ready Durch die Integration in verwaltete Identitäts- und Besitztoken werden vertrauliche Daten aus Ihrem Anwendungscode herausgehalten.

Wann das Microsoft Entra SDK für AgentID oder Microsoft.Identity.Web verwendet wird

Scenario Verwenden des Microsoft Entra SDK für AgentID Verwenden von Microsoft.Identity.Web
Sprachunterstützung Mehrere Sprachen (Python, Node.js, Go, Java usw.) Nur .NET
Bereitstellungsmodell Container (Kubernetes, Docker, AKS) Jedes Bereitstellungsmodell
Identitätsmuster Einheitliche Muster für alle Dienste Deep .NET Framework-Integration
Agentidentität Verfügbar in allen unterstützten Sprachen Nur .NET
Tokenüberprüfung Verfügbar in allen unterstützten Sprachen Nur .NET
Sicherheitsmodell Geheime Schlüssel und Token, die vom Anwendungscode isoliert sind In der Anwendung integriert
Leistung Zusätzlicher Netzwerksprung erforderlich Direkte In-Prozess-Aufrufe
Frameworkintegration HTTP-API-Integration Native .NET-Integration
Containerisierung Entwickelt für containerisierte Umgebungen Funktioniert mit oder ohne Container

Detaillierte Anleitungen zur Auswahl zwischen den beiden Ansätzen finden Sie unter "Vergleich mit Microsoft.Identity.Web ".

Tokenüberprüfung

Das Microsoft Entra SDK für AgentID überprüft sowohl Zugriffstoken als auch ID-Token, die von Microsoft Entra ID ausgestellt wurden, und überprüft ihre Signaturen anhand der öffentlichen Schlüssel der Microsoft Entra-ID, überprüft Ablaufzeiten und stellt sicher, dass die Token für Ihre Anwendung vorgesehen sind. Nach der Überprüfung können Sie Benutzeransprüche, Rollen und Bereiche extrahieren, um fundierte Autorisierungsentscheidungen innerhalb Ihrer Anwendungslogik zu treffen.

Tokenerwerb / Autorisierungsheadererstellung

  • On-Behalf-Of OAuth 2.0-Ablauf – Übertragung des Benutzerkontextes an nachgeschaltete APIs
  • Clientanmeldeinformationen – Anwendungs-zu-Anwendung-Authentifizierung
  • Verwaltete Identität – native Azure-Dienstauthentifizierung
  • Agent-Identität – Autonome oder delegierte Agentmuster

Nachgeschaltete API-Aufrufe

  • Automatisches Erfassen und Anhängen von Tokens
  • Optionale Anforderungsmodifikationen (Berechtigungsumfänge, Methode, Kopfzeilen)
  • Signierte HTTP-Anforderungen (PoP/SHR)-Unterstützung

Szenarien und Lernprogramme

Die folgenden Anleitungen sind umfassende schrittweise Lernprogramme mit praktischen Codebeispielen, die zeigen, wie Sie das Microsoft Entra SDK für AgentID in Ihre Anwendungen integrieren. Jedes Szenario bietet vollständige Anforderungs-/Antwortbeispiele, Codeausschnitte und Implementierungsmuster, die auf unterschiedliche Programmiersprachen und Frameworks zugeschnitten sind.

Scenario Description
Autorisierungsheader überprüfen Extraktion von Ansprüchen aus Bearer-Token für die Zugriffssteuerung und benutzerdefinierte Autorisierungs-Middleware
Autorisierungsheader abrufen Token abrufen, um Downstream-APIs sicher aufzurufen
Nachgeschaltete API aufrufen Ausführen von HTTP-Aufrufen an geschützte APIs mit automatischem Token-Anhang für mehrsprachige Microservices
Verwaltete Identität verwenden Authentifizieren als Azure-Dienst zum Aufrufen von Microsoft Graph oder anderen Azure-Diensten
Implementierung von lang laufenden OBO-Flows Behandeln des Benutzerkontexts über erweiterte Vorgänge mit Tokenaktualisierung und Im-Namen-von-Delegierung
Verwenden signierter HTTP-Anforderungen Implementierung von Besitznachweissicherheit mit PoP-Token
Autonome Batchverarbeitung des Agents Verarbeiten von Batchaufträgen mit autonomer Agentidentität
Integration aus TypeScript Verwenden des Microsoft Entra SDK für AgentID aus Node.js/Express/NestJS-Anwendungen
Integration aus Python Verwenden des Microsoft Entra SDK für AgentID aus Flask/FastAPI/Django-Anwendungen

Architekturmuster

Ein typischer Fluss, in dem Ihr Client eine Web-API aufruft, delegiert die API Identitätsvorgänge an das Microsoft Entra SDK für AgentID über HTTP-Endpunkte. Das SDK überprüft eingehende Token mithilfe des /Validate Endpunkts, erwirbt Token mithilfe /AuthorizationHeader und /AuthorizationHeaderUnauthenticatedkann direkt nachgeschaltete APIs mithilfe /DownstreamApi und /DownstreamApiUnauthenticatedaufrufen.

Es interagiert mit Microsoft Entra ID für die Tokenausstellung und das Abrufen von Open ID Connect-Metadaten, wobei die Architektur im folgenden Codeausschnitt veranschaulicht wird:

%%{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

Unterstützung und Ressourcen

Die folgenden Ressourcen bieten umfassende Anleitungen und Hilfe bei der Problembehandlung und Antworten auf häufig gestellte Fragen.

Resource Description
Agentidentitäten Informationen zu autonomen und delegierten Agentenmuster für fortgeschrittene Szenarien
API-Referenz Vollständige Endpunktdokumentation mit Anforderungs-/Antwortformaten, Abfrageparametern und Fehlercodes
Fehlerbehebung Häufige Probleme und schrittweise Lösungen für Bereitstellungs- und Laufzeitprobleme
Häufig gestellte Fragen Häufig gestellte Fragen zu Konfigurations-, Sicherheits- und Integrationsthemen

Weitere Hilfe:

Weitere Ressourcen