Methoden zur Client-Authentifizierung
Die Client-Authentifizierungsmethode steuert, wie sich der OAuth-Client beim Anfordern von Zugriffstoken mit dem Token-Endpunkt des Autorisierungsservers authentifiziert.
Bei anbieterspezifischen Anbietern von Anmeldeinformationen verwaltet AgentCore Identity die Client-Authentifizierungsmethode für Sie auf der Grundlage der Anforderungen der einzelnen Anbieter, sodass keine zusätzliche Konfiguration erforderlich ist.
Verwenden Sie für Anwendungsfälle, die eine genauere Steuerung erfordern — z. B. die Authentifizierung mit einer IAM-signed JWT-Assertion anstelle eines geheimen Client-Schlüssels oder die Ausrichtung auf einen Autorisierungsserver, dessen Anforderungen sich von denen eines integrierten Anbieters unterscheiden — den benutzerdefinierten Anbieter, mit dem Sie aus den unten aufgeführten unterstützten Methoden wählen können.
Unterstützte Methoden zur Client-Authentifizierung
AgentCore Identity unterstützt die folgenden Werte für die Client-Authentifizierungsmethode.
-
CLIENT_SECRET_BASIC(Standard) — Clients, die vom Autorisierungsserver einen geheimen Wert für den Client erhalten haben, authentifizieren sich beim Autorisierungsserver gemäß Abschnitt 2.3.1 von OAuth 2.0 (RFC 6749) mithilfe des HTTP Basic-Authentifizierungsschemas. Sowohl die Client-ID als auch der geheime Client-Schlüssel sind erforderlich. -
CLIENT_SECRET_POST— Clients, die vom Autorisierungsserver einen geheimen Wert für den Client erhalten haben, authentifizieren sich beim Autorisierungsserver gemäß Abschnitt 2.3.1 von OAuth 2.0 (RFC 6749), indem sie die Client-Anmeldeinformationen in den Anforderungstext aufnehmen. Sowohl die Client-ID als auch der geheime Client-Schlüssel sind erforderlich. -
AWS_IAM_ID_TOKEN_JWT— Authentifiziert sich beim Token-Endpunkt des Autorisierungsservers, indem eine AWS IAM-signed JWT-Assertion für die Ausführungsrolle des Agenten (abgerufen über sts: GetWebIdentityToken) als Client-Assertion gemäß RFC 7523, Abschnitt 2.2, gesendet wird. Der Autorisierungsserver muss diesen Mechanismus unterstützen und IAM als Aussteller vertrauen. AWS Wenn diese Methode ausgewählt ist, ist kein geheimer Client-Schlüssel erforderlich, und die Client-ID ist nur für den vom Benutzer delegierten Zugriffsfluss (User-delegated Zugriff (OAuth 2.0-Autorisierungscode Grant)) erforderlich. Für die VerwendungAWS_IAM_ID_TOKEN_JWTals Client-Authentifizierungsmethode müssen folgende Voraussetzungen erfüllt sein:
Wie konfiguriert man die Client-Authentifizierungsmethode
Konfiguration der Client-Authentifizierungsmethode für CustomOauth 2
Informationen zur Konfiguration der Client-Authentifizierungsmethode für einen benutzerdefinierten Anbieter in der AWS Konsole finden Sie unter Hinzufügen eines OAuth-Clients mithilfe eines benutzerdefinierten Anbieters. Sie können es auch mit CLI konfigurieren.
CLI-Beispiel: Verwendung von CLIENT_SECRET_BASIC als Client-Authentifizierungsmethode
aws bedrock-agentcore-control create-oauth2-credential-provider \ --cli-input-json '{ "name": "sample-client-basic", "credentialProviderVendor": "CustomOauth2", "oauth2ProviderConfigInput": { "customOauth2ProviderConfig": { "oauthDiscovery": { "discoveryUrl": "https://my.idp.com/.well-known/openid-configuration" }, "clientId": "your-client-id", "clientSecret": "your-client-secret", "clientAuthenticationMethod": "CLIENT_SECRET_BASIC" } } }'
CLI-Beispiel: Verwendung von AWS_IAM_ID_TOKEN_JWT als Client-Authentifizierungsmethode
aws bedrock-agentcore-control create-oauth2-credential-provider \ --cli-input-json '{ "name": "sample-iam-jwt", "credentialProviderVendor": "CustomOauth2", "oauth2ProviderConfigInput": { "customOauth2ProviderConfig": { "oauthDiscovery": { "discoveryUrl": "https://my.idp.com/.well-known/openid-configuration" }, "clientId": "your-client-id", "clientAuthenticationMethod": "AWS_IAM_ID_TOKEN_JWT" } } }'
Notice (Hinweis)
Das tokenEndpointAuthMethodsFeld wird nicht für die Client-Authentifizierungsmethode empfohlen, sondern aus Gründen der Abwärtskompatibilität in CLI und SDK beibehalten. Die Angabe von beiden in derselben Anfrage führt zu einem Validierungsfehler.