【发布时间】:2015-09-04 18:43:42
【问题描述】:
我正在为一个网站创建一个管理区域,并且我正在使用 HTTP 身份验证来锁定目录。我想知道我是否可以在该目录中放置一个 PHP 脚本,一旦访问,该脚本就会存储用户登录到会话变量中的事实,以便他们现在可以访问其他管理页面。大致如下:
session_start();
$_SESSION['admin_enabled'] = true;
header("location: some/admin/script.php");
然后,在任何管理页面上,我只需检查该会话变量,然后我就会有一个简单的注销脚本来销毁该变量。
基本上,访问脚本以设置会话变量的唯一方法是通过 HTTP 身份验证。这是否适用于验证用户在 HTTP Authenticated 目录之外的文件/函数中具有管理凭据?
【问题讨论】:
-
不管你如何让用户登录,只要设置了会话变量。
-
如果有人授权并关闭他们的浏览器并返回到他们的会话仍然存在的页面,您是否打算这样做?因为一旦他们关闭浏览器,无论会话是否持续,他们都必须通过 HTTP 重新进行身份验证。
-
@John 这个想法主要是我可以将只有管理员的文件/函数放在 HTTP Authenticated 目录之外,但仍然可以根据会话变量对用户进行身份验证。
标签: php http session authentication http-authentication