Roles & Permissions: Akses Dinamis dan Scope

Roles & Permissions: Akses Dinamis dan Scope

Roles & Permissions menggabungkan grant dari seluruh role aktif pengguna. Menu ini dibatasi untuk Site Owner; permission pada route tetap diperiksa server-side.

Roles dan Permissions

System role

Author, Editor, dan Administrator disediakan Core. Slug, rank dasar, dan grant Core system role direkonsiliasi schema/migrasi agar kebijakan dasar tetap konsisten. Gunakan custom role untuk variasi tugas, bukan mengandalkan modifikasi grant system role yang dapat diselaraskan kembali.

Permission dan scope

Permission key menyatakan tindakan. supports_scope menyatakan apakah tindakan memerlukan konteks owner. Scope Own membatasi resource sendiri; Same or Lower membandingkan authority rank owner; Any mencakup semua resource; Global untuk tindakan tanpa owner. Rank tidak memberi akses tanpa permission.

Custom role

  1. Buat slug stabil dan rank minimum.
  2. Aktifkan hanya permission yang dibutuhkan.
  3. Pilih scope terkecil untuk permission berscope.
  4. Tetapkan role ke user, lalu uji dengan akun tersebut.

Permission yang belum dimigrasikan penuh dapat tampil tidak tersedia untuk custom role. Grant nonaktif dipertahankan agar tidak hilang diam-diam. Permission plugin juga dapat nondelegable sehingga hanya system role default yang boleh menerimanya.

Perubahan role dan permission memicu audit/hook setelah transaksi. Core melakukan recheck pada mutasi sensitif untuk mengurangi race ketika akses berubah bersamaan.