View a markdown version of this page

Mengurangi CAPTCHA dengan Web Bot Auth - Batu Dasar Amazon AgentCore

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengurangi CAPTCHA dengan Web Bot Auth

catatan

Amazon Bedrock AgentCore Browser Web Bot Auth (Pratinjau) didasarkan pada draf protokol Auth Web Bot IETF, yang dapat berubah seiring dengan perkembangan spesifikasi menuju finalisasi.

+ Impl ementasi Saat Ini:

+ * Detail implementasi, parameter API, dan mekanisme penandatanganan dapat berubah saat kami menyelaraskan dengan spesifikasi protokol yang diselesaikan * Dukungan dan kebijakan penyedia WAF bervariasi. Tidak semua situs web akan mengenali atau mengizinkan lalu lintas agen yang ditandatangan* Pemilik domain mempertahankan kontrol penuh atas kebijakan bot mereka dan dapat memblokir, memantau, atau membatasi lalu lintas agen terlepas dari tanda tangan kriptografi

+ Untuk spesifikasi protokol terbaru, lihat draf IETF.

Amazon Bedrock AgentCore Browser mengurangi tantangan CAPTCHA melalui Web Bot Auth, rancangan protokol IETF yang secara kriptografis mengidentifikasi agen AI ke situs web dan vendor kontrol bot.

Gambaran umum

Agen AI sering menghadapi mekanisme anti-bot saat menjelajahi situs web, termasuk tantangan CAPTCHA, pembatasan tarif, dan pemblokiran permintaan. Langkah-langkah keamanan ini dirancang untuk mencegah lalu lintas otomatis berbahaya tetapi sering memblokir agen AI yang sah juga.

Situs web menerapkan pertahanan ini karena mereka tidak dapat secara andal membedakan antara agen yang sah dan bot jahat. Metode identifikasi tradisional seperti alamat IP atau User-Agent string dapat dengan mudah dipalsukan dan tidak memberikan identitas yang dapat diverifikasi.

Web Bot Auth mengatasi tantangan ini dengan menerapkan IETF HTTP Message Signatures untuk protokol rancangan Arsitektur lalu lintas otomatis. Protokol ini memungkinkan agen AI untuk secara kriptografis menandatangani permintaan HTTP mereka, menyediakan situs web dengan bukti identitas agen yang dapat diverifikasi.

Saat Web Bot Auth diaktifkan, Amazon Bedrock AgentCore Browser secara otomatis menandatangani setiap permintaan HTTP dengan kunci pribadi dan menyertakan header verifikasi. Vendor kontrol bot (seperti Cloudflare, Akamai Technologies, dan HUMAN Security) dapat memverifikasi tanda tangan ini terhadap direktori kunci publik dan menerapkan kebijakan yang sesuai yang dikonfigurasi oleh pemilik situs web.

Pendekatan ini menyediakan metode standar untuk otomatisasi yang sah untuk mengidentifikasi dirinya sendiri sambil mempertahankan kontrol pemilik situs web atas kebijakan akses.

Cara kerjanya

Web Bot Auth menggunakan standar IETF HTTP Message Signatures untuk menandatangani permintaan HTTP secara kriptografis:

  1. Pendaftaran Agen: Amazon Bed AgentCore rock mendaftar dengan vendor kontrol bot (Cloudflare, reCAPTCHA, dll.) Dan menyediakan kunci publik untuk verifikasi

  2. Penandatanganan Permintaan: Saat diaktifkan, Browser Tool secara otomatis menandatangani setiap permintaan HTTP menggunakan kunci pribadi

  3. Header Tanda Tangan: Tiga header ditambahkan ke setiap permintaan:

    • Signature: Tanda tangan kriptografi

    • Signature-Agent: Menunjuk ke direktori kunci publik untuk verifikasi

    • Signature-Input: Menentukan komponen mana yang ditandatangani

  4. Veri fikasi: Sistem kontrol bot situs web mengambil kunci publik dan memverifikasi tanda tangan untuk mengonfirmasi permintaan berasal dari Amazon Bedrock AgentCore

  5. Aplikasi Kebijakan: Berdasarkan identitas yang diverifikasi, situs web dapat menerapkan kebijakan yang sesuai. Pemilik domain dapat mengonfigurasi sistem kontrol bot mereka untuk:

    • Blokir semua lalu lintas: Tolak semua permintaan otomatis terlepas dari otentikasi

    • Izinkan hanya bot yang ditandatangani: Terima permintaan hanya dari agen terverifikasi dengan tanda tangan Web Bot Auth yang valid

    • Izinkan bot yang ditandatangani dari direktori tertentu: Izinkan agen yang diautentikasi untuk mengakses hanya jalur atau sumber daya tertentu di situs web

