当前位置: 首页 > 科技观察

HTTP Basic Auth也有用武之地

时间:2023-03-14 11:44:10 科技观察

HTTPBasicAuth也很有用。转载本文请在twitter上大胆联系Yu公众号。昨天?讲了auth验证,其实在nginx中支持也很简单。HTTP基本身份验证是HTTP协议的一部分。第一次请求时,服务器会返回401,用户输入用户名和密码后,验证通过则继续访问,否则还是401,请问Nginx如何支持呢?首先将密钥文件保存在服务器上,可以使用httpd-tools工具(以centos发行版为例),先安装:yuminstallhttpd-tools,然后生成:htpasswd-c/etc/.htpasswduser1htpasswd/etc/。htpasswduser2如果要修改密码:htpasswd-b/etc/.htpasswduser1passwd其次,在nginx服务或者location中配置:location/api{auth_basic"Admin";auth_basic_user_file/etc/.htpasswd;}是不是很简单,有有几个小收获:1:验证通过后,浏览器会保存验证信息,目前不知道什么时候过期。2:修改服务器文件的用户名和密码后,客户端会再次要求验证。3:多个虚拟主机上配置的密钥文件是一样的,所以客户访问多个虚拟主机只需要验证一次,这似乎是一个小缺陷,但对于用户来说非常方便。对于内部系统,黑白名单的设置也是非常有用的,就看是否符合应用场景了,因为很多用户的IP是不断变化的,比如:location/api{deny192.168.1.2;allow192.168.1。1/24;allow127.0.0.1;denyall;}