Okta
Okta dapat dikonfigurasi sebagai penyedia identitas untuk mengakses AgentCore Gateway dan Runtime, atau penyedia kredensi AgentCore Identitas untuk akses sumber daya keluar. Ini memungkinkan agen Anda untuk mengautentikasi dan mengotorisasi pengguna agen dengan Okta sebagai penyedia identitas dan server otorisasi, atau agen Anda untuk mendapatkan kredensil untuk mengakses sumber daya yang diotorisasi oleh Okta.
Ke dalam
Untuk menambahkan Okta sebagai penyedia identitas dan server otorisasi untuk mengakses AgentCore Gateway dan Runtime, Anda harus:
-
Konfigurasikan URL penemuan dari penyewa Okta Anda. Ini membantu AgentCore Identity mendapatkan metadata yang terkait dengan server otorisasi OAuth dan kunci verifikasi token Anda.
-
Masukkan
audklaim yang valid untuk token. Ini membantu memvalidasi token yang berasal dari IDP Anda dan memungkinkan akses untuk token yang berisi klaim yang diharapkan.
Untuk mengonfigurasi Okta untuk otentikasi masuk
-
Buka konsol pengembang Okta.
-
Di bilah navigasi kiri, pilih Aplikasi.
-
Pilih Buat Integrasi Aplikasi.
-
Pilih OIDC - OpenID Connect sebagai metode login untuk aplikasi Anda.
-
Pilih Aplikasi Web sebagai jenis aplikasi Anda.
-
Berikan nama untuk aplikasi Anda.
-
Pilih Kode Otorisasi Kredenal and/or Klien tergantung pada kebutuhan Anda.
-
Untuk URI Sign-in pengalihan, tambahkan titik akhir aplikasi Anda yang akan menerima token Okta.
-
Sesuaikan bagian Tugas seperlunya tergantung pada kebutuhan Anda.
-
Pilih Simpan.
-
Buat API Okta untuk mewakili aplikasi Anda:
-
Di bilah navigasi kiri, pilih Keamanan.
-
Buka API dan pilih Add Authorization Server.
-
Ikuti alur untuk membuat server otorisasi yang didedikasikan untuk penyewa Okta Anda.
-
Setelah server otorisasi dibuat, pilih tab Kebijakan Akses pada halaman ikhtisar untuk mengonfigurasi kebijakan akses yang sesuai.
-
Tentukan cakupan kustom yang diperlukan untuk server otorisasi yang diperlukan untuk aplikasi Anda.
-
-
Buat URL penemuan untuk penyewa Okta Anda:
https://your-tenant.okta.com/oauth2/your-authorization-server -
Konfigurasikan Inbound Auth dengan nilai-nilai berikut:
-
URL Discovery: URL yang dibangun pada langkah sebelumnya
-
Audiens yang Diizinkan: Nilai audiens yang Anda berikan saat membuat API di langkah 11
-
Untuk lebih jelasnya, lihat dokumentasi Okta
Tambahkan klaim client_id ke klaim token akses
Okta secara default tidak termasuk client_id sebagai klaim standar dalam token mereka. Untuk mengisi klaim dalam token, Anda perlu menyesuaikan klaim melalui server otorisasi yang Anda gunakan untuk mengeluarkan token.
Untuk menambahkan klaim client_id ke token akses
-
Di bilah navigasi kiri, pilih Keamanan. Buka API dan pilih server otorisasi yang ingin Anda gunakan untuk aplikasi Anda.
-
Di halaman detail untuk server otorisasi, pilih tab Klaim dan pilih Tambah Klaim.
-
Beri nama klaim baru client_id dan atur nilainya ke App.clientID.
-
Setel Sertakan dalam jenis token ke Access Token.
-
Pilih Simpan.
Untuk lebih jelasnya, lihat dokumentasi Okta
Ke luar
catatan
AgentCore Identitas mengeluarkan URL callback OAuth2 unik untuk setiap penyedia kredensi yang Anda buat. URL panggilan balik unik memungkinkan pengikatan sesi, yang melindungi pertukaran kode otorisasi OAuth2 terhadap pemutaran ulang dan CSRF-style serangan lintas penyedia dengan memastikan respons otorisasi hanya dapat ditukarkan terhadap penyedia kredensi tertentu yang memulainya. Karena URL unik per penyedia, Anda tidak akan mengetahuinya sampai setelah Anda meneleponCreateOauth2CredentialProvider. Buat aplikasi Okta OIDC Anda terlebih dahulu, lalu kembali ke konsol pengembang Okta untuk mendaftarkan URL callback setelah AgentCore Identity mengeluarkannya.
Langkah 1: Buat aplikasi Okta OIDC
Ikuti prosedur di bagian Inbound untuk membuat aplikasi Okta OIDC dan server otorisasi Anda. Saat diminta untuk Sign-in mengarahkan URI di pengaturan aplikasi, biarkan bidang kosong untuk saat ini - Anda akan menambahkan URL panggilan balik unik di Langkah 3.
Langkah 2: Buat penyedia kredensi AgentCore Identitas
Untuk mengonfigurasi Okta sebagai penyedia sumber daya keluar di AgentCore Identity, gunakan yang berikut ini:
{ "name": "Okta", "credentialProviderVendor": "OktaOauth2", "oauth2ProviderConfigInput" : { "includedOauth2ProviderConfig": { "clientId": "your-client-id", "clientSecret": "your-client-secret", "authorizationEndpoint": "https://your-tenant.okta.com/oauth2/your-authorization-server/v1/authorize", "tokenEndpoint": "https://your-tenant.okta.com/oauth2/your-authorization-server/v1/token", "issuer": "https://your-tenant.okta.com/oauth2/your-authorization-server" } } }
Untuk menggunakan pertukaran token on-behalf-of Okta OAuth 2.0
{ "name": "Okta", "credentialProviderVendor": "CustomOauth2", "oauth2ProviderConfigInput": { "customOauth2ProviderConfig": { "clientAuthenticationMethod": "CLIENT_SECRET_BASIC", "clientId": "your-client-id", "clientSecret": "your-client-secret", "oauthDiscovery": { "authorizationServerMetadata": { "authorizationEndpoint": "https://your-tenant.okta.com/oauth2/your-authorization-server/v1/authorize", "tokenEndpoint": "https://your-tenant.okta.com/oauth2/your-authorization-server/v1/token", "issuer": "https://your-tenant.okta.com/oauth2/your-authorization-server" } }, "onBehalfOfTokenExchangeConfig": { "grantType": "TOKEN_EXCHANGE", "tokenExchangeGrantTypeConfig": { "actorTokenContent": "NONE" } } } } }
CreateOauth2CredentialProviderResponsnya mencakup callbackUrl bidang. URL ini unik untuk penyedia kredensi ini dan terlihat seperti:https://bedrock-agentcore.us-east-1.amazonaws.com/identities/oauth2/callback/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX. Simpan nilai ini untuk langkah selanjutnya.
Langkah 3: Daftarkan URL panggilan balik unik dengan Okta
Kembali ke konsol pengembang Okta dan tambahkan URL panggilan balik unik ke URI Sign-in pengalihan aplikasi Anda.
-
Masuk ke konsol pengembang Okta dan buka aplikasi OIDC yang Anda buat di Langkah 1.
-
Buka tab Umum dan edit pengaturan LOGIN.
-
Tambahkan
callbackUrlnilai yang dikembalikan olehCreateOauth2CredentialProvideruntuk Sign-in mengarahkan URI. -
Pilih Simpan.