Mengaktifkan Auth Web Bot

Untuk mengaktifkan Web Bot Auth, Anda perlu mengonfigurasinya saat membuat Alat Browser:

contoh
AWS CLI
  1. Untuk membuat Browser Tool dengan Web Bot Auth diaktifkan menggunakan AWS CLI:

    aws bedrock-agentcore-control create-browser \ --region <Region> \ --name "my-browser-with-auth" \ --description "Browser with Web Bot Auth enabled" \ --network-configuration '{"networkMode": "PUBLIC"}' \ --execution-role-arn "arn:aws:iam::<account-id>:role/<execution-role>" \ --browser-signing '{"enabled": true}'
Boto3
  1. Untuk membuat Alat Browser dengan Web Bot Auth diaktifkan menggunakan Boto3:

    import boto3 client = boto3.client('bedrock-agentcore-control', region_name='us-west-2') response = client.create_browser( name='my-browser-with-auth', description='Browser with Web Bot Auth enabled', networkConfiguration={ 'networkMode': 'PUBLIC' }, executionRoleArn='arn:aws:iam::<account-id>:role/<execution-role>', browserSigning={ 'enabled': True } )
Console
  1. ====== Untuk mengaktifkan Web Bot Auth di konsol

  2. Buka AgentCore konsol di https://console.aws.amazon.com/bedrock-agentcore/home #.

  3. Di panel navigasi, pilih Built-in alat.

  4. Pilih Buat alat browser.

  5. Berikan nama Alat unik dan Deskripsi opsional.

  6. Di bawah Pengaturan jaringan, pilih Jaringan publik.

  7. Di bagian konfigurasi Web Bot Auth, pilih kotak centang Gunakan Web Bot Auth.

  8. Di bawah Iz in, tentukan peran eksekusi IAM yang menentukan AWS sumber daya apa yang dapat diakses oleh Browser Tool.

  9. Konfigurasikan pengaturan browser lain sesuai kebutuhan dan pilih Buat.

penting

Web Bot Auth memerlukan peran eksekusi dengan kebijakan kepercayaan, tetapi tidak memerlukan kebijakan terkelola atau sebaris. Fitur ini dinonaktifkan secara default dan harus diaktifkan secara eksplisit selama pembuatan browser. Anda harus menambahkan kebijakan kepercayaan berikut ke peran eksekusi: [source, json, subs="verbatim, properties "] ---- {“Version” :"2012-10-17", “Pernyataan”: [{“Sid”: "“, “Efek”: “Izinkan”, “Principal”: {“Layanan”: BedrockAgentCoreBuiltInTools “bedrock-agentcore.amazonaws.com”}, “Action”: “sts: “, “Kondisi”: {"“: {“aws: “: “111122223333"}," StringEquals “: {“aws: “: AssumeRole “arn:aws:bedrock-agentcore:us-timur- 1:111122223333: *”}}}]} ---- SourceAccount ArnLike SourceArn

Vendor Kontrol Bot yang Didukung

Amazon Bedrock AgentCore saat ini mendukung Web Bot Auth dengan vendor kontrol bot berikut:

  • Cloudflare

  • Keamanan MANUSIA

  • Teknologi Akamai

  • DataDome

  • F5

Vendor kontrol bot tambahan akan didukung saat kemitraan didirikan. Otentikasi bekerja secara transparan - setelah diaktifkan, agen Anda dapat menelusuri situs web yang dilindungi oleh layanan ini dengan mengurangi gesekan.

Pertimbangan-pertimbangan

  • Operasi Transparan: Web Bot Auth bekerja secara otomatis setelah diaktifkan. Tidak ada perubahan kode tambahan yang diperlukan dalam aplikasi agen Anda.

  • Dampak Kin erja: Permintaan penandatanganan menambahkan latensi minimal ke permintaan HTTP.

  • Cakupan Vendor: Fitur ini hanya berfungsi dengan situs web yang menggunakan vendor kontrol bot yang didukung. Situs web yang menggunakan solusi anti-bot lainnya mungkin masih menghadirkan tantangan.

  • Tergantung Kebijakan: Bahkan dengan otentikasi, pemilik situs web mengontrol kebijakan bot mereka. Beberapa situs mungkin masih membatasi atau memantau lalu lintas agen berdasarkan persyaratan spesifik mereka.