Menerapkan manajemen izin pengguna dalam sistem bisnis
Izin dalam sistem B/S lebih penting daripada yang ada di C/S. Karena sistem C/S memiliki klien khusus, deteksi izin pengguna akses dapat diimplementasikan melalui klien atau melalui deteksi klien + server. Di B/S, browser sudah tersedia untuk setiap komputer. Jika deteksi izin lengkap tidak ditetapkan, "pengguna ilegal" cenderung dengan mudah mengakses semua fungsi dalam sistem B/S melalui browser. Oleh karena itu, sistem bisnis B/S perlu memiliki satu atau lebih sistem izin untuk mengimplementasikan deteksi izin akses, sehingga pengguna yang berwenang dapat menggunakan fungsi resmi secara normal dan legal, dan "pengguna ilegal" yang tidak berwenang akan sepenuhnya "menolaknya". Mari kita lihat cara merancang sistem izin yang dapat memenuhi kontrol izin fungsi pengguna di sebagian besar sistem B/S.
Pernyataan Persyaratan
• Personel dengan tanggung jawab yang berbeda harus memiliki izin berbeda untuk operasi sistem. Sistem bisnis yang sangat baik, ini adalah fungsi yang paling mendasar.
• Anda dapat menetapkan izin ke grup. Untuk sistem bisnis perusahaan besar, memakan waktu dan tidak nyaman untuk meminta administrator untuk menetapkan izin operasi sistem kepada karyawan mereka satu per satu. Oleh karena itu, sistem mengusulkan konsep operasi pada "kelompok", dan mengatur orang dengan izin yang konsisten ke dalam kelompok yang sama, dan kemudian mengalokasikan izin kepada kelompok.
• Sistem manajemen izin harus diperluas. Seharusnya dapat bergabung dengan sistem apa pun dengan kemampuan manajemen izin. Sama seperti komponen, mereka dapat terus digunakan kembali, alih -alih membangun kembali bagian manajemen izin untuk setiap sistem manajemen yang dikembangkan.
• Memenuhi izin fungsional dalam sistem bisnis. Dalam sistem bisnis tradisional, ada dua jenis manajemen izin. Salah satunya adalah pengelolaan izin fungsional, dan yang lainnya adalah manajemen izin sumber daya. Antara sistem yang berbeda, izin fungsional dapat digunakan kembali, sementara izin sumber daya tidak bisa.
Tentang desain
Dengan bantuan konsep pemrograman aksi Noahweb, pada tahap desain, perancang sistem tidak perlu mempertimbangkan desain struktur program, tetapi mulailah dengan aliran program dan struktur basis data. Untuk mewujudkan persyaratan, desain database sangat penting. Apakah itu konsep operasi "kelompok" atau penggunaan kembali seluruh rangkaian sistem manajemen izin terletak pada desain database.
Mari kita analisis struktur basis data terlebih dahulu:
Pertama, tabel tindakan ( selanjutnya disebut sebagai "tabel izin" ), tabel Gorupmanager ( selanjutnya disebut sebagai "tabel grup manajemen" ), dan tabel induk ( selanjutnya disebut sebagai "tabel personel" ), adalah tiga tabel entitas yang mencatat informasi "izin", informasi "kelompok manajemen" dan informasi "personel". Seperti yang ditunjukkan pada gambar di bawah ini:
Hubungan antara ketiga tabel ini banyak-ke-banyak. Satu izin dapat menjadi milik beberapa kelompok manajemen pada saat yang sama, dan satu kelompok manajemen juga dapat berisi banyak izin pada saat yang sama. Dengan cara yang sama, seseorang mungkin termasuk dalam beberapa kelompok manajemen pada saat yang sama, dan kelompok manajemen juga dapat memasukkan banyak personel pada saat yang sama. Seperti yang ditunjukkan pada gambar di bawah ini:
Karena ada hubungan banyak-ke-banyak antara ketiga tabel ini, yang terbaik adalah menggunakan dua tabel lainnya untuk menyelesaikan interaksi. Dua tabel ini memainkan peran pemetaan, yaitu tabel "aksi aksi" (selanjutnya disebut sebagai "tabel pemetaan izin") dan tabel "MasterGroup" (selanjutnya disebut sebagai "tabel pemetaan personel") . Yang pertama memetakan interaksi antara tabel izin dan tabel grup manajemen. Yang terakhir memetakan interaksi antara tabel personel dan tabel kelompok manajemen. Seperti yang ditunjukkan pada gambar di bawah ini:
Selain itu, tabel juga diperlukan untuk mengontrol kolom izin di menu kiri sistem berjalan sistem, yaitu, "tabel kolom izin", seperti yang ditunjukkan pada gambar di bawah ini:
Berdasarkan analisis di atas, kami melakukan desain struktur basis data, seperti yang ditunjukkan pada gambar di bawah ini:
Klik di sini untuk melihat Desain Bidang Data Sistem Manajemen Izin
Untuk melakukan analisis yang baik, kami membagi bagan struktur basis data. Peran tiga tabel entitas sudah sangat jelas. Sekarang mari kita lihat peran dua tabel pemetaan.
Tabel pemetaan izin ditunjukkan di bawah ini:
Pertama, mari kita lihat hubungan lapangan antara tabel pemetaan izin dan tabel grup manajemen dan tabel izin .
Melihat lingkaran merah di gambar, pertama -tama lihat asosiasi bidang gorupid. Kinerja metode asosiasi ini dalam database aktual adalah sebagai berikut:
Seperti yang ditunjukkan pada gambar, groupid dari "Administrator Super" dalam tabel Grup Manajemen adalah 1, sehingga izin dengan GroupID 1 dalam tabel pemetaan izin adalah Izin yang dimiliki oleh "Administrator Super".
Gunakan Asosiasi Lapangan GroupID untuk mengetahui izin apa yang dapat dijalankan oleh kelompok manajemen. Namun, informasi terperinci dari izin ini ditemukan dalam Asosiasi Lapangan Tindakan.
Perilaku bidang tindakan dalam database adalah sebagai berikut:
Hanya melalui asosiasi ini, informasi terperinci dari izin tersebut dalam tabel pemetaan izin dapat ditemukan. Singkatnya, kami tahu izin apa yang dapat dijalankan oleh kelompok manajemen dan apa rincian izin ini.
Mungkin Anda akan bertanya, mengapa tidak menggunakan bidang ActionId untuk bergaul? Karena:
• Bidang ID dalam tabel izin dapat berubah setelah beberapa operasi database.
• Tabel Peta Izin hanya mencatat izin yang dapat dijalankan oleh satu kelompok manajemen.
• Setelah ID dalam tabel izin berubah, catatan di tabel peta izin juga berubah.
• Akan ada kesalahan dalam izin yang dapat dijalankan oleh kelompok administrasi, yang sangat tidak diinginkan.
Mempertimbangkan situasi di atas, bidang tindakan harus dikaitkan karena:
• Dalam tabel izin, ID dapat berubah, tetapi bidang tindakan tidak dapat berubah dalam keadaan apa pun.
• Bidang tindakan yang dicatat dalam tabel peta izin tidak akan berubah.
• Tidak akan ada kesalahan dalam izin yang dapat dijalankan oleh kelompok administrasi.
Tabel pemetaan dua orang adalah sebagai berikut:
Mari kita pelajari tentang hubungan lapangan antara tabel pemetaan personel , tabel grup manajemen dan tabel personel , seperti yang ditunjukkan pada gambar di bawah ini:
Melihat bagian Lingkaran Merah dalam gambar, pertama -tama lihat Asosiasi Lapangan GroupID. Metode asosiasi ini melakukan dalam database seperti yang ditunjukkan pada gambar di bawah ini:
Seperti yang ditunjukkan pada gambar, grupid dari grup "Administrator Super" adalah 1. Mari kita lihat tabel pemetaan personel . Admin milik Grup Administrator Super, sementara Administrator milik Grup Administrator Super dan juga milik Grup Administrator.
Metode asosiasi ini digunakan untuk mencari tahu siapa yang ada dalam kelompok manajemen. Seperti di atas, informasi terperinci seseorang ditanyai oleh asosiasi dengan bidang ID (bidang masterid dalam tabel pemetaan personel ).
Bidang ID (bidang masterid dalam tabel pemetaan personel ) terkait dengan database seperti yang ditunjukkan pada gambar di bawah ini:
Seseorang mungkin termasuk beberapa "kelompok manajemen" pada saat yang sama. Seperti yang ditunjukkan pada gambar, administrator milik dua "kelompok manajemen" pada saat yang sama. Oleh karena itu, akan ada dua catatan tentang administrator di tabel pemetaan personel .
Hanya dengan cara ini kita dapat menanyakan informasi terperinci dari personel dalam kelompok manajemen. Hanya dengan menggabungkannya, kita dapat mengetahui siapa yang ada dalam kelompok manajemen dan informasi terperinci dari personel ini.
Menggabungkan tabel izin dan tabel pemetaan izin yang disebutkan di atas, operasi "grup" dalam persyaratan direalisasikan, seperti yang ditunjukkan pada gambar di bawah ini:
Faktanya, tabel grup manajemen hanya mencatat informasi dasar grup, seperti nama, ID grup, dll. Adapun rincian orang -orang dalam suatu kelompok, serta rincian izin yang dapat dijalankan oleh kelompok, mereka dicatat dalam tabel personel dan tabel izin . Hanya dua tabel pemetaan yang benar -benar merekam orang mana dalam kelompok dan izin apa yang dapat dieksekusi. Hanya melalui koneksi dua tabel pemetaan yang dapat interaksi antara ketiga tabel entitas diwujudkan, sehingga menyelesaikan operasi "grup" yang disebutkan dalam persyaratan .
Mari kita lihat interaksi antara tabel kolom izin dan tabel izin . Bidang antara kedua tabel ini adalah sebagai berikut:
Dua tabel menggunakan bidang ActionColumnid yang akan dikaitkan. Metode hubungan dalam database ditunjukkan pada gambar di bawah ini:
Seperti yang ditunjukkan pada gambar, melalui metode asosiasi ini, kita dapat dengan jelas melihat kolom mana izin dalam tabel izin milik.
Sekarang, struktur basis data sangat jelas, dan fungsi menetapkan izin dan operasi "kelompok" telah diimplementasikan. Mari kita analisis masalah penggunaan kembali sistem manajemen izin yang disebutkan dalam persyaratan.
Mengapa sistem yang dibangun menggunakan metode desain database ini digunakan kembali?
Tiga elemen yang menentukan dalam sistem dicatat dalam tiga tabel entitas. "Izin", "kelompok" dan "orang". Tiga elemen ini dapat ditambahkan sesuka hati tanpa terpengaruh oleh satu sama lain. Tidak peduli jenis sistem bisnis apa itu, ketiga elemen penentu ini tidak akan berubah, yang berarti bahwa struktur tidak akan berubah, tetapi hanya data yang akan berubah.
Hubungan antara ketiga elemen dicatat dalam dua tabel pemetaan. Tetapi hubungan ini sepenuhnya diciptakan oleh manusia. Ketika perubahan diperlukan, mereka hanya beroperasi pada catatan dalam database tanpa mengubah struktur.
Tabel kolom izin mencatat kolom yang ditampilkan saat sistem digunakan . Apakah Anda ingin menambahkan kolom, memodifikasi kolom, atau mengurangi kolom, itu hanya catatan operasi.
Singkatnya, sistem dapat sepenuhnya digunakan kembali dengan merancang database dengan cara ini dan dapat menahan tes "perubahan".
Meringkaskan:
Kunci dari sistem ini adalah bahwa tiga tabel fisik dengan kuat memahami komponen inti dari sistem, dan dua tabel pemetaan dengan sempurna memetakan interaksi antara tiga tabel fisik. Kesulitannya terletak pada memahami pekerjaan tabel pemetaan, yang mencatat hubungan dan mengimplementasikan konsep operasi "kelompok". Desain keseluruhan sistem adalah untuk memenuhi pengaturan izin fungsional dari sistem yang berbeda dengan "menggunakan kembali" dalam sistem MIS yang berbeda.
lampiran:
Desain Lapangan Tabel Data Sistem Manajemen Izin
Mari kita lihat desain tabel basis data dari sistem manajemen izin, yang dibagi menjadi enam tabel, seperti yang ditunjukkan pada gambar di bawah ini:
Tabel Aksi:
Tabel tindakan mencatat semua tindakan dalam sistem dan deskripsi terkait tindakan.
Tabel ActionColumn:
Tabel ActionColumn mencatat kolom tindakan. Saat sistem berjalan, bilah menu kiri menyediakan beberapa fungsi yang berbeda. Setiap blok adalah kolom. Setiap kolom ditambahkan, satu catatan dalam tabel akan ditambahkan. Sejalan dengan itu, kolom baru akan ditambahkan ke bilah menu kiri.
Tabel ActionGroup:
Tabel ActionGroup merekam grup tempat tindakan berada.
Tabel GroupManager:
Tabel GroupManager mencatat informasi yang relevan tentang grup manajemen. Untuk setiap kelompok manajemen yang ditambahkan, satu catatan akan ditambahkan di sini.
Tabel MasterGroup:
Tabel MasterGroup mencatat grup manajemen tempat administrator berada. Karena seorang administrator mungkin termasuk dalam beberapa kelompok pada saat yang sama, mungkin ada beberapa catatan tentang administrator dalam tabel.
Tabel Master:
Tabel master mencatat informasi semua administrator. Untuk setiap administrator yang ditambahkan, tabel akan menambahkan catatan.
Desain manajemen izin umum di atas (disarankan) di Java adalah semua konten yang saya bagikan dengan Anda. Saya harap Anda dapat memberi Anda referensi dan saya harap Anda dapat mendukung wulin.com lebih lanjut.