nayzuko.com || animation n web tutorial

Kontrol Akses Joomla dengan Noix

Email Print PDF

noix logoIni adalah salah satu komponen terbaik Joomla 1.5. Access Control List (ACL) telah menjadi isu penting karena kemampuannya membagi-bagi akses kepada user. Sayangnya, Joomla 1.5 tidak menyertakan ACL sebagai komponen built-in. Sebagian besar ACL untuk Joomla 1.5 merupakan komponen komersial. Ada beberapa ACl sederhana yang gratis, seperti Inline ACL, tapi fungsinya tidak lengkap. Joomla 1.6 kini punya fitur ACL. Namun jika Anda menginginkan ACL dan belum berencana pindah ke 1.6, Noix ACL solusinya.

Komponen yang bagus ini tidak mencapai popularitas yang layak didapatkannya karena dokumentasi yang tidak cukup bagus. Bahkan sampai saat ini pun, untuk membaca dokumentasinya di http://www.blueflyingfish.com/noixacl/, pengunjung harus register terlebih dulu yang mungkin saja membuat banyak user enggan dan meninggalkan website-nya. Jika Anda termasuk pencari ACL yang mumpuni dan sulit mendapatkan dokumentasinya atau termasuk user yang enggan mendaftar di http://www.blueflyingfish.com, bacalah tutorial ini.

1. Install Komponen Noix ACL
Anda dapat menginstall file-file Noix ACL dari http://forge.joomla.org/.
Pilih:

  • noixacl2.0.6
  • adapterAccess1.5.5
  • AdapterContent1.5.5
  • AdapterModulesv1.0
  • AdapterSection1.0.8-fixed
  • menuAdapter1.5.1
  • mod_mainmenu_noix


komponen Noix
Atau jika ingin mendapatkannya satu paket, download di sini.

Install noixacl2.0.6 dengan installer Joomla seperti menginstall komponen lainnya. Jika install berhasil, komponen akan tercantum dalam menu "components" dengan nama "Access Control".


Cek "plugin manager", filter dengan "noix" dan akan muncul dua plugin:

  • System - noixACL
  • noixACL - User Plugin 2.0.10

Enable jika plugin-nya belum enabled.


plugin


System - noixACL dalam paket komponen 2.0.6 adalah plg_system_2.0.10.
Plugin ini belum punya kemampuan memberi akses kepada Super Administrator untuk mengelola menu dan artikel. Jadi, jika Anda masih memakai sistem 2.0.10, Anda harus memberikan akses semua menu dan artikel (yang punya level  registered dan special) kepada Super Administrator. Jika tidak, ketika akan mengedit artikel atau menu, akan muncul pesan "You don't have permission to access".

Cara singkat mengatasi problem di atas adalah dengan mendisable plugin sistem tersebut sebelum Super Administrator mengelola menu atau artikel. Cara ini lumayan melelahkan karena harus dilakukan setiap kali masuk backend (kecuali jika Anda sudah memberi akses ke semua menu dan artikel untuk Super Admin).

Sekarang tidak perlu serepot itu lagi. Download plg_system_2.0.11 di link di atas, atau jika Anda sudah mendownload link kedua, paketnya sudah berisi versi 2.0.11. Plugin ini memberikan akses menu dan konten kepada Super Admin. Sebelum menginstall 2.0.11, uninstall dulu plugin 2.0.10 melalui menu "Install/Uninstall" lalu pilih tab "plugin" dan unsintall 2.0.10. Install versi 2.0.11 dengan installer Joomla seperti biasa.

2. Install Adapter
Anda memerlukan adapter untuk bagian yang perlu dikelola aksesnya. Masuk ke menu "Components" lalu pilih "Access Control/Adapters". Lalu browse adapter yang akan diinstall. Direkomendasikan untuk menginstall adapter Access, Content, Module dan Menu. Lalu buat semuanya enabled.

adapter list
Sekarang Anda sudah siap mengatur akses kepada user.

3. Mengatur Akses
Keberadaan adapter Akses agak rancu karena sebetulnya semua adapter berfungsi mengatur akses. Yang diatur oleh adapter Akses adalah akses komponen.

Untuk memulai pengaturan akses, sebaiknya Anda membuat diagram hirarki dan hak akses. Apa saja grup yang ada, siapa anggotanya, apa saja aksesnya terhadap menu, module, komponen, dan konten.
Contoh:

User Group Komponen Module Menu Konten
Backend
Manager1
Manager2
Manager Banner
Poll, Contact
All Ads Menu,
Customer Menu
Ads Category
Community
Frontend
User1 User2
Elite Member All All All All
User3 User4 User5 Special User All exclude Jcomments, JoomGallery All exclude Messaging, Tutorial All exclude Download Menu All exclude Gallery category

Selanjutnya, masuk ke "Access Control" dan pilih "Manage Group". Buat grup Manager1, dan Manager2 dengan parent group: Manager. Sementara user1...5 berada di parent group: Registered. Anda tidak perlu mengatur level (Manage Levels) karena level yang ada sudah cukup (dan rumit).

Ketika membuat group, Anda langsung memberikan aksesnya. Pada adapter Akses akan ada 3 tab: Administrator, Site, dan General (default). Blok komponen yang tidak diberi hak akses.

adapter akses
Untuk adapter menu juga demikian. Ada 2 tab: Backend dan Frontend. Beri akses sesuai rencana semula. Blok komponen yang tidak boleh dibuka user group Manager, baik untuk akses backend atau frontend. Sementara untuk user frontend, akses di backend tidak perlu diatur.




adapter menu

adapter kontenUntuk konten, ada 2 tab: Backend dan frontend.
Pilih section yang akan diatur untuk memunculkan kategorinya. Akses pada konten melalui backend bisa diatur meski level akses kategorinya "public". Sementara untuk konten frontend hanya kategori dengan akses level "registered" dan "special" yang bisa diatur.

akses general Untuk module, hanya ada tab frontend untuk mengatur module dengan level "registered" atau "special". Meski begitu, akses backend bisa diatur melalui adapter Akses pada tab "General". Secara default, hak akses masing-masing group (Super Admin, Admin, Manager...Author, Registered) sudah diatur Noixacl. Anda hanya perlu melihat akses tambahan yang memungkinkan di tab "general" pada adapter Akses. Namun, user pada group registered tidak akan bisa mendapat akses ke backend. Meski bisa dikasih akses backend, user group registered tetap tidak akan bisa login ke backend.

Terakhir, masuk ke "User Manager", dan ubah group (atau usertype di tab "Manage User" di komponen Noix) sesuai group user.

Hei, tunggu dulu, untuk apa mod_mainmenu_noix? Ini module man menu khusus untuk Noix ACL. Akses main menu (dan submenu) bisa dikontrol dengan adapter Menu namun ada beberapa template yang bermasalah jika module mainmenu diganggu. Jadi, mod_mainmenu_noix akan menghilangkan risiko Anda membuat masalah dengan meng-copy mainmenu untuk menu khusus grup. Module ini memudahkan pembuatan menu khusus user dan bisa digandakan serta diletakkan di posisi yang diinginkan. Install modulenya, kemudian buat menu khusus untuk grup, lalu di parameter mod_mainmenu_noix sesuaikan dengan menu khusus yang diinginkan.

Tutorial ini mungkin tidak mengungkapkan semua kemampuan Noix. Silakan mencobanya sendiri. Jika Anda mendapatkan error "The page isn't redirecting properly", kemungkinannya Anda sedang mengubah akses terhadap user yang sedang online.

***