View a markdown version of this page

Praktik terbaik keamanan untuk AgentCore Runtime - Batuan Dasar Amazon AgentCore

Praktik terbaik keamanan untuk AgentCore Runtime

Topik ini menggabungkan praktik terbaik keamanan untuk Amazon Bedrock AgentCore Runtime. Gunakan rekomendasi ini untuk mengamankan penyebaran agen Anda, melindungi data, dan mengikuti prinsip hak istimewa paling sedikit.

Isolasi sesi dan perlindungan data

Amazon Bedrock AgentCore Runtime menyediakan batas isolasi yang kuat melalui microVM khusus. Ikuti praktik ini untuk menjaga perlindungan data:

  • Memahami batas isolasi - Setiap sesi pengguna berjalan dalam microVM khusus dengan CPU, memori, dan sistem file yang terisolasi. Perintah dan kode agen tidak dapat mengakses beban kerja pelanggan lain atau lolos dari batas VM. Setelah sesi selesai, seluruh microVM dihentikan dan memori disanitasi.

  • Menerapkan pemetaan sesi-ke-pengguna di backend Anda — tidak menerapkan pemetaan sesi-ke-pengguna. AgentCore Backend klien Anda harus menjaga hubungan antara pengguna dan ID sesi mereka, dan menerapkan manajemen siklus hidup seperti jumlah sesi maksimum per pengguna.

  • Waspadai perilaku izin sistem file — Saat menggunakan sistem file persisten, izin disimpan tetapi tidak diberlakukan dalam sesi. chmoddan stat berfungsi dengan benar, tetapi pemeriksaan akses selalu berhasil karena agen berjalan sebagai satu-satunya pengguna di microVM.

  • Memahami eksposur kredensyal dalam VM — Kode atau aktor apa pun yang berjalan di dalam microVM dapat mengakses kredensyal peran eksekusi dengan memanggil titik akhir metadata (MMDS). Cakupan izin peran eksekusi Anda dengan hati-hati. Untuk informasi selengkapnya, lihat Manajemen Kredensial.

IAM dan hak istimewa yang paling sedikit

Terapkan prinsip hak istimewa terkecil ke semua kebijakan IAM yang terkait dengan sumber daya AgentCore Runtime Anda:

  • Jangan gunakan CLI-generated kebijakan dalam produksi — Kebijakan IAM yang dibuat oleh AgentCore CLI dirancang untuk tujuan pengembangan dan pengujian. Izin ini memberikan akses luas dan tidak cocok untuk produksi. Buat kebijakan IAM khusus yang membatasi izin hanya untuk sumber daya dan tindakan tertentu yang diperlukan. Untuk referensi selengkapnya, lihat Izin IAM untuk AgentCore Runtime.

  • Izin lingkup untuk ARN runtime tertentu — Hindari pernyataan sumber daya wildcard. Gunakan ARN lengkap sumber daya runtime Anda di bidang kebijakan IAM. Resource

  • Batasi InvokeAgentRuntimeForUser - Hanya kepala sekolah tepercaya yang harus memiliki izin ini. Cakupkan ke sumber daya runtime tertentu menggunakan kondisi sumber daya IAM.

  • Tolak delegasi user-id jika tidak diperlukan — Untuk runtime di mana delegasi user-id tidak diperlukan, tolak tindakan secara eksplisit:

    { "Statement": [ { "Sid": "DenyUserIdDelegation", "Effect": "Deny", "Action": "bedrock-agentcore:InvokeAgentRuntimeForUser", "Resource": "arn:aws:bedrock-agentcore:REGION:ACCOUNT_ID:runtime/*" } ] }
  • Cegah eskalasi hak istimewa — Pastikan peran eksekusi yang terkait dengan runtime Anda memiliki hak istimewa yang sama atau lebih sedikit daripada prinsipal yang dapat memanggilnya. Untuk informasi selengkapnya, lihat Manajemen Kredensial.

  • Gunakan kunci kondisi IAM untuk menerapkan penerapan VPC — Gunakan bedrock-agentcore:subnets dan bedrock-agentcore:securityGroups kondisi kunci untuk mengharuskan semua runtime diterapkan di VPC yang disetujui. Sebagai contoh, lihat Menggunakan kunci kondisi VPC dengan AgentCore Runtime.

  • Gunakan IAM Access Analyzer — Validasi kebijakan IAM Anda untuk memastikan kebijakan tersebut mematuhi praktik terbaik dan prinsip hak istimewa yang paling tidak.

