用户认证及管理(完全版)

原创 2000年12月19日 02:17:00

用户认证及管理(完全版)  
     
   用户认证及管理(完全版)
作者:MAX
来源:奥索网
-- begin auth.inc --

<?php

$id = "xxxCOM";

if(!isset($PHP_AUTH_USER)) {
Header("WWW-Authenticate: Basic realm="$id"");
Header("HTTP/1.0 401 Unauthorized");
require('error.inc');
exit;
}

$name = $PHP_AUTH_USER;
$pass = $PHP_AUTH_PW;
require("connect.inc");
$query = "select * from auth where username='$name' && realm='$id'";
$result = mysql_db_query("admin", $query);
if(mysql_num_rows($result) == 0) {

Header("WWW-Authenticate: Basic realm="$id"");
Header("HTTP/1.0 401 Unauthorized");
require('error.inc');
exit;
}

$active = mysql_result($result,0,"active");
if($active == 'no') {

?>
<HTML><HEAD>
<TITLE>404 Not Found</TITLE>
</HEAD><BODY>
<H1>Not Found</H1>
The requested URL
<? echo $REQUEST_URI; ?>
was not found on this server.<P>
</BODY></HTML>
<?php
exit;
}
?>

-- end auth.inc --

-- begin connect.inc --

<?php mysql_connect("localhost", "user", ""); ?>

-- end connect.inc --

-- begin error.inc --

此文件存放错误信息及返回!

-- end error.inc --

-- 用户库结构(自己调整)--

CREATE TABLE auth (
id smallint(6) DEFAULT '0' NOT NULL auto_increment,
username varchar(16) DEFAULT '' NOT NULL,
lastname tinyblob,
firstname tinyblob,
password varchar(16),
realm varchar(16),
active char(3),
PRIMARY KEY (id),
UNIQUE id (id),
UNIQUE username (username)
);

-- 用户库结构结束--

-- 添加用户示例--

insert into auth (username, lastname, firstname, password, realm, active) values
('admin','my','love','password','xxxCOM','yes');

-- 结束--

--用户管理程序开始 usermanage.php --
<?php include("auth.inc"); ?>
<?php

if ($PHP_AUTH_USER != "admin") {
Header("WWW-Authenticate: Basic realm="xxxCOM 客户认证"");
Header("HTTP/1.0 401 Unauthorized");
echo "Access Denied!n";
exit;
};

if ($PHP_AUTH_PW != "mypassword") {
Header("WWW-Authenticate: Basic realm="xxxCOM 客户认证"");
Header("HTTP/1.0 401 Unauthorized");
echo "Access Denied!n";
exit;
};

if ($activate) {

include("connect.inc");
$query1 = "UPDATE auth SET active='yes' where id='$id'";
$result1 = mysql_db_query("admin", $query1);

if ($result1) {
echo "<font size="+1">n";
echo "$user activatedn";
echo "<br>n<a href="$PHP_SELF">返回</a>n";
echo "</font>n";
exit;
} else {
echo "<font size="+1">n";
echo "Error: Unknown Errorn";
echo "<br>n<a href="$PHP_SELF">返回</a>n";
echo "</font>n";
exit;
}

}

if ($deactivate) {

include("connect.inc");
$query2 = "UPDATE auth SET active='no' where id='$id'";
$result2 = mysql_db_query("admin", $query2);

if ($result2) {
echo "<font size="+1">n";
echo "$user deactivatedn";
echo "<br>n<a href="$PHP_SELF">返回</a>n";
echo "</font>n";
exit;
} else {
echo "<font size="+1">n";
echo "Error: Unknown Errorn";
echo "<br>n<a href="$PHP_SELF">返回</a>n";
echo "</font>n";
exit;
}

}

if ($delete) {

include("connect.inc");
$query3 = "delete from auth where id='$id'";
$result3 = mysql_db_query("admin", $query3);

if ($result3) {
echo "<font size="+1">n";
echo "$user 已删除!n";
echo "<br>n<a href="$PHP_SELF">返回</a>n";
echo "</font>n";
exit;
} else {
echo "<font size="+1">n";
echo "Error: Unknown Errorn";
echo "<br>n<a href="$PHP_SELF">返回</a>n";
echo "</font>n";
exit;
}

}

echo "<html>n";
echo "<head>n";
echo "<title>用户管理</title>n";
echo "</head>n";
echo "<body>n";
echo "<form method="post" action="$PHP_SELF">n";
echo "<table border="1">n";
echo "<tr><th><font size="+1">Username</font></th><th><font size="+1">Real Name</font>
</th><th><font size="+1">Activated</font></th></tr>n";

include("connect.inc");
$query = "SELECT * FROM auth";
$result = mysql_db_query("admin", $query);

