Lewati ke konten utama

👥 User Roles & Permissions

Ringkasan

MetaQAP menggunakan Role-Based Access Control (RBAC) untuk mengatur akses pengguna terhadap data dan fungsi sistem. Setiap pengguna memiliki satu role utama yang menentukan:

  • Data apa yang bisa diakses (scope Satker)
  • Operasi apa yang bisa dilakukan (CRUD permissions)
  • Dashboard mana yang bisa digunakan (MAIN, SP2D, SPJ, MASTER_PAGU)
RBAC Workflow Diagram

Hierarki Role (Priority-Based)

Role dikelompokkan berdasarkan tingkat akses dan scope Satker:

Priority 1: Global Access (Cross-Satker)

RoleScopePermissionUse Case
ADMIN_PUSATSemua SatkerRead-Only + ExportMonitoring nasional, dashboard eksekutif
PERENCANAAN_PUSATSemua SatkerRead + Master Pagu ManagementPerencanaan anggaran nasional
AUDITORSemua SatkerRead-Only + Audit TrailPemeriksaan internal/eksternal (BPK, Inspektorat)

Priority 2: Approval Roles (Satker-Scoped, Read-Only)

RoleScopePermissionUse Case
KPASatker sendiriRead-OnlyApproval via Power Automate (Kuasa Pengguna Anggaran)
PPKSatker sendiriRead-OnlyApproval via Power Automate (Pejabat Pembuat Komitmen)
PPSPMSatker sendiriRead-OnlyApproval via Power Automate (Pejabat Penandatangan SPM)
BENDAHARASatker sendiriRead-OnlyMonitoring pembayaran

Priority 3: Operational Roles (Satker-Scoped, Full CRUD)

RoleScopePermissionUse Case
OPERATORSatker sendiriFull CRUD (Create, Read, Update, Delete)Input & maintenance SP2D, SPJ, matching
PERENCANAAN_SATKERSatker sendiriMaster Pagu Full CRUD, SP2D/SPJ Read-OnlyPerencanaan anggaran Satker

Priority 4: User Management (Future)

RoleScopePermissionUse Case
ADMIN_USERSemua SatkerRead-Only + User Management PanelManajemen user & role assignment

Permission Matrix (Detail)

A. Global Roles (Lintas Satker)

1. ADMIN_PUSAT

Scope: Semua Satker (dropdown wajib pilih Satker untuk melihat data)

DashboardReadCreateUpdateDeleteExportMatchAudit
MAIN
SP2DN/A
SPJ
MASTER_PAGUN/A

Use Case:

  • Monitoring dashboard eksekutif (Power BI/MetaQAP AI)
  • Export data agregat nasional untuk pelaporan
  • Tidak bisa input/edit data (read-only monitoring)

2. PERENCANAAN_PUSAT

Scope: Semua Satker (akses khusus Master Pagu Hub Site)

DashboardReadCreateUpdateDeleteExportMatchAudit
MAIN
SP2DN/A
SPJ
MASTER_PAGUN/A

Special Permissions:

  • Master Pagu Template: Buat/edit template anggaran nasional
  • Master Pagu Planning: Persetujuan rencana anggaran Satker
  • Cross-Site Sync: Sinkronisasi Master Pagu ke semua Satker

Catatan: Role ini fokus pada perencanaan, tidak bisa input SP2D/SPJ operasional.


3. AUDITOR

Scope: Semua Satker (akses audit trail lengkap)

DashboardReadCreateUpdateDeleteExportMatchAudit
MAIN
SP2DN/A
SPJ
MASTER_PAGUN/A

Special Permissions:

  • Audit Trail Access: Lihat log perubahan data (who, when, what)
  • Export Audit Report: Download laporan audit lengkap
  • Cross-Satker Audit: Bisa audit data lintas Satker

Use Case: BPK, Inspektorat, SPI (Satuan Pengawasan Internal)


B. Satker-Scoped Roles (Terkunci pada Satker Sendiri)

4. OPERATOR

Scope: Satker sendiri (dropdown Satker disabled, auto-fill Satker user)

DashboardReadCreateUpdateDeleteExportMatchAudit
MAIN
SP2DN/A
SPJ
MASTER_PAGUN/A

Special Permissions:

  • Full CRUD SP2D/SPJ: Buat, edit, hapus dokumen SP2D & SPJ (Updated 2025-09-30)
  • Upload Attachment: Upload file PDF/JPG kuitansi, faktur, dokumen dukung
  • Match SP2D-SPJ: Hubungkan SP2D dengan SPJ yang sesuai
  • Export Data: Download rekapitulasi data Satker sendiri

Catatan: Role ini adalah satu-satunya yang bisa input/edit data operasional SP2D & SPJ.


5. PPK (Pejabat Pembuat Komitmen)

Scope: Satker sendiri

DashboardReadCreateUpdateDeleteExportMatchAudit
MAIN
SP2DN/A
SPJ
MASTER_PAGUN/A

Approval Workflow:

  • Read-Only di MetaQAP: Tidak bisa input/edit data di aplikasi
  • Approval via Teams: Terima notifikasi approval di Microsoft Teams
  • Level 1 Approval: Verifikasi substansi kegiatan sebelum PPSPM

Use Case: Verifikasi kesesuaian SPJ dengan dokumen kontrak/kuitansi.


6. PPSPM (Pejabat Penandatangan SPM)

Scope: Satker sendiri

DashboardReadCreateUpdateDeleteExportMatchAudit
MAIN
SP2DN/A
SPJ
MASTER_PAGUN/A