Resource-based kebijakan dan akses lintas akun

Resource-based kebijakan menyediakan kontrol akses berbutir halus langsung pada sumber daya runtime Anda:

  • Memahami otorisasi hierarkis — Untuk operasi API runtime sepertiInvokeAgentRuntime,InvokeAgentRuntimeCommand, danInvokeAgentRuntimeCommandShell, AWS mengevaluasi kebijakan pada runtime agen dan titik akhir agen. Keduanya harus memungkinkan tindakan.

  • Konfigurasikan kedua sumber daya untuk akses lintas akun — Untuk memberikan akses lintas akun, buat kebijakan berbasis sumber daya pada runtime agen dan titik akhir agen. Jika salah satu sumber daya tidak memiliki izin eksplisit, permintaan ditolak.

  • Ingat bahwa penolakan eksplisit selalu menang - Jika ada kebijakan (berbasis identitas atau berbasis sumber daya) secara eksplisit menyangkal suatu tindakan, akses ditolak terlepas dari kebijakan lainnya.

Untuk detail selengkapnya, lihat Resource-based kebijakan untuk Amazon Bedrock AgentCore.

Pencegahan Deputi Bingung

Lindungi peran eksekusi Anda dari masalah deputi yang membingungkan dengan menggunakan kunci konteks kondisi global dalam kebijakan kepercayaan:

  • Gunakan aws:SourceArn dan aws:SourceAccount — Tambahkan kondisi ini ke kebijakan kepercayaan peran eksekusi Anda untuk membatasi AgentCore sumber daya mana yang dapat mengambil peran:

    { "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock-agentcore.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnLike": { "aws:SourceArn": "arn:aws:bedrock-agentcore:us-east-1:123456789012:*" } } } ] }
  • Gunakan ARN lengkap jika memungkinkan — Jika Anda mengetahui sumber daya runtime tertentu, gunakan ARN lengkapnya sebagai pengganti wildcard. aws:SourceArn

Untuk informasi lebih lanjut, lihat pencegahan wakil yang Cross-service bingung.

Depan runtime Anda dengan Gateway AgentCore

Pola yang umum adalah mengedepankan AgentCore Runtime Anda dengan AgentCore Gateway sehingga gateway menjadi titik masuk tunggal yang diatur ke runtime. Menempatkan gateway di depan memungkinkan Anda menerapkan kontrol di luar lingkungan agen itu sendiri:

  • Policy-based otorisasi — Gunakan mesin kebijakan gateway untuk mengontrol penelepon mana yang dapat memanggil target mana dan dalam kondisi apa. Untuk informasi selengkapnya, lihat Menggunakan kebijakan untuk mengontrol akses ke target gateway.

  • Guardrails — Terapkan Amazon Bedrock Guardrails melalui mesin kebijakan untuk menyaring permintaan dan tanggapan. Untuk informasi selengkapnya, lihat Menggunakan pagar pembatas dalam kebijakan.

  • Pencegat permintaan dan respons — Memeriksa atau mengubah lalu lintas dengan fungsi Lambda pencegat yang dikonfigurasi pada gateway.

Kontrol ini hanya melindungi Anda jika semua lalu lintas benar-benar mengalir melalui gateway. Jika penelepon dapat mencapai runtime secara langsung, ia melewati kebijakan gateway, pagar pembatas, dan pencegat sepenuhnya. Untuk mencegah hal ini, batasi runtime untuk menerima pemanggilan hanya ketika mereka berasal dari gateway Anda. Cara Anda melakukan ini tergantung pada jenis otorisasi masuk runtime:

Untuk mengatur ini, Anda membuat gateway, menerapkan runtime Anda, dan kemudian menambahkan runtime sebagai target gateway di gateway itu. Untuk konfigurasi target, otorisasi keluar, dan format URL pemanggilan, lihat Target runtime. AgentCore

Praktik terbaik otentikasi

AgentCore Runtime mendukung otentikasi token pembawa IAM SiGv4 dan JWT. Ikuti praktik ini untuk mengamankan akses:

  • Pilih metode otentikasi yang tepat — Gunakan IAM SiGv4 untuk panggilan layanan-ke-layanan di dalamnya. AWS Gunakan otentikasi token pembawa JWT saat pengguna akhir mengautentikasi langsung melalui penyedia identitas. Runtime dapat mendukung satu metode pada satu waktu; membuat versi terpisah untuk jenis otentikasi yang berbeda.

  • Lebih suka identifikasi JWT-based pengguna untuk produksi — Saat agen Anda mengambil token OAuth atas nama pengguna akhir, pilih jalur token pembawa JWT (GetWorkloadAccessTokenForJWT), yang memvalidasi penerbit token, tanda tangan, dan kedaluwarsa. UserId Jalur (GetWorkloadAccessTokenForUserId/X-Amzn-Bedrock-AgentCore-Runtime-User-Idheader) memperlakukan pengenal pengguna sebagai string buram tanpa verifikasi iDP — gunakan hanya untuk pengembangan, skenario mulai cepat, atau arsitektur perusahaan yang menyelesaikan identitas pengguna di hulu. Untuk informasi selengkapnya, lihat Mendapatkan token akses beban kerja.

  • Konfigurasikan otorisasi JWT sepenuhnya — Saat menggunakan otentikasi JWT, konfigurasikan semua bidang validasi yang tersedia: URL penemuan, pemirsa yang diizinkan, klien yang diizinkan, cakupan yang diizinkan, dan klaim khusus yang diperlukan.

  • Jangan pernah hardcode token dalam kode produksi — Gunakan mekanisme pengambilan token yang aman. Token hardcode adalah risiko keamanan dalam kontrol sumber dan artefak yang digunakan.

  • Turunkan user-id dari prinsipal yang diautentikasi — Jika Anda menggunakan X-Amzn-Bedrock-AgentCore-Runtime-User-Id header, nilainya harus diturunkan dari konteks prinsipal yang diautentikasi (identitas pemanggil IAM atau klaim token pengguna), bukan dari nilai yang disediakan klien sewenang-wenang. Ini mencegah pengguna yang diautentikasi meniru pengguna lain.

  • Tolak ForUserId di mana tidak diperlukan - Untuk beban kerja yang selalu memiliki JWT tersedia, bedrock-agentcore:GetWorkloadAccessTokenForUserId tolak secara eksplisit dan dalam kebijakan IAM. bedrock-agentcore:InvokeAgentRuntimeForUser Ini memastikan semua identifikasi pengguna melewati jalur JWT yang diverifikasi secara kriptografi.

  • Konfigurasikan kebijakan titik akhir VPC untuk metode autentikasi Anda — Kebijakan titik akhir VPC hanya dapat membatasi penelepon berdasarkan prinsip IAM, bukan pengguna OAuth. Untuk OAuth-based permintaan, setel Principal ke * dalam kebijakan titik akhir. Untuk SigV4-based otentikasi, tentukan identitas IAM yang diizinkan.

Untuk detail implementasi, lihat Mengautentikasi dan mengotorisasi dengan Auth Masuk dan Auth Keluar.

Manajemen kredensi dan rahasia

Lindungi kredensil yang digunakan oleh agen dan lingkungan runtime Anda:

  • Gunakan AgentCore Identitas untuk otentikasi keluar — AgentCore Identity mengelola kredensyal OAuth dan kunci API dengan aman, mencegah eksposur kredensi dalam kode agen atau log. Gunakan untuk semua akses layanan pihak ketiga (Slack, GitHub, Zoom).

  • Memahami eksposur kredenal MMDS - Layanan Metadata MicroVM (MMDS) menyediakan kredensyal peran eksekusi untuk kode apa pun yang berjalan di VM, mirip dengan IMDS EC2. Cakupan izin peran eksekusi hanya untuk apa yang dibutuhkan agen Anda.

  • Aktifkan MmDSv2 — Mulai 30 Juni 2026, runtime agen Anda harus mengaktifkan MmDSv2. Runtime tanpa MmDSv2 diaktifkan tidak dapat dipanggil dan mengembalikan file. ValidationException Untuk mengaktifkan, panggil UpdateAgentRuntime dengan requireMMDSV2 disetel ke true inmetadataConfiguration. Untuk informasi selengkapnya tentang mengatasi kesalahan ini, lihat Pemecahan masalah MmDSv2 ValidationException .

  • Jalankan kontainer sebagai pengguna non-root — Saat membuat gambar kontainer khusus, konfigurasikan untuk dijalankan sebagai pengguna non-root. Ini membatasi dampak potensi kerentanan eksekusi kode.

  • Pisahkan kredensyal yang didelegasikan pengguna dan otonom — Gunakan autentikasi yang didelegasikan pengguna (Pemberian Kode Otorisasi) saat agen Anda bertindak atas nama pengguna tertentu. Gunakan autentikasi otonom (Client Credentials Grant) ketika agen beroperasi secara independen.

Untuk informasi selengkapnya, lihat Manajemen dan AgentCore Identitas Kredensyal.

Keamanan jaringan

Akses jaringan aman ke dan dari lingkungan AgentCore Runtime Anda:

  • Menyebarkan runtime di VPC untuk akses sumber daya pribadi — Konfigurasikan konektivitas VPC untuk mengakses database pribadi, API internal, dan layanan tanpa memaparkannya ke internet. Untuk detail konfigurasi, lihat Mengonfigurasi AgentCore Runtime untuk VPC.

  • Gunakan AWS PrivateLink untuk akses API — Buat titik akhir VPC antarmuka untuk AgentCore data plane (com.amazonaws.region.bedrock-agentcore) dan control plane (com.amazonaws.region.bedrock-agentcore-control) untuk menghindari traversal internet. Untuk informasi selengkapnya, lihat Menggunakan AWS PrivateLink.

  • Terapkan hak istimewa terkecil ke grup keamanan — Tentukan aturan keluar yang hanya mengizinkan lalu lintas minimum yang diperlukan. Jangan membuka akses keluar yang luas kecuali diperlukan.

  • Konfigurasikan titik akhir VPC yang diperlukan untuk agen kontainer — Untuk agen VPC-mode kontainer, konfigurasikan titik akhir VPC untuk ECR (com.amazonaws.region.ecr.dkr,com.amazonaws.region.ecr.api), S3 (titik akhir com.amazonaws.region.s3 gateway), dan Log (). CloudWatch com.amazonaws.region.logs Titik akhir gateway S3 menghilangkan biaya pemrosesan data gateway NAT untuk tarikan lapisan gambar ECR.

  • Cakupan kebijakan titik akhir gateway S3 untuk agen kontainer — Batasi kebijakan titik akhir gateway S3 hanya pada bucket yang digunakan Amazon ECR untuk penyimpanan lapisan gambar:

    { "Statement": [ { "Sid": "AllowECRLayerAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Allow", "Resource": ["arn:aws:s3:::prod-region-starport-layer-bucket/*"] } ] }

    Ganti region dengan pengenal AWS Wilayah Anda (misalnya,us-east-2).

  • Cakupan kebijakan titik akhir gateway S3 untuk agen penyebaran kode langsung — Untuk penerapan berbasis zip, batasi kebijakan ke bucket artefak kode milik layanan internal. Tambahkan aws:PrincipalServiceName kondisi untuk memastikan hanya kepala AgentCore layanan yang dapat mengakses bucket melalui kebijakan endpoint ini:

    { "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::acr-code-*-region-an", "arn:aws:s3:::acr-code-*-region-an/*" ], "Condition": { "StringEquals": { "aws:PrincipalServiceName": "bedrock-agentcore.amazonaws.com" } } } ] }

    Ganti region dengan pengenal AWS Wilayah Anda (misalnya,us-west-2). Bucket artefak AgentCore kode dibuat di bucket tujuan umum ruang nama regional Akun. Hanya AWS dapat memiliki nama bucket aktual yang digunakan oleh layanan. aws:PrincipalServiceNameKondisi ini memastikan bahwa hanya prinsipal AgentCore layanan yang dapat mengakses bucket melalui kebijakan endpoint ini. Jika Anda juga menggunakan sistem file persisten, tambahkan bucket penyimpanan sesi ke kebijakan ini. Untuk informasi selengkapnya, lihat Mengkonfigurasi AgentCore Runtime untuk VPC.

  • Gunakan subnet pribadi dengan gateway NAT — Subnet publik tidak menyediakan akses internet untuk Runtime. AgentCore Selalu tempatkan ENI runtime di subnet pribadi dengan rute ke gateway NAT untuk akses internet keluar.

  • Keamanan transportasi — Semua koneksi menggunakan TLS 1.2 atau lebih tinggi. WebSocket koneksi, termasukInvokeAgentRuntimeCommandShell, menggunakan WSS (WebSocket Aman) melalui HTTPS secara eksklusif. ws://Koneksi teks biasa tidak didukung.

  • Menerapkan batas header - Header khusus dibatasi hingga 4KB per nilai dan 20 header per runtime. AuthorizationHeader dicadangkan untuk agen dengan akses masuk OAuth.

