Skip to content

OPA Config

opa-config bukan service aplikasi, melainkan image yang menjalankan OPA (Open Policy Agent) server itu sendiri beserta policy Rego yang menjadi mesin keputusan otorisasi RAGA. Setiap kali OPA Auth bertanya "apakah request ini diizinkan?", jawabannya dihitung oleh policy yang dijalankan di sini.

opa-config adalah satu dari tiga komponen subsistem OPA di RAGA:

KomponenPeran
OPA ConfigMenjalankan OPA server & menyimpan policy Rego (mesin keputusan)
OPA DataMenyinkronkan data role & grant dari User Service ke OPA
OPA AuthMenjadi gate di depan Traefik — memanggil OPA untuk setiap request

Tech Stack

LayerTeknologi
Base ImageAlpine 3.20
Policy EngineOPA binary (v1.5.1)
Bahasa PolicyRego
Secret ManagementInfisical CLI (infisical run --watch)

Detail struktur policy, alur keputusan, dan environment variable lengkap ada di halaman Teknis.

Alur Singkat

  1. OPA Data menulis data role/grant terbaru ke file data.json di volume bersama.
  2. OPA server (dijalankan dari image ini) memuat data.json dan policy.rego sebagai basis keputusan.
  3. OPA Auth memanggil POST /v1/data/verify_access untuk setiap request masuk; OPA mengevaluasi policy Rego terhadap data.json dan mengembalikan keputusan allow/deny beserta detail role & grant user.

Ringkasan

opa-config adalah "otak" dari subsistem OPA — bukan yang menerima traffic dari Traefik (itu tugas opa-auth) atau yang mengisi data (itu tugas opa-data), melainkan yang benar-benar memutuskan izin berdasarkan aturan Rego dan data terbaru yang sudah disinkronkan.