PHP如何通过ldap设置变量值?

时间:2013-06-28 21:28:52

标签: php

我正在检查用户是否是ldap的管理员,我也从ldap获得价值

部分代码是,

foreach ($memberOf as $key => $value) {
    $membership = explode(",", $value);
    $member     = explode("=", $membership[0]);
    if (in_array($member[1], $adminGroups)) {
        $is_admin = TRUE;

    } elseif (in_array($member[1], $userGroups)) {
        $is_admin = FALSE;
    }

所以我的问题是,我如何在我的应用程序中的任何地方使用这个$is_admin变量,以便我可以隐藏一些按钮,具体取决于用户是否是管理员等?

我是否需要在会话中设置此变量?

2 个答案:

答案 0 :(得分:0)

使用PHP的会话!

您希望在...中使用会话的文件顶部只需session_start()

分配会话密钥

$_SESSION['is_admin'] = true;

然后在应用程序的不同部分检查密钥......

if($_SESSION['is_admin'] === true) { /* do stuff */ }

将它与一个函数或类结合起来,就可以拥有一个简单易用的身份验证库。

  

http://us2.php.net/manual/en/book.session.php

修改

我不得不稍微使用LDAP身份验证..你要做的最后一件事是锤击LDAP服务器并锁定你的帐户,这就是我建议会话的原因。验证一次......一旦经过身份验证,只需使用该会话,直到它过期...然后用户只需再次登录。

答案 1 :(得分:0)

有几种选择:

  • 如果您希望在页面重新加载/导航后保留会话
  • ,请使用会话
  • 在静态类中使用静态成员,以便在不需要持久性的情况下随处引用