PHP 使用者及許可權管理

2021-04-12 13:40:17 字數 1337 閱讀 4391

考慮到後台系統一般上都會有使用者登陸管理:使用者名稱、密碼及所屬許可權 

如:create table users (

id int(11) not null auto_increment,

username char(20) not null default '',

password char(20) not null default '',

policy int(11) not null default '0',

primary key  (id)

);這樣policy用1、2等區分,當然也可以建立乙個policy表來說明具體1、2等代表什麼值。

在使用者登陸時login.php中,會先從users表中判斷使用者是否正確(使用者名稱、密碼),正確返回乙個policy值,當然使用者可能要記錄到session中;根據policy的不同,分配不同的url位址。

但這裡有乙個問題:使用者的密碼在資料庫中是明碼表示,相對不安全,因此可以用php自帶的md5()函式來加密。

<?php

$db_conn = mysql_connect

("host",

"db_user",

"db_pass"

);

mysql_select_db

("db_name", $db_conn

);// 插入使用者表時,$password 用了 md5 加密

mysql_query

("insert into users values

('$username', '".

md5($password

)."', '2')"

);

?>

使用者登陸時,login.php中判斷取policy值可以如下這樣寫:

<?php

$db_conn = mysql_connect

("host",

"db_user",

"db_pass"

);

mysql_select_db

("db_name", $db_conn

);$sql =

"select policy from users where

`username`='$username' and

`password`='".

md5($password

)."' limit 1";

$result = mysql_query($sql);

if (mysql_num_rows

($result

) >

0) else

?>

以上可以寫乙個單獨的類。

Linux mysql使用者及使用者許可權管理

mysql u root p 管理員root登入mysql 1.增加使用者host 指定該使用者在哪個主機上可以登陸 如果是本地使用者可用localhost 如果想讓該使用者可以從任意遠端主機登陸,可以使用萬用字元 create user 使用者名稱 identified by 密碼 所有主機可登入...

MySql 使用者管理及許可權管理

一 使用者管理 新增使用者並限定固定ip連線 create user username localhost identified by password 新增使用者並允許所有ip連線 萬用字元 表示all create user username identified by password 刪除使...

使用者及檔案許可權管理

檢視當前使用者所在的使用者組 使用groups命令 groups 使用者名稱 2 檢視 etc group檔案 etc group cat etc group grep 使用者名稱 新增使用者並賦予管理員許可權 1 sudo adduser 使用者名稱 sudo usermod g sudo 使用者...