gpt4 book ai didi

php - 如何检查用户是否是管理员 安全

转载 作者:行者123 更新时间:2023-11-29 16:05:57 25 4
gpt4 key购买 nike

我做了一个带有暴力破解保护的登录功能,不同的机器人保护功能,如蜜 jar ..,输入过滤,Argon2加密密码。

但最终为了识别用户,我在成功登录后将 ID 保存在 session 中。到目前为止,我使用这个 id 检查“admin”列的值为 1 还是 0。

如果该值为 1,则用户可以执行任何操作。

如何提高安全性?
我还能如何检查用户是否是管理员?

最佳答案

你应该按照我的指示去做

只要您有用户 ID,那么就成功了一半

我假设您有 function.php,其中包含您在网站中使用的所有功能

您还具有登录功能,可以检查用户帐户详细信息并授予访问权限您现在需要改进它以限制用户访问

第一:在 MySQL 中创建表,将其称为组,该表将有两条记录,或者按照您的喜好。管理员将拥有 id 1 和成员 id 2,然后您可以进行很多修改,例如在该表中创建另一列名为 upload 的列,并将 admin 设置为 yes,而members 设置为 no

第二个在您的登录功能中使用以下内容

    $res = mysql_query("SELECT * FROM users INNER JOIN group ON users.class=group.group_id WHERE users.enabled='yes' AND users.status = 'confirmed'") or die(mysql_error());
$row = mysql_fetch_array($res);

Users.class是组id,users是表users现在,如果在上传页面上执行以下操作,您可以检查团体积分作为示例

    if($row["can_upload"]=="no")
echo("admin only can upload ");

您可以根据需要检查组上的凭据,还可以创建许多类,例如管理员、成员、上传者、审阅者、作者,并在查看网站内容时为每个类授予特殊权限

在 admin.php 上您可以使用

    if($row["admin"]=="no")
ech("admin only can view this page ");

在上面的两个示例中,Admin 和 can_upload 是组表中的列,并且它会根据用户类别进行更改。

关于php - 如何检查用户是否是管理员 安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55747703/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com