Approval Workflow:

  • Read-Only di MetaQAP: Tidak bisa input/edit data di aplikasi
  • Approval via Teams: Terima notifikasi approval di Microsoft Teams
  • Level 2 Approval: Verifikasi administrasi setelah PPK approve

Use Case: Verifikasi kelengkapan dokumen & kesesuaian dengan regulasi.


7. PERENCANAAN_SATKER

Scope: Satker sendiri

DashboardReadCreateUpdateDeleteExportMatchAudit
MAIN
SP2DN/A
SPJ
MASTER_PAGUN/A

Special Permissions:

  • Master Pagu Full CRUD: Input, edit, hapus Master Pagu Satker sendiri
  • Master Pagu Template: Gunakan template dari Perencanaan Pusat
  • SP2D/SPJ Read-Only: Monitoring realisasi vs. pagu

Use Case: Input rencana anggaran (POK/DIPA) Satker ke Master Pagu.


Scope & Filtering Rules

A. Global Role Behavior

Role: ADMIN_PUSAT, PERENCANAAN_PUSAT, AUDITOR

Dashboard Behavior:

  1. Dropdown Satker AKTIF: User wajib memilih Satker untuk melihat data
  2. No Auto-Select: Sistem tidak otomatis pilih Satker (default: empty)
  3. Data Kosong Sampai Pilih Satker: Dashboard menampilkan "No data" hingga Satker dipilih
  4. Cross-Satker Export: Bisa export data agregat lintas Satker (jika ADMIN_PUSAT/PERENCANAAN_PUSAT)

Example Workflow:

[User Login] → [Dashboard Load] → [Satker Dropdown: "Pilih Satker"] 
→ [User Pilih: "690861 - Sekretariat Utama"]
→ [Data Load: SP2D/SPJ Satker 690861]

B. Satker-Scoped Role Behavior

Role: OPERATOR, PPK, PPSPM, BENDAHARA, PERENCANAAN_SATKER

Dashboard Behavior:

  1. Dropdown Satker DISABLED: User tidak bisa ganti Satker
  2. Auto-Select Satker: Sistem otomatis isi Satker sesuai data Master_User SharePoint
  3. Data Load Otomatis: Dashboard langsung tampilkan data Satker user saat login
  4. Export Terbatas: Hanya bisa export data Satker sendiri

Example Workflow:

[User Login] → [Dashboard Load] → [Satker Dropdown: "690861 - Sekretariat Utama" (DISABLED)] 
→ [Data Auto-Load: SP2D/SPJ Satker 690861]

C. Special Case: Sekretariat Utama (Satker 690861)

Filter Tambahan: Sub-Sekretariat

Satker 690861 memiliki struktur organisasi khusus dengan Sub-Sekretariat (Biro/Pusat). Untuk role di Satker ini, sistem menampilkan filter tambahan:

Role yang Terdampak:

  • OPERATOR
  • PERENCANAAN_SATKER
  • PPK
  • PPSPM

Behavior:

  1. User Level Sub-Unit:

    • Filter Sub-Sekretariat auto-fill sesuai unit user (misal: "TU Biro Umum dan Keuangan")
    • Data terbatas pada Sub-Sekretariat user saja
  2. User Level Sekretariat (Admin Sekretariat):

    • Filter Sub-Sekretariat dropdown aktif (bisa pilih Sub-Sekretariat mana saja)
    • Data bisa dilihat lintas Sub-Sekretariat dalam Sekretariat Utama

Example Workflow (User Sub-Unit):

[User Login: Operator TU Biro Umum] 
→ [Satker: "690861 - Sekretariat Utama" (DISABLED)]
→ [Sub-Sekretariat: "TU Biro Umum dan Keuangan" (DISABLED)]
→ [Data: SP2D/SPJ Sub-Sekretariat TU Biro Umum saja]

Dashboard-Specific Permissions

MAIN Dashboard

  • Fokus: Monitoring & analytics
  • Permission Khusus: canMatch (untuk hubungkan SP2D-SPJ)

SP2D Dashboard

  • Fokus: Document management (SP2D dari Kemenkeu)
  • Permission Khusus: canUpload (upload PDF SP2D), canDownload (download file)

SPJ Dashboard

  • Fokus: Form management (bukti dukung belanja)
  • Permission Khusus: canUpload (upload kuitansi/faktur), canMatch (link ke SP2D)

MASTER_PAGU Dashboard

  • Fokus: Budget planning (perencanaan anggaran)
  • Permission Khusus: canSync (sync Hub Site), canTemplate (manage template), canPlan (perencanaan)

FAQ & Best Practices

Q: Kenapa PPK/PPSPM tidak bisa input data di MetaQAP?

A: PPK/PPSPM adalah approval role, bukan operational role. Mereka hanya verifikasi data yang diinput OPERATOR via Microsoft Teams Approval (out-of-band approval). Ini sesuai prinsip separation of duties untuk mencegah conflict of interest.

Q: Bagaimana cara ganti role user?

A: Role user dikelola oleh ADMIN_USER via SharePoint Master_User list. Hubungi Admin Pusat untuk request perubahan role.

Q: Apakah bisa 1 user punya 2 role?

A: Tidak. Sistem hanya mengakui 1 primary role per user. Jika user di SharePoint punya multiple role, sistem ambil role dengan priority tertinggi (lihat hierarki di atas).

Q: Kenapa dropdown Satker saya disabled?

A: Artinya role Anda adalah Satker-Scoped (OPERATOR, PPK, dll.). Sistem otomatis lock Satker sesuai data Master_User Anda. Jika Satker salah, hubungi Admin untuk update data.