Pengantar Kebijakan
Kontrol transaksi dengan aturan kustom menggunakan policy engine berbasis Rego dari 256 Blocks
Policy engine 256 Blocks menggunakan bahasa Rego untuk menentukan aturan kontrol transaksi yang fleksibel dan kuat. Kebijakan memungkinkan Anda memberlakukan batas pengeluaran, membatasi akses berdasarkan geografi, memblokir operasi tertentu, dan mengimplementasikan logika bisnis kustom.
Apa itu Policy Engine?
Policy engine mengevaluasi setiap permintaan transaksi terhadap aturan yang Anda tentukan sebelum eksekusi. Evaluasi kebijakan sepenuhnya stateless untuk kinerja sambil memberi Anda kontrol yang sangat detail atas transaksi apa yang diizinkan melalui endpoint Anda.
Manfaat utama:
- Aturan deklaratif: Tentukan apa yang harus diblokir, bukan bagaimana memblokirnya
- Evaluasi real-time: Kebijakan dievaluasi pada setiap permintaan dengan latensi sub-milidetik
- Kondisi fleksibel: Gabungkan beberapa faktor seperti nilai transaksi, negara asal, waktu, dan lainnya
Cara Kerja Kebijakan
Kebijakan mengontrol dua keputusan independen untuk setiap permintaan:
| Aturan | Kontrol | Default |
|---|---|---|
deny | Apakah permintaan RPC/MCP diizinkan atau diblokir | false (izinkan) |
denyGasSponsor | Apakah 256 Blocks mensponsori biaya gas | false (sponsor) |
Default ini ditentukan oleh sistem dan tidak dapat diganti.
Akses Permintaan (deny)
Gunakan aturan deny untuk memblokir permintaan RPC atau MCP sepenuhnya. Jika ada aturan deny yang cocok, permintaan ditolak.
# Blokir transaksi di atas $10,000 USD
deny if {
input.usd_value > 10000
}Gas Sponsorship (denyGasSponsor)
Gunakan aturan denyGasSponsor untuk mengontrol kapan 256 Blocks membayar biaya gas. Jika ada aturan denyGasSponsor yang cocok, pengguna harus membayar gas mereka sendiri.
# Jangan sponsori transaksi di atas $100
denyGasSponsor if {
input.usd_value > 100
}Kedua aturan dievaluasi secara independen - permintaan dapat diizinkan tetapi tidak disponsori, atau sebaliknya.
Tingkat Kebijakan
Kebijakan dievaluasi pada tiga tingkat, dari yang paling luas hingga paling spesifik:
Kebijakan Tingkat Platform
Kebijakan platform dikelola oleh 256 Blocks dan berlaku untuk semua permintaan di seluruh platform. Ini memberlakukan persyaratan keamanan dan kepatuhan dasar yang tidak dapat diganti. Lihat Pembatasan untuk detail tentang kontrol tingkat platform.
Kebijakan Tingkat Organisasi
Kebijakan organisasi berlaku untuk semua endpoint dalam organisasi Anda, terlepas dari apakah mereka adalah endpoint MCP atau RPC. Gunakan kebijakan tingkat organisasi untuk:
- Aturan kepatuhan global (mis., negara yang diblokir)
- Batas pengeluaran di seluruh organisasi
- Kontrol keamanan universal
Kebijakan Tingkat Endpoint
Kebijakan endpoint hanya berlaku untuk endpoint tertentu. Karena setiap endpoint adalah MCP atau RPC (bukan keduanya), kebijakan secara otomatis berlaku untuk jenis endpoint tersebut. Gunakan kebijakan tingkat endpoint untuk:
- Batas khusus aplikasi
- Logika bisnis kustom untuk integrasi tertentu
- Pembatasan tambahan di luar default organisasi
Urutan Evaluasi
Ketika permintaan tiba:
- Kebijakan platform dievaluasi terlebih dahulu (dikelola oleh 256 Blocks)
- Jika ditolak di tingkat platform, permintaan ditolak
- Kebijakan organisasi dievaluasi kedua
- Jika ditolak di tingkat organisasi, permintaan ditolak
- Kebijakan endpoint dievaluasi terakhir
- Jika ditolak di tingkat endpoint, permintaan ditolak
- Jika tidak ada aturan deny yang cocok, permintaan dilanjutkan
Setiap tingkat bertindak sebagai baseline yang tidak dapat diganti oleh tingkat yang lebih rendah. Jika kebijakan tingkat lebih tinggi menolak permintaan, tidak ada kebijakan tingkat lebih rendah yang dapat mengizinkannya.
Langkah Selanjutnya
- Input Fields - Pelajari tentang semua data yang tersedia untuk keputusan kebijakan
- Referensi Bahasa - Kuasai sintaks dan operator Rego
- Built-in Functions - Jelajahi fungsi yang tersedia
- Pembatasan - Pahami batasan keamanan dan praktik terbaik