1

ユーザーが管理者かどうかを 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ですが、ユーザーが管理者かどうかなどに応じていくつかのボタンを非表示にできるように、アプリケーションのどこでもこの変数を使用するにはどうすればよいですか?

セッションでこの変数を設定する必要がありますか?

4

2 に答える 2

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 サーバーを叩いてアカウントをロックすることです。これが私がセッションを提案した理由です。一度認証してください...一度認証されたら、それ以降は有効期限が切れるまでセッションを使用してください...その後、ユーザーは単に再度ログインします。

于 2013-06-28T21:33:40.140 に答える
0

いくつかのオプションがあります。

  • ページのリロード/ナビゲーション後にセッションを持続させたい場合はセッションを使用する
  • 静的クラスで静的メンバーを使用して、永続化が必要ない場合はどこでも参照できるようにします
于 2013-06-28T21:34:37.470 に答える