if ($result) {
while ($r = mysql_fetch_array($result)) {
$id = $r["id"];
$username = $r["username"];
$lastname = $r["lastname"];
$firstname = $r["firstname"];
$activated = $r["active"];
if ($activated == "yes") {
echo "<tr><td><font size="+1">$username</font></td><td><font size="+1">$lastname, $firstname</font>
</td><td><font size="+1">$activated</font></td><td>
<a href="$PHP_SELF?deactivate=yes&id=$id&user=$username">Deactivate</a>
</td><td><a href="$PHP_SELF?delete=yes&id=$id">Delete</a></td></tr>n";
} elseif ($activated == "no") {
echo "<tr><td><font size="+1">$username</font></td><td><font size="+1">$lastname, $firstname
</font></td><td><font size="+1">$activated</font></td><td><a href="$PHP_SELF?activate=yes&id=$id">Activate</a>
</td><td><a href="$PHP_SELF?delete=yes&id=$id">Delete</a></td></tr>n";
}
}
}
mysql_free_result($result);
echo "</table>n";
echo "</body>n";
echo "</html>n";

?>

-- usermanage.php 结束--

权限管理——用户认证和用户授权

因为做了权限的项目经理,so,恶补一下一个权限框架:shiro。其实作为框架首要目标是易于使用和理解。安全有时候是很复杂的,甚至是痛苦的,但框架没有必要这样。框架应该尽可能掩盖复杂的地方,露出一个干净...
  • xdd19910505
  • xdd19910505
  • 2016年07月16日 21:42
  • 5482

Informix的用户权限管理完全版

有关数据库的权限  存储在数据库中的数据对于一个商务活动来说是非常重要的。不仅要通过备份和制作日志来确保数据的不丢失,还要通过设置不同的访问权限来防止来自用户的善意的或恶意的破坏。一个公司不可能总是使...
  • zhengfeng2100
  • zhengfeng2100
  • 2013年07月29日 11:56
  • 381

Informix的用户权限管理完全版

有关数据库的权限   存储在数据库中的数据对于一个商务活动来说是非常重要的。不仅要通过备份和制作日志来确保数据的不丢失,还要通过设置不同的访问权限来防止来自用户的善意的或恶意的破坏。一个公司不可...
  • u012085379
  • u012085379
  • 2015年01月21日 11:38
  • 1069

统一用户认证和单点登录解决方案

■ 康威 李凯 --------------------------------------------------------------------------------  本文以某新闻单位...
  • zhq651
  • zhq651
  • 2016年10月15日 14:57
  • 3552

ORACLE数据库用户管理

一.数据库用户管理 1.用户与安全   oracle数据库的安全包括在对象级控制数据库访问和使用的机制,这是通过数据库用户实现的。数据库用户是定义在数据库中的 一个名称,它是存取数据库中信息的通道,是...
  • gumengkai
  • gumengkai
  • 2016年04月26日 22:56
  • 1079

Linux下LDAP统一认证解决方案

企业内部需要认证的服务很多,员工需要记住很多的密码, 即使对这些服务进行相同的密码设置,也存在很大的安全隐患。笔者目前工作的企业就是如此,每一个新员工的到来管理员都要初始化很多密码,而这些密码都被设置...
  • qq_27376871
  • qq_27376871
  • 2016年04月15日 17:22
  • 4807

用户认证管理设计方案

用户认证管理设计方案 1 设计思路为了设计一套具有较强可扩展性的用户认证管理,需要建立用户、角色和权限等数据库表,并且建立之间的关系,具体实现如下。1.1 用户用户仅仅是纯粹的用户,用来记录用户相关信...
  • zhaomingzhe
  • zhaomingzhe
  • 2016年10月21日 09:55
  • 795

统一用户权限管理系统

本系统为统一的细粒度授权管理和用户统一身份管理及单点认证支撑平台。每个接入的系统都支持自定义权限、配置细粒度用户权限和资源灵活配置。...
  • czpae86x
  • czpae86x
  • 2015年01月30日 14:53
  • 1640

用户管理实验-认证

1. 不已认证方式启动数据库 # mongod 2.在admin数据库下创建管理test数据库的用户root > use admin switched to db admin > db.create...
  • wuxbeyond
  • wuxbeyond
  • 2014年10月28日 17:42
  • 549

Hadoop安全认证(1)

前言 在2014年初,我们将线上使用的 Hadoop 1.0 集群切换到 Hadoop 2.2.0 稳定版, 与此同时部署了 Hadoop 的安全认证。本文主要介绍在 Hadoop 2.2.0 上部...
  • daiyutage
  • daiyutage
  • 2016年08月02日 10:12
  • 1745
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用户认证及管理(完全版)
举报原因:
原因补充:

(最多只允许输入30个字)