HTTP认证用户名密码 php

// header(‘HTTP/1.1 401 Authorization Required‘);
// header(‘WWW-Authenticate: Basic realm="PHP Secured"‘);

//用户名和口令列表
$users = array(
		‘aaa‘ => ‘aaa‘,
		‘bbb‘ => ‘bbb‘
	);

//检验是否有用户名
if(!isset($_SERVER[‘PHP_AUTH_USER‘]))
{
	header(‘HTTP/1.1 401 Unauthorized‘);
	header(‘WWW-Authenticate: Basic realm="PHP Secured"‘);
	exit(‘This page requires authentication‘);
}

//检验是否有该用户
if(!isset($users[$_SERVER[‘PHP_AUTH_USER‘]]))
{
	header(‘HTTP/1.1 401 Unauthorized‘);
	header(‘WWW-Authenticate: Basic realm="PHP Secured"‘);
	exit(‘Unauthorized!‘);
}

//检验口令是否正确
if($users[$_SERVER[‘PHP_AUTH_USER‘]] != $_SERVER[‘PHP_AUTH_PW‘])
{
	header(‘HTTP/1.1 401 Unauthorized‘);
	header(‘WWW-Authenticate: Basic realm="PHP Secured"‘);
	exit(‘Unauthorized!‘);
}

//验证通过
echo ‘Username:‘.$_SERVER[‘PHP_AUTH_USER‘].‘<br/>‘;
echo ‘Password:‘.$_SERVER[‘PHP_AUTH_PW‘].‘<br/>‘;
时间: 2024-08-29 06:31:29

HTTP认证用户名密码 php的相关文章

OpenVPN使用用户名密码认证

紧接上一篇,OpenVPN使用openldap进行认证,这一次让openvpn读取本地文件中的用户名密码,通过判断用户名密码是否存在文件中进行认证,搭建openvpn环境就不多做说明了,只要把openvpn搭建好,客户端能够连接就可以了. 1.修改openvpn配置文件 vi /etc/server.conf 编辑/etc/server.conf文件,并添加如下内容: auth-user-pass-verify /etc/openvpn/checkpsw.sh via-envclient-cer

Selenium + Chrome Diver使用带用户名密码认证的HTTP代理的方法

默认情况下,Chrome的--proxy-server="http://ip:port"参数不支持设置用户名和密码认证.这样就使得"Selenium + Chrome Driver"无法使用HTTP Basic Authentication的HTTP代理.一种变通的方式就是采用IP地址认证,但在国内网络环境下,大多数用户都采用ADSL形式网络接入,IP是变化的,也无法采用IP地址绑定认证.因此迫切需要找到一种让Chrome自动实现HTTP代理用户名密码认证的方案.

Nginx之让用户通过用户名密码认证访问web站点

有时我们会有这么一种需求,就是你的网站并不想提供一个公共的访问或者某些页面不希望公开,我们希望的是某些特定的客户端可以访问. 那么我们可以在访问时要求进行身份认证,就如给你自己的家门加一把锁,以拒绝那些不速之客. 一.查看当前系统参数 uname -r //查看系统内核版本号 3.13.0-32-generic cat /etc/lsb-release //查看系统版本号 Ubuntu 14.04.1 LTS 二.通过htpasswd命令生成用户名及对应密码数据库文件    htpasswd命令

在win8.1上搭建OpenVPN服务器四(纯用户名密码user/password认证)

由于证书这个事情在ios系统的客户端上实现比较困难,这里在windows上实现了用户名密码user/password认证. 认证代码参考了checkpsw.sh,这里写了简单的批处理checkpsw.bat,开始以为是通过脚本传参数,后来发现传的是环境变量-_-||| ::checkpsw.bat,作者高山流水, ::参考checkpsw.sh (C) 2004 Mathias Sundman <[email protected]>的逻辑编写 @echo off ::设置配置文件路径,日志文件

编写登录接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定

练习题目: 编写登录接口输入用户名密码认证成功后显示欢迎信息输错三次后锁定 代码: name_actual = "phka"password_actual = "123"name = input("please enter your name")if name == name_actual: count = 0 while count < 3: password = input("please enter your passwor

Geoserver通过ajax跨域访问服务数据的方法(含用户名密码认证的配置方式)

Goeserver数据有两种,一种需进行用户密码的权限认证,一种无须用户密码.对于网上跨域访问Geoserver数据的种种方法,对这2种数据并非通用. 笔者将Geoserver官方下载的Geoserver.war包部署到linux服务器,通过前端 ajax 访问geoserver数据失败,其中包含跨域问题和用户名密码认证问题,查询网上各类方法进行尝试,结果浏览器控制台分别报出了401,403和跨域错误提示.其中: 401错误:ajax未进行用户名密码验证导致: 403错误:用户名密码验证失败导致

安装openvpn并使用证书+用户名密码登录

openvpn是一个vpn工具,用于创建虚拟专用网络(Virtual Private Network)加密通道的免费开源软件,提供证书验证功能,也支持用户名密码认证登录方式,当然也支持两者合一,为服务器登录和连接提供更加安全的方式,可以在不同网络访问场所之间搭建类似于局域网的专用网络通道,配合特定的代理服务器,可用于访问特定受限网站(你懂得)或者突破内部网络限制. 安装 模拟运行环境:centos6系列系统 # 关闭selinux setenforce 0 sed -i '/^SELINUX=/

【WCF】使用“用户名/密码”验证的合理方法

我不敢说俺的方法是最佳方案,反正这世界上很多东西都是变动的,正像老子所说的——“反(返)者,道之动”.以往看到有些文章中说,为每个客户端安装证书嫌麻烦,就直接采用把用户名和密码塞在SOAP头中发送,然后在服务器端自定义一个消息拦截器来验证用户名和密码. 以老周不靠谱的学识水平认为,这样做不好,直接把明文而且敏感信息放在SOAP头中传输,这尺度实在太大了,太暴露了,广电局是不会允许的,虽然现在流行穿得越少越好,但那些是婊子的境界.像用户名密码这些重要信息,怎么能直接传输呢,这很容易被偷窥的. 其实

OpenVPN 秘钥+用户名密码双重验证登录

为什么需要用户名密码验证登录 我们已经使用了CA证书.迪菲赫尔曼交换密钥.TLS-auth密钥这几种方式进行加密了, 可以说已经很安全了,为什么还要需要用户名秘密呢,一个VPN而已,搞得这么安全有什么用呢. 首先安全还是很重要的,其次就是管理这些秘钥和证书还是比较麻烦的,因为用户量比较多. 我不可能为每个用户都创建一套加密吧,每个用户创建一个秘钥比较麻烦, 多人使用一个秘钥又不具有唯一性,比如说有用户不在需要VPN的时候,我们就只能吊销证书. 但是如果多人使用一个秘钥的情况下,吊销证书了,其他的