Rumah pangkalan data tutorial mysql Cara menggunakan MySQL untuk mencipta jadual kebenaran untuk melaksanakan fungsi pengurusan kebenaran

Cara menggunakan MySQL untuk mencipta jadual kebenaran untuk melaksanakan fungsi pengurusan kebenaran

Jul 01, 2023 pm 10:55 PM
jadual kebenaran mysql Fungsi pengurusan hak Cipta kaedah jadual kebenaran

Cara menggunakan MySQL untuk mencipta jadual kebenaran untuk melaksanakan fungsi pengurusan kebenaran

Ikhtisar:
Pengurusan kebenaran adalah bahagian yang sangat diperlukan dalam pembangunan aplikasi moden. Melalui pengurusan kebenaran, kami boleh menyekat akses dan operasi pengguna pada sumber sistem. Artikel ini akan memperkenalkan cara menggunakan MySQL untuk mencipta jadual kebenaran untuk melaksanakan fungsi pengurusan kebenaran, dan menyediakan contoh kod yang sepadan.

Langkah 1: Buat jadual pengguna
Pertama, kita perlu mencipta jadual pengguna untuk menyimpan maklumat pengguna sistem. Anda boleh mencipta jadual pengguna bernama "pengguna" melalui contoh kod berikut:

CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  username VARCHAR(255) NOT NULL,
  password VARCHAR(255) NOT NULL,
  enabled BOOLEAN NOT NULL
);
Salin selepas log masuk

Struktur jadual pengguna termasuk medan seperti ID pengguna (id), nama pengguna (nama pengguna), kata laluan (kata laluan) dan sama ada ia didayakan (didayakan) .

Langkah 2: Buat jadual kebenaran
Seterusnya, kita perlu mencipta jadual kebenaran untuk menyimpan kebenaran akses untuk pelbagai sumber dalam sistem. Anda boleh membuat jadual kebenaran bernama "kebenaran" melalui contoh kod berikut:

CREATE TABLE permissions (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(255) NOT NULL,
  description VARCHAR(255) NOT NULL
);
Salin selepas log masuk

Struktur jadual kebenaran termasuk medan seperti ID kebenaran (id), nama kebenaran (nama) dan perihalan kebenaran (perihalan).

Langkah 3: Buat jadual kebenaran pengguna
Untuk mengaitkan pengguna dengan kebenaran, kami juga perlu mencipta jadual kebenaran pengguna. Jadual kebenaran pengguna bernama "user_permissions" boleh dibuat melalui contoh kod berikut:

CREATE TABLE user_permissions (
  id INT AUTO_INCREMENT PRIMARY KEY,
  user_id INT NOT NULL,
  permission_id INT NOT NULL,
  FOREIGN KEY (user_id) REFERENCES users(id),
  FOREIGN KEY (permission_id) REFERENCES permissions(id)
);
Salin selepas log masuk

Struktur jadual kebenaran pengguna termasuk medan seperti ID kebenaran pengguna (id), ID pengguna (user_id) dan ID kebenaran (permission_id) dan melalui kunci asing Berkaitan dengan jadual pengguna dan jadual kebenaran.

Langkah 4: Masukkan data awal
Untuk kemudahan demonstrasi, kami boleh memasukkan beberapa data awal ke dalam jadual pengguna dan jadual kebenaran. Berikut ialah contoh kod untuk memasukkan data awal:

INSERT INTO users (username, password, enabled)
VALUES ('admin', 'password', true);

INSERT INTO permissions (name, description)
VALUES ('create', 'Create resources'),
       ('read', 'Read resources'),
       ('update', 'Update resources'),
       ('delete', 'Delete resources');

INSERT INTO user_permissions (user_id, permission_id)
VALUES (1, 1),
       (1, 2),
       (1, 3),
       (1, 4);
Salin selepas log masuk

Kod contoh di atas memasukkan pengguna bernama "admin" ke dalam jadual pengguna, menetapkan kata laluan kepada "kata laluan", dan membolehkannya. Pada masa yang sama, empat kebenaran dimasukkan ke dalam jadual kebenaran, iaitu kebenaran untuk mencipta sumber, membaca sumber, mengemas kini sumber dan memadam sumber. Akhir sekali, kaitkan pengguna "admin" dengan empat kebenaran ini.

Langkah 5: Tanya kebenaran pengguna
Sekarang, kami boleh bertanya senarai kebenaran pengguna yang ditentukan dengan menanyakan jadual kebenaran pengguna. Berikut ialah contoh kod untuk menanyakan senarai kebenaran pengguna:

SELECT p.name
FROM users u
JOIN user_permissions up ON u.id = up.user_id
JOIN permissions p ON up.permission_id = p.id
WHERE u.username = 'admin';
Salin selepas log masuk

Kod contoh ini menanyakan senarai kebenaran "admin" pengguna dengan menyambungkan jadual pengguna, jadual kebenaran pengguna dan jadual kebenaran. Hasilnya akan mengembalikan nama kebenaran yang dimiliki pengguna.

Kesimpulan:
Melalui langkah di atas, kami berjaya mencipta jadual pengguna, jadual kebenaran dan jadual kebenaran pengguna menggunakan MySQL, dan mencapai perkaitan antara pengguna dan kebenaran. Dengan menanyakan senarai kebenaran pengguna, kami boleh mengurus kebenaran akses pengguna dengan mudah. Dalam aplikasi sebenar, fungsi pengurusan kebenaran sistem boleh diteruskan untuk dipertingkatkan mengikut keperluan.

Secara keseluruhannya, ini adalah cara yang mudah dan berkesan untuk melaksanakan fungsi pengurusan kebenaran dengan mencipta jadual kebenaran. Kaedah ini boleh mengurus hak akses pengguna dengan mudah dan boleh dikaitkan dengan komponen sistem lain (seperti jadual pengguna) untuk meningkatkan keselamatan dan kebolehselenggaraan sistem. Saya harap pengenalan dalam artikel ini akan membantu pembaca dari segi pengurusan kebenaran.

Atas ialah kandungan terperinci Cara menggunakan MySQL untuk mencipta jadual kebenaran untuk melaksanakan fungsi pengurusan kebenaran. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table? Bagaimana anda mengubah jadual di MySQL menggunakan pernyataan Alter Table? Mar 19, 2025 pm 03:51 PM

Artikel ini membincangkan menggunakan pernyataan jadual Alter MySQL untuk mengubah suai jadual, termasuk menambah/menjatuhkan lajur, menamakan semula jadual/lajur, dan menukar jenis data lajur.

Terangkan keupayaan carian teks penuh InnoDB. Terangkan keupayaan carian teks penuh InnoDB. Apr 02, 2025 pm 06:09 PM

Keupayaan carian teks penuh InnoDB sangat kuat, yang dapat meningkatkan kecekapan pertanyaan pangkalan data dan keupayaan untuk memproses sejumlah besar data teks. 1) InnoDB melaksanakan carian teks penuh melalui pengindeksan terbalik, menyokong pertanyaan carian asas dan maju. 2) Gunakan perlawanan dan terhadap kata kunci untuk mencari, menyokong mod boolean dan carian frasa. 3) Kaedah pengoptimuman termasuk menggunakan teknologi segmentasi perkataan, membina semula indeks dan menyesuaikan saiz cache untuk meningkatkan prestasi dan ketepatan.

Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL? Bagaimana saya mengkonfigurasi penyulitan SSL/TLS untuk sambungan MySQL? Mar 18, 2025 pm 12:01 PM

Artikel membincangkan mengkonfigurasi penyulitan SSL/TLS untuk MySQL, termasuk penjanaan sijil dan pengesahan. Isu utama menggunakan implikasi keselamatan sijil yang ditandatangani sendiri. [Kira-kira aksara: 159]

Apakah beberapa alat GUI MySQL yang popular (mis., MySQL Workbench, phpmyadmin)? Apakah beberapa alat GUI MySQL yang popular (mis., MySQL Workbench, phpmyadmin)? Mar 21, 2025 pm 06:28 PM

Artikel membincangkan alat MySQL GUI yang popular seperti MySQL Workbench dan PHPMyAdmin, membandingkan ciri dan kesesuaian mereka untuk pemula dan pengguna maju. [159 aksara]

Bagaimana anda mengendalikan dataset besar di MySQL? Bagaimana anda mengendalikan dataset besar di MySQL? Mar 21, 2025 pm 12:15 PM

Artikel membincangkan strategi untuk mengendalikan dataset besar di MySQL, termasuk pembahagian, sharding, pengindeksan, dan pengoptimuman pertanyaan.

Perbezaan antara indeks kluster dan indeks bukan clustered (indeks sekunder) di InnoDB. Perbezaan antara indeks kluster dan indeks bukan clustered (indeks sekunder) di InnoDB. Apr 02, 2025 pm 06:25 PM

Perbezaan antara indeks clustered dan indeks bukan cluster adalah: 1. Klustered Index menyimpan baris data dalam struktur indeks, yang sesuai untuk pertanyaan oleh kunci dan julat utama. 2. Indeks Indeks yang tidak berkumpul indeks nilai utama dan penunjuk kepada baris data, dan sesuai untuk pertanyaan lajur utama bukan utama.

Bagaimana anda menjatuhkan jadual di MySQL menggunakan pernyataan jadual drop? Bagaimana anda menjatuhkan jadual di MySQL menggunakan pernyataan jadual drop? Mar 19, 2025 pm 03:52 PM

Artikel ini membincangkan jadual menjatuhkan di MySQL menggunakan pernyataan Jadual Drop, menekankan langkah berjaga -jaga dan risiko. Ia menyoroti bahawa tindakan itu tidak dapat dipulihkan tanpa sandaran, memperincikan kaedah pemulihan dan bahaya persekitaran pengeluaran yang berpotensi.

Bilakah imbasan jadual penuh lebih cepat daripada menggunakan indeks di MySQL? Bilakah imbasan jadual penuh lebih cepat daripada menggunakan indeks di MySQL? Apr 09, 2025 am 12:05 AM

Pengimbasan jadual penuh mungkin lebih cepat dalam MySQL daripada menggunakan indeks. Kes -kes tertentu termasuk: 1) jumlah data adalah kecil; 2) apabila pertanyaan mengembalikan sejumlah besar data; 3) Apabila lajur indeks tidak selektif; 4) Apabila pertanyaan kompleks. Dengan menganalisis rancangan pertanyaan, mengoptimumkan indeks, mengelakkan lebih banyak indeks dan tetap mengekalkan jadual, anda boleh membuat pilihan terbaik dalam aplikasi praktikal.

See all articles