Enkripsi

AgentCore Runtime melindungi data dengan enkripsi saat istirahat dan dalam perjalanan:

  • Enkripsi dalam perjalanan — Semua komunikasi antara klien dan AgentCore Runtime, dan antara AgentCore Runtime dan dependensinya, dilindungi menggunakan TLS 1.2 atau lebih tinggi. Ini dikonfigurasi secara default dan tidak memerlukan pengaturan tambahan.

  • Enkripsi saat istirahat — Data saat istirahat dienkripsi menggunakan kunci enkripsi yang AWS dimiliki dari AWS Key Management Service (AWS KMS) secara default.

  • Gunakan TLS 1.3 jika memungkinkan — Meskipun TLS 1.2 adalah minimum, AWS merekomendasikan TLS 1.3 untuk meningkatkan keamanan dan kinerja.

Untuk informasi selengkapnya tentang enkripsi saat istirahat, lihat.

Audit dan pemantauan

Menerapkan audit komprehensif untuk mendeteksi dan menyelidiki peristiwa keamanan:

  • Aktifkan CloudTrail logging — AWS CloudTrail merekam panggilan API termasuk InvokeAgentRuntimeInvokeAgentRuntimeCommand,InvokeAgentRuntimeCommandShell,, dan operasi pesawat kontrol. Setiap catatan mencakup identitas pemanggil, stempel waktu, alamat IP sumber, dan status respons.

  • Gunakan CloudWatch Log untuk audit perintah — AgentCore Runtime mengirimkan ID permintaan dan perintah input ke grup CloudWatch log Log agen Anda. Gunakan log ini untuk mempertahankan jejak audit perintah yang dijalankan dalam sesi Anda.

  • Korelasikan log menggunakan ID permintaan — Gunakan ID permintaan untuk mengkorelasikan CloudTrail catatan (yang memanggil API) dengan CloudWatch Log (perintah apa yang dijalankan).

  • Siapkan filter dan alarm metrik — Konfigurasikan filter metrik CloudWatch Log untuk mendeteksi pola perintah yang tidak terduga atau upaya akses yang tidak sah. Buat alarm untuk memberi tahu tim Anda tentang anomali.

  • Log hubungan delegasi user-id — Saat menggunakan X-Amzn-Bedrock-AgentCore-Runtime-User-Id header, catat hubungan antara prinsipal IAM yang diautentikasi dan nilai user-id untuk tujuan audit.

  • Aktifkan Log Aliran VPC — Untuk VPC-connected runtime, aktifkan VPC Flow Logs untuk mengaudit lalu lintas tingkat jaringan dan mengidentifikasi pola komunikasi yang tidak terduga.

  • Tinjau CloudTrail log secara teratur - Tinjau log secara berkala untuk upaya akses yang tidak sah, terutama untuk beban kerja yang sensitif.

Model tanggung jawab bersama

Memahami pembagian tanggung jawab keamanan antara AWS dan Anda:

AWS tanggung jawab:
  • Infrastruktur aman dan isolasi microVM di tingkat perangkat keras

  • Penambalan kernel OS untuk semua mode penerapan

  • Penambalan runtime bahasa untuk penerapan kode langsung

  • Keamanan infrastruktur jaringan

  • Ketersediaan dan ketahanan layanan

Tanggung jawab Anda:
  • Keamanan kode agen dan manajemen ketergantungan

  • Kontrol akses IAM dan kebijakan sumber daya

  • Keamanan perintah yang dijalankan dalam sesi runtime

  • Session-to-user pemetaan penegakan

  • Pembaruan gambar kontainer (untuk penerapan kontainer) - bangun kembali dengan gambar dasar aman terbaru secara teratur

  • Validasi input dan pencegahan injeksi yang cepat — termasuk memvalidasi InvokeHarness input saat menggunakan harness terkelola (lihat Harness membagikan batas kepercayaan Runtime) AgentCore

  • Konfigurasi jaringan (grup keamanan, titik akhir VPC, tabel rute)

penting

Untuk penerapan kode langsung, AgentCore Runtime menerapkan patch keamanan ke OS runtime secara otomatis. AgentCore Runtime tidak menerapkan patch keamanan untuk runtime bahasa pemrograman setelah mereka mencapai akhir tanggal dukungan mereka. Runtime yang tidak digunakan lagi disediakan apa adanya dan mungkin berisi kerentanan yang belum ditambal. Untuk runtime yang didukung, lihat Runtime yang didukung untuk penerapan kode.

catatan

Patch keamanan dapat mengekspos masalah dengan kode yang ada yang bergantung pada perilaku tidak aman sebelumnya. Jika risiko ini tidak dapat diterima, gunakan gambar kontainer untuk menyebarkan agen Anda.

Harness berbagi batas kepercayaan AgentCore Runtime

Harness terkelola dibangun di atas AgentCore Runtime. Itu tidak menambahkan lapisan keamanan antara penelepon dan microVM. Batas keamanan sama dengan AgentCore Runtime: IAM atau otentikasi JWT yang dikombinasikan dengan isolasi microVM.

Untuk model keamanan harness lengkap, termasuk detail batas kepercayaan, risiko parameter konfigurasi model, dan panduan validasi input, lihat Model tanggung jawab bersama memanfaatkan.

Keamanan eksekusi perintah

AgentCore Runtime menyediakan dua API eksekusi perintah:

  • InvokeAgentRuntimeCommand— One-shot, eksekusi perintah non-interaktif berakhir HTTP/2. Tindakan IAM:bedrock-agentcore:InvokeAgentRuntimeCommand.

  • InvokeAgentRuntimeCommandShell— WebSocket Sesi shell interaktif dengan akses PTY persisten. Tindakan IAM:bedrock-agentcore:InvokeAgentRuntimeCommandShell.

Kedua API beroperasi dalam batas isolasi microVM yang sama dan berbagi model keamanan yang sama. Terapkan praktik ini untuk keduanya:

  • Memahami batas keamanan — Perintah memiliki akses penuh ke sistem file kontainer dan kredensyal atau rahasia yang dikonfigurasi dalam microVM. Batas isolasi adalah microVM itu sendiri. Di bawah model tanggung jawab bersama, Anda bertanggung jawab atas keamanan kode apa pun yang dieksekusi di wadah runtime Anda.

  • Gunakan operasi deterministik untuk tugas deterministik — Gunakan InvokeAgentRuntimeCommand atau InvokeAgentRuntimeCommandShell untuk operasi seperti tes, git, dan build. Jangan merutekan operasi deterministik melalui LLM melalui. InvokeAgentRuntime

  • Batasi siapa yang dapat menjalankan perintah — Gunakan kebijakan IAM untuk membatasi prinsipal mana yang dapat memanggil atau. InvokeAgentRuntimeCommand InvokeAgentRuntimeCommandShell Tidak semua pengguna yang dapat memanggil agen harus dapat menjalankan perintah arbitrer. Contoh sumber daya ARN:. arn:aws:bedrock-agentcore:us-west-2:123456789012:runtime/my-agent

  • WebSocket shell menggunakan wss://onlyInvokeAgentRuntimeCommandShell koneksi dibuat secara eksklusif melalui WSS (WebSocket Secure). ws://Koneksi teks biasa tidak didukung. Penelepon mengautentikasi melalui SiGv4 saat peningkatan. WebSocket

  • Menjaga lalu lintas dalam jaringan Anda — Konfigurasikan titik akhir VPC untuk menghindari traversal internet untuk panggilan API eksekusi perintah.

  • Tetapkan batas waktu yang sesuai - Konfigurasikan batas waktu perintah berdasarkan durasi eksekusi yang diharapkan untuk mencegah pemborosan sumber daya dari proses runaway.

Untuk detail selengkapnya, lihat Mengeksekusi perintah dalam sesi runtime.

Server platform VM

Setiap MicroVM AgentCore Runtime menyertakan server platform yang berjalan di localhost. Server ini mengelola siklus hidup sesi VM, operasi penyimpanan, dan menyediakan akses shell untuk mendukung operasi runtime. Server platform berjalan sepenuhnya dalam microVM agen, yang merupakan batas isolasi - tidak berisi kode infrastruktur penting layanan dan tidak memiliki akses ke sesi lain atau beban kerja pelanggan.

penting

Segala sesuatu yang berjalan dalam microVM, termasuk interaksi dengan server platform, adalah tanggung jawab Anda di bawah model tanggung jawab bersama. Jika kode agen atau alat berinteraksi dengan server platform, dampaknya terbatas pada sesi VM saat ini — tidak dapat memengaruhi sesi lain atau melintasi batas isolasi. Namun, akses yang tidak sah dapat mengganggu siklus hidup VM sesi atau menyediakan akses shell dalam sesi tersebut.

Ikuti praktik ini untuk membatasi akses yang tidak perlu ke server platform:

  • Batasi akses localhost dalam kode agen - Konfigurasikan agen Anda dan alat jaringan apa pun untuk mencegah akses tak terbatas ke localhost. Kode agen tidak boleh membuat panggilan HTTP arbitrer ke localhost kecuali diperlukan untuk integrasi tertentu.

  • Allowlist hanya port yang diperlukan untuk pengaturan sespan - Jika arsitektur Anda menggunakan pola container-in-container atau sidecar di localhost, izinkan secara eksplisit hanya daftar port tertentu yang digunakan layanan sidecar Anda. Jangan membuka akses localhost yang luas.

  • Alat jaringan audit untuk jangkauan localhost — Tinjau alat apa pun yang Anda berikan kepada agen Anda (seperti alat permintaan HTTP atau utilitas jaringan umum) untuk memastikan mereka tidak dapat membuat permintaan yang tidak diinginkan ke titik akhir localhost. Terapkan pemfilteran URL atau daftar yang diizinkan di tingkat alat.