Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Metode otentikasi klien
Metode otentikasi klien mengontrol bagaimana klien OAuth mengautentikasi dengan titik akhir token server otorisasi saat meminta token akses.
Untuk penyedia kredensia 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 yang lebih halus — seperti otentikasi dengan pernyataan IAM-signed JWT alih-alih rahasia klien, atau menargetkan server otorisasi yang persyaratannya berbeda dari vendor bawaan — gunakan penyedia khusus, 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.
-
CLIENT_SECRET_BASIC(default) — Klien yang telah menerima nilai rahasia klien dari server otorisasi melakukan otentikasi 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. -
CLIENT_SECRET_POST— Klien yang telah menerima nilai rahasia klien dari server otorisasi melakukan otentikasi dengan server otorisasi sesuai dengan Bagian 2.3.1 dari OAuth 2.0 (RFC 6749) dengan memasukkan kredentif klien dalam badan permintaan. Baik ID klien dan rahasia klien diperlukan. -
AWS_IAM_ID_TOKEN_JWT— Mengautentikasi 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 aliran akses yang didelegasikan pengguna (User-delegated akses (pemberian kode otorisasi OAuth 2.0)). Untuk digunakanAWS_IAM_ID_TOKEN_JWTsebagai metode otentikasi klien, berikut adalah prasyaratnya:-
Federasi identitas web keluar harus diaktifkan di akun Anda. Aktifkan dengan iam: EnableOutboundWebIdentityFederation.
-
Identitas AWS IAM yang memanggil harus memiliki izin untuk memanggil sts: GetWebIdentityToken.
-
-
PRIVATE_KEY_JWTMengautentikasi ke titik akhir token server otorisasi dengan mengirimkan pernyataan klien JWT berumur pendek. AgentCore Identity membangun dan menandatangani pernyataan dengan kunci asimetris AWS KMS yang dikelola pelanggan melaluikms:Sign, per RFC 7523, Bagian 2.2. Kunci pribadi tidak pernah meninggalkan KMS. Server otorisasi memvalidasi pernyataan terhadap kunci publik yang Anda daftarkan. Ketika Anda memilih metode ini, tidak ada rahasia klien yang diperlukan. ID klien diperlukan untuk semua alur. Untuk digunakanPRIVATE_KEY_JWTsebagai metode otentikasi klien, penuhi prasyarat berikut:-
Kunci penandatanganan asimetris di AWS KMS dengan penggunaan kunci
SIGN_VERIFY, dengan kebijakan kunci yang sesuai dan spesifikasi kunci yang kompatibel dengan algoritma penandatanganan pilihan Anda (lihat Private Key JWT untuk tabel spesifikasi algoritme-ke-kunci). -
Per AgentCore an eksekusi Identitas (atau identitas panggilan) harus memiliki
kms:DescribeKeydankms:Signizin pada kunci KMS. -
Server otorisasi penyedia identitas harus mendukung otentikasi klien JWT Kunci Pribadi, dan kunci publik yang sesuai harus didaftarkan dengan server otorisasi mereka.
-
Cara mengkonfigurasi metode otentikasi klien
Mengkonfigurasi metode otentikasi klien untuk CustomOauth 2
Untuk mengonfigurasi metode otentikasi klien untuk penyedia kustom di AWS Konsol, lihat Menambahkan klien OAuth menggunakan penyedia khusus. 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_J WT 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" } } }'
Contoh CLI: Menggunakan PRIVATE_KEY_ JWT sebagai metode otentikasi klien
aws bedrock-agentcore-control create-oauth2-credential-provider \ --cli-input-json '{ "name": "sample-private-key-jwt", "credentialProviderVendor": "CustomOauth2", "oauth2ProviderConfigInput": { "customOauth2ProviderConfig": { "oauthDiscovery": { "discoveryUrl": "https://your-idp.example.com/.well-known/openid-configuration" }, "clientId": "your-client-id", "clientAuthenticationMethod": "PRIVATE_KEY_JWT", "privateKeyJwtConfig": { "privateKeySource": { "kmsKeySource": { "kmsKeyArn": "arn:aws:kms:us-east-1:111122223333:key/your-key-id" } }, "signingAlgorithm": "RS256" } } } }'
Untuk informasi selengkapnya tentang referensi konfigurasi lengkap, termasuk pengaturan kunci KMS, dukungan lintas akun, dan opsi algoritma penandatanganan, lihat Private Key JWT.
Pemberitahuan
Bid tokenEndpointAuthMethods ang ini tidak disarankan untuk mendukung metode otentikasi klien tetapi dipertahankan untuk kompatibilitas mundur di CLI dan SDK. Menyediakan keduanya dalam permintaan yang sama akan menghasilkan kesalahan validasi.