使用 PHP 进行单用户身份验证

发布于 2024-12-11 02:43:14 字数 180 浏览 0 评论 0 原文

我需要构建一个极其简单的单用户身份验证系统。它用于管理后端,我只需要一个用户帐户就可以访问它。我不想创建“用户”数据库。由于只有一个用户,它甚至可能只是一个密码 (不需要用户名)。 JavaScript 警报窗口是输入此信息的好地方。

我以前在供应商“审查”服务器上见过它......如何最好地实现这个?

谢谢!

I need to build an extremely simple, single user authentication system. It's for an admin backend, and I only need a single user account to be able to access it. I'd rather not have to create a "Users" database. Since there is only a single user it could even be JUST a password
(no need for a username). A javascript alert window would be a nice place to enter this info.

I've seen it before on vendors "Review" servers...how best to implement this?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

如果没结果 2024-12-18 02:43:14

对于每个需要身份验证的页面,您可以使用会话来查看用户是否已通过身份验证,如果没有,则将其重定向到身份验证页面。

例如,如果您有一个需要身份验证的 admin.php 页面,您可以这样开始:

<?php

session_start();

if (empty($_SESSION['authenticated'])) {
    header('Location: authenticate.php');
    exit;
}

/* rest of the script ... */

然后,authenticate.php 可以是一个要求输入密码的简单脚本。如果密码正确 (if ($_POST['password'] == "secret")),则只需设置 $_SESSION['authenticated'] = true

For each page that needs authentication, you could use the session to see if the user was authenticated or not, and if not, redirect him to the authentication page.

For example, if you had an admin.php page that needed authentication, you could begin with:

<?php

session_start();

if (empty($_SESSION['authenticated'])) {
    header('Location: authenticate.php');
    exit;
}

/* rest of the script ... */

Then, authenticate.php can be a simple script that asks for the password. If the password is correct (if ($_POST['password'] == "secret")), it simply sets $_SESSION['authenticated'] = true.

哑剧 2024-12-18 02:43:14

我一直在出于某些管理目的使用此技术:

  • 不要创建任何用户帐户,而是创建一个具有管理任务中所需权限的数据库用户
  • 以数据库用户和数据库密码登录系统,并将这些数据存储在会话变量
  • 每次需要访问数据库时都使用这些变量。如果用户没有使用适当的凭据登录,将无法执行任何操作。

I have been using this technique for some admin purpouses:

  • Don't create any user account, instead create a database user with the priviledges you need in your admin tasks
  • Login at system as your database user and your database password and store these data in a session variable
  • Each time you need to access to the database use these variables. If user has not logged with the appropiate credentials will be unable to do anything.
感悟人生的甜 2024-12-18 02:43:14

最简单的方法是不创建任何用户表或凭据或会话或任何内容,只需按照 mario 建议使用 .htpasswd 密码保护管理员目录即可。

您可以使用此 教程,以便更好地理解和轻松设置

The simplest way is to not create any user table or credentials or sessions or anything, just password protect the directory for admin as mario suggested using .htpasswd

You can use this tutorial for better understanding and easy setup

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文