【问题标题】:Creating an admin user / area using Tank auth and Codeigniter使用 Tank auth 和 Codeigniter 创建管理员用户/区域
【发布时间】:2013-02-18 03:14:46
【问题描述】:

我正在为我的体育俱乐部建立一个迷你社交网络,并希望创建一个“管理员”部分,管理员可以从中管理用户帐户,例如禁止用户、删除用户等。

我正在使用tank auth 来处理普通站点用户的身份验证,但现在我需要另一个安全区域供管理员使用。我处理这个问题的最佳方法是什么?我是否将另一个字段添加到名为admin 的用户表中,1 表示是,0 表示否。如果用户是管理员,然后检查管理仪表板控制器?

理想情况下,我希望普通用户看不到管理区域的登录表单。因此,如果 joe bloggs(该网站的注册会员)猜到 mydomain.com/admin,他们不会在那里看到任何东西,只有管理员用户会看到。

如果有更好的方法可以解决这个问题,我将不胜感激。

【问题讨论】:

    标签: codeigniter authentication admin tankauth


    【解决方案1】:

    这是我会做的,因为 Tank-auth 选择完整的行,如果您在表中添加字段,它应该会自动添加到您的对象中。

    $user = $this->users->get_user_by_id($this->tank_auth->get_user_id(), TRUE);
    
    if($user->admin == 1){ 
        //this user is admin 
    }
    

    这是最简单的方法。

    【讨论】:

    • 谢谢,你觉得这样够安全吗?
    • 不安全是什么意思?如果所有管理员都处于 if 条件,那么是的,它是安全的。唯一烦人的是您必须在数据库中手动设置它。将默认值设置为 0 即可,非常安全。
    • 好酷。这对我来说不是主要问题,我没有看到超过 2 或 3 个管理员。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-02
    相关资源
    最近更新 更多