View a markdown version of this page

Memahami kebijakan Cedar - Batu Dasar Amazon AgentCore

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

Memahami kebijakan Cedar

Kebijakan dalam AgentCore menggunakan kebijakan Cedar untuk mengontrol akses ke alat AgentCore Gateway. Bagian ini menjelaskan struktur kebijakan Cedar, semantik evaluasi, dan konsep kunci.

catatan

Session-aware aturan menggunakan kebijakan temporal, yang ditulis dalam Dogwood (kompatibel dengan Cedar) dan menggunakan temporal blok. Struktur dan semantik Cedar yang dijelaskan di sini masih berlaku. Untuk informasi selengkapnya, lihat Kebijakan temporal.

Contoh kebijakan

Pertimbangkan alat pemrosesan pengembalian dana dengan persyaratan berikut:

  • Hanya pengguna “John” yang dapat memproses pengembalian uang

  • Pengembalian dana dibatasi hingga $500 atau kurang

Kebijakan Cedar yang memberlakukan persyaratan ini:

permit( principal is AgentCore::OAuthUser, action == AgentCore::Action::"RefundTool___process_refund", resource == AgentCore::Gateway::"arn:aws:bedrock-agentcore:your-region:your-account-id:gateway/refund-gateway" ) when { principal.hasTag("username") && principal.getTag("username") == "John" && context.input.amount < 500 };

Kebijakan ini mengizinkan pemrosesan pengembalian dana hanya jika pengguna adalah “John” dan jumlah pengembalian dana kurang dari $500.

Struktur kebijakan

Kebijakan Cedar terdiri dari tiga komponen utama:

  1. Efek - Menentukan apakah akan mengizinkan atau menolak akses (permitatauforbid)

  2. Lingkup - Menentukan prinsip, tindakan, dan sumber daya yang diterapkan kebijakan

  3. Kondisi - Mendefinisikan logika tambahan yang harus dipenuhi (whenatauunless) dan dapat merujuk ke parameter alat (melalui konteks) dan token OAuth (melalui tag)

Efek kebijakan

Kebijakan Cedar menggunakan dua efek untuk mengontrol akses:

  • permit- Memungkinkan tindakan untuk melanjutkan

  • forbid- Menolak tindakan

Blokir secara default

Semua tindakan ditolak secara default. Jika tidak ada kebijakan yang cocok dengan permintaan, Cedar mengembalikan DENY. Anda harus secara eksplisit menulis kebijakan izin untuk mengizinkan tindakan.

Evaluasi otorisasi

Cedar menggunakan model evaluasi izin terlarang-overrides-:

  1. Cedar mengevaluasi semua kebijakan yang berlaku untuk permintaan

  2. Jika ada kebijakan larangan yang cocok, hasilnya adalah DENY

  3. Jika setidaknya satu kebijakan izin cocok dan tidak ada kebijakan larangan yang cocok, hasilnya adalah IZINKAN

  4. Jika tidak ada kebijakan yang cocok, hasilnya adalah DENY (default tolak)

Independensi kebijakan

Setiap kebijakan Cedar mengevaluasi secara independen. Evaluasi kebijakan hanya bergantung pada:

  • Ruang lingkup (prinsip, tindakan, sumber daya)

  • Konteks dan tag

Kebijakan tidak mengacu atau bergantung pada kebijakan lain.

Algoritma evaluasi kebijakan

Ketika permintaan dievaluasi, mesin kebijakan menentukan keputusan otorisasi menggunakan algoritma berikut:

  1. Jika ada forbid kebijakan yang cocok dengan permintaan, keputusannya adalah MENOLAK.

  2. Jika tidak ada forbid kebijakan yang cocok dengan permintaan dan setidaknya satu permit kebijakan cocok, keputusannya adalah ALLOW.

  3. Jika tidak ada forbid permit kebijakan yang cocok dengan permintaan, keputusannya adalah DITOLAK.

Model evaluasi ini memberlakukan postur pen olakan default.

Sebuah forbid kebijakan tidak pernah bisa menghasilkan keputusan ALLOW. unlessKlausul pada forbid kebijakan menentukan kondisi di mana forbid kebijakan tersebut tidak berlaku; itu tidak memberikan izin dan tidak mengesampingkan permit kebijakan pencocokan.