Skip to content

perbaikan pengecekan permission#1575

Merged
affandii06 merged 3 commits into
rilis-devfrom
fix/permission_dokumen
Jun 17, 2026
Merged

perbaikan pengecekan permission#1575
affandii06 merged 3 commits into
rilis-devfrom
fix/permission_dokumen

Conversation

@pandigresik

@pandigresik pandigresik commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

Fix Permission Dokumen - Tidak Konsisten dengan Seeder

Branch: fix/permission_dokumenrilis-dev
Issue: #1574
Commit: 0e667b32 - perbaikan pengecekan permission


Deskripsi Singkat

Tombol "Tambah" dan tombol aksi (edit, delete, download) pada halaman Form Dokumen tidak tampil untuk user yang memiliki hak akses. Akar masalahnya adalah mismatch antara string permission yang digunakan di code aplikasi (form-dokumen dengan strip) dengan yang didefinisikan di database seeder (form_dokumen dengan underscore).


Perubahan yang Dilakukan

File Perubahan
app/Http/Controllers/Informasi/FormDokumenController.php Mengubah permission string dari form-dokumenform_dokumen pada pengecekan edit, delete, dan export
resources/views/informasi/form_dokumen/index.blade.php Mengubah permission string dari form-dokumenform_dokumen pada pengecekan create (tombol tambah)

Total: 2 file, 4 baris berubah


Alasan Perubahan

Di database/seeders/RoleSpatieSeeder.php baris 55, permission didefinisikan dengan underscore:

'access.informasi.form_dokumen' => ['view', 'create', 'edit', 'delete'],

Namun di controller dan view, permission diperiksa dengan hyphen/dash:

// Sebelum (salah)
auth()->user()->can('access.informasi.form-dokumen.create')

// Sesudah (benar)
auth()->user()->can('access.informasi.form_dokumen.create')

Karena can() melakukan pencocokan string secara eksak, form-dokumen tidak akan pernah match dengan form_dokumen, sehingga semua permission check selalu mengembalikan false → tombol tidak tampil.


Dampak Perubahan

  • Tombol "Tambah" akan muncul untuk user dengan permission access.informasi.form_dokumen.create
  • Tombol Edit/Delete di setiap baris data akan muncul untuk user dengan permission yang sesuai
  • Tidak ada dampak keamanan - ini adalah perbaikan agar permission check bekerja sesuai yang didefinisikan

Langkah untuk Mereproduce (Before Fix)

  1. Login sebagai user dengan role yang memiliki permission access.informasi.form_dokumen.create
  2. Buka menu Informasi → Form Dokumen
  3. Tombol "Tambah" tidak tampil di halaman daftar dokumen
  4. User tidak dapat menambah/edit/menghapus dokumen meskipun seharusnya memiliki hak akses

Testing Checklist

  • Login dengan user yang memiliki permission access.informasi.form_dokumen.create
    • Tombol "Tambah" tampil di halaman Form Dokumen
    • Klik tombol "Tambah" → halaman form buat dokumen terbuka
  • Login dengan user yang memiliki permission access.informasi.form_dokumen.edit
    • Tombol Edit tampil di baris data dokumen
    • Klik tombol Edit → halaman form edit dokumen terbuka
  • Login dengan user yang memiliki permission access.informasi.form_dokumen.delete
    • Tombol Delete tampil di baris data dokumen
    • Klik tombol Delete → konfirmasi hapus muncul
  • Login dengan user yang tidak memiliki permission terkait form dokumen
    • Tombol Tambah/Edit/Delete/Download tidak tampil
  • Verifikasi tidak ada error di log aplikasi

Related Issue

#1574 - Tombol tambah tidak tampil dikarenakan salah hak akses

Screenshots

image

@pandigresik pandigresik requested a review from affandii06 June 8, 2026 09:44
@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown

🔄 AI PR Review sedang antri di server...

Proses review akan segera dimulai di background — hasil akan muncul sebagai komentar setelah selesai.
Powered by CrewAI · PR #1575

@affandii06 affandii06 merged commit d73421e into rilis-dev Jun 17, 2026
@affandii06 affandii06 deleted the fix/permission_dokumen branch June 17, 2026 08:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants