View a markdown version of this page

Metode otentikasi klien - Batuan Dasar Amazon AgentCore

Metode otentikasi klien

Metode otentikasi klien mengontrol bagaimana klien OAuth mengautentikasi dengan titik akhir token server otorisasi saat meminta token akses.

Untuk penyedia kredensi khusus penyedia, AgentCore Identity mengelola metode otentikasi klien untuk Anda berdasarkan persyaratan masing-masing vendor, sehingga tidak diperlukan konfigurasi tambahan.

Untuk kasus penggunaan yang memerlukan kontrol berbutir halus - seperti mengautentikasi dengan pernyataan IAM-signed JWT alih-alih rahasia klien, atau menargetkan server otorisasi yang persyaratannya berbeda dari vendor bawaan - gunakan penyedia kustom, yang memungkinkan Anda memilih dari metode yang didukung di bawah ini.

Metode otentikasi klien yang didukung

AgentCore Identitas mendukung nilai-nilai berikut untuk metode otentikasi klien.

  1. CLIENT_SECRET_BASIC(default) — Klien yang telah menerima nilai rahasia klien dari server otorisasi mengautentikasi dengan server otorisasi sesuai dengan Bagian 2.3.1 dari OAuth 2.0 (RFC 6749) menggunakan skema otentikasi HTTP Basic. Baik ID klien dan rahasia klien diperlukan.

  2. CLIENT_SECRET_POST— Klien yang telah menerima nilai rahasia klien dari server otorisasi mengautentikasi dengan server otorisasi sesuai dengan Bagian 2.3.1 dari OAuth 2.0 (RFC 6749) dengan memasukkan kredensi klien dalam badan permintaan. Baik ID klien dan rahasia klien diperlukan.

  3. AWS_IAM_ID_TOKEN_JWT— Mengotentikasi ke titik akhir token server otorisasi dengan mengirimkan pernyataan AWS IAM-signed JWT untuk peran eksekusi agen (diperoleh melalui sts: GetWebIdentityToken) sebagai pernyataan klien, per RFC 7523, Bagian 2.2. Server otorisasi harus mendukung mekanisme ini dan mempercayai AWS IAM sebagai penerbit. Ketika metode ini dipilih, rahasia klien tidak diperlukan, dan ID klien hanya diperlukan untuk alur akses yang didelegasikan pengguna (User-delegated akses (pemberian kode otorisasi OAuth 2.0)). Untuk digunakan AWS_IAM_ID_TOKEN_JWT sebagai metode otentikasi klien, berikut adalah prasyarat:

    1. Federasi identitas web keluar harus diaktifkan di akun Anda. Aktifkan dengan iam: EnableOutboundWebIdentityFederation.

    2. Identitas AWS IAM pemanggil harus memiliki izin untuk memanggil sts: GetWebIdentityToken.

Cara mengkonfigurasi metode otentikasi klien

Mengkonfigurasi metode otentikasi klien untuk 2 CustomOauth

Untuk mengonfigurasi metode otentikasi klien untuk penyedia kustom di AWS Konsol, lihat Menambahkan klien OAuth menggunakan penyedia kustom. Anda juga dapat mengkonfigurasinya menggunakan CLI.

Contoh CLI: menggunakan CLIENT_SECRET_BASIC sebagai metode otentikasi klien

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" } } }'

Contoh CLI: menggunakan AWS_IAM_ID_TOKEN_JWT sebagai metode otentikasi klien

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" } } }'

Pemberitahuan

tokenEndpointAuthMethodsBidang ini tidak direkomendasikan untuk mendukung metode otentikasi klien tetapi dipertahankan untuk kompatibilitas mundur di CLI dan SDK. Menyediakan keduanya dalam permintaan yang sama akan menghasilkan kesalahan validasi.