Tentukan jenis otorisasi dan kredensyal untuk mengakses target gateway
Di badan CreateGatewayTargetpermintaan, Anda menentukan konfigurasi penyedia kredensyal dalam credentialProviderConfigurations array. Konfigurasi tergantung pada jenis otorisasi keluar yang Anda atur. Untuk informasi referensi tentang struktur API untuk konfigurasi penyedia kredensyal, lihat CredentialProviderConfiguration. Untuk informasi selengkapnya tentang otorisasi keluar, lihat Mengatur otorisasi keluar untuk gateway Anda.
Untuk mempelajari lebih lanjut tentang konfigurasi penyedia kredensyal, pilih topik:
Topik
AgentCore Otorisasi peran layanan gateway (IAM)
Jika Anda menggunakan otorisasi IAM melalui peran layanan AgentCore Gateway untuk target Anda, tentukan sebagai. credentialProviderType GATEWAY_IAM_ROLE Konfigurasi tergantung pada jenis target Anda.
Untuk target Lambda, API Gateway, Smithy, dan Konektor
iamCredentialProviderKonfigurasi tidak diperlukan karena nama layanan target sudah diketahui oleh layanan AgentCore Gateway. Gunakan hanya credentialProviderType konfigurasi, seperti yang ditunjukkan pada contoh berikut:
{ "credentialProviderType": "GATEWAY_IAM_ROLE" }
Untuk server MCP dan target OpenAPI
Untuk server MCP dan target OpenAPI, Anda juga harus memberikan nama layanan iamCredentialProvider yang digunakan AWS untuk penandatanganan Signature Version 4 (Sig V4). Bidang service wajib diisi. regionBidang ini opsional dan default ke Region gateway.
{ "credentialProviderType": "GATEWAY_IAM_ROLE", "credentialProvider": { "iamCredentialProvider": { "service": "execute-api", "region": "us-west-2" } } }
Tabel berikut menjelaskan bidang dalam iamCredentialProvider objek:
| Bidang | Diperlukan | Deskripsi |
|---|---|---|
|
|
Ya |
Nama AWS layanan yang digunakan untuk penandatanganan SiGv4. Nilai ini harus sesuai dengan nama layanan yang diharapkan target saat memverifikasi tanda tangan SigV4. Berikut ini adalah nilai-nilai umum:
|
|
|
Tidak |
AWS Wilayah untuk penandatanganan SiGv4. Jika dihilangkan, default ke Region gateway. |
Otorisasi OAuth
Jika Anda menggunakan otorisasi OAuth, Anda menentukan sebagai. credentialProviderType OAUTH Di objek yang dipetakan credentialProvider bidang, petakan nama oauthCredentialProvider bidang ke OAuthCredentialProviderobjek dan berikan nilai berdasarkan pengaturan otorisasi keluar Anda.
Struktur OAuthCredentialProviderberbeda tergantung pada jenis pola otentikasi yang Anda atur. Untuk mempelajari lebih lanjut tentang pola otentikasi yang berbeda, lihat Pola autentikasi yang didukung.
-
Jika Anda menyiapkan otentikasi mesin-ke-mesin, juga dikenal sebagai hibah kredensial klien atau OAuth berkaki 2 (2LO), ikuti struktur di tab Kredensyal Klien.
-
Jika Anda mengatur akses yang didelegasikan pengguna, juga dikenal sebagai hibah kode otorisasi atau OAuth berkaki 3 (3LO), ikuti struktur di tab Kode Otorisasi.
-
Jika Anda menyiapkan pertukaran token on-behalf-of untuk menyebarkan identitas pengguna yang diautentikasi ke layanan hilir atau mendapatkan token akses dengan konteks aktor, ikuti struktur di tab Token exchange (). On-behalf-of
Pilih salah satu metode berikut:
contoh
Otorisasi kunci API
Jika Anda menyiapkan otorisasi kunci API, Anda menentukan credentialProviderType sebagaiAPI_KEY. Di objek yang dipetakan credentialProvider bidang, petakan nama apiKeyCredentialProvider bidang ke ApiKeyCredentialProviderobjek dan berikan nilai berdasarkan pengaturan otorisasi keluar Anda. JSON berikut menunjukkan struktur:
{ "credentialProviderType": "API_KEY", "credentialProvider": { "apiKeyCredentialProvider": { "providerArn": "string", "credentialLocation": "HEADER" | "QUERY_PARAMETER", "credentialParameterName": "string", "credentialPrefix": "string" } } }
Otorisasi kredensyal IAM penelepon
Jika Anda ingin gateway menggunakan identitas IAM dan izin pemanggil untuk menandatangani permintaan ke target hilir, tentukan sebagai. credentialProviderType CALLER_IAM_CREDENTIALS Dengan jenis otorisasi ini, gateway membuat permintaan ke target hilir atas nama pemanggil gateway menggunakan SiGv4. Hal ini memungkinkan target hilir untuk menerapkan kebijakan IAM berdasarkan siapa yang awalnya disebut gateway.
catatan
CALLER_IAM_CREDENTIALShanya tersedia untuk gateway yang memiliki AWS_IAM atau AUTHENTICATE_ONLY sebagai jenis otorisasi.
{ "credentialProviderType": "CALLER_IAM_CREDENTIALS" }
Otorisasi passthrough JWT
Jika Anda ingin gateway meneruskan token pembawa dari permintaan yang masuk langsung ke target hilir tanpa modifikasi, tentukan sebagai. credentialProviderType JWT_PASSTHROUGH Gateway memvalidasi token masuk dan kemudian meneruskannya ke target dalam permintaan keluar. Ini berguna ketika layanan target menangani otorisasi sendiri menggunakan token pemanggil asli.
catatan
JWT_PASSTHROUGHhanya tersedia untuk target HTTP (passthrough dan AgentCore Runtime).
{ "credentialProviderType": "JWT_PASSTHROUGH" }