当前位置: 首页 > article >正文

Nginx之Basic Auth认证

一 前言

Basic Auth(基本认证)是一种简单的HTTP身份验证机制,用于验证用户身份。它通过用户名和密码进行认证,具体步骤如下:

  • 客户端请求:客户端向服务器请求受保护的资源。
  • 服务器响应:服务器返回401 Unauthorized状态码,并在WWW-Authenticate头中指定使用Basic Auth。
  • 客户端认证:客户端将用户名和密码用冒号连接,进行Base64编码,并在Authorization头中发送。
  • 服务器验证:服务器解码并验证凭据,若有效则返回请求的资源,否则再次返回401。

二 htpasswd介绍

htpasswd是开源的http服务器Apache Http Server的一个命令行工具.可以用来创建和更新基本认证
的用户认证密码文件.其中htpasswd必须对密码文件有读写权限

linux安装

## 安装插件
yum install -y httpd-tools
## 生成密码
htpasswd -bc /usr/local/soft/nginx/conf.d/httpwd abc 123465
# 参数如下:
 -b -->密码直接写在命令行中,而非使用提示输入的方式
 -c—>创建密码文件,如果文件存在,则覆盖
 -n—>不更新密码文件,将用户名密码进行标注输出
 -m—>使用md5算法对密码处理
 -d—>使用crypt算法对面处理
 -s—>使用sha算法对密码处理
 -p—>不对密码加密处理,使用明文
 -D—>从密码文件中删除指定用户记录
也可以使用在线htpasswd生成器

https://www.bejson.com/encrypt/htpasswd/
在这里插入图片描述

三 实现步骤

(1) 新增配置
server {
   listen       8588;
  
     # 静态资源路径
    location /static_auth/ {
		auth_basic "nginx basic auth";
        auth_basic_user_file D:/DevSoft/nginx-1.17.0/auth/httpwd;

        alias D:/JavaEE/Project/booking/logs/;
        autoindex on;  # 启用目录列表
    }
}
(2) httpwd文件
a:$apr1$BiltpYiz$DyQuzT5BFrHfr0UVpAPsq1

配置修改完成后,重新加载nginx配置

(3) 测试

访问 http://localhost:8588/static_auth/ ,则提示输入用户名密码,输入验证

  • 在这里插入图片描述

http://www.kler.cn/a/594912.html

相关文章:

  • 算法刷题整理合集(五)
  • 飞算JavaAI:AI辅助编程工具在复杂业务场景中的应用实践
  • Kafka分区分配策略详解
  • Linux(九)fork复制进程与写时拷贝技术
  • ES--Mapping之日期时间类型
  • MATLAB神经网络优化1000个案例算法汇总
  • GaussDB 资源管理指南:冻结、解冻、释放与生命周期控制
  • Rasa(非Pro)开源意图识别聊天机器人本地部署及调试,从零到一构建学习
  • Oracle+11g+笔记(11)-数据库的安全管理
  • Elasticsearch 数据一致性保障机制
  • 【Android Studio】解决遇到的一些问题
  • HarmonyOS开发,解决Kill server failed 报错问题
  • Unity打包的WebGL包打不开问题解决方案,以及WebGL包嵌入至Vue2中的步骤
  • 使用 Hybrids 创建Web Component的操作指南
  • springboot 动态注册swagger docket配置
  • 【总结篇】java多线程,新建线程有几种写法,以及每种写法的优劣势
  • Spring Boot整合Apache BookKeeper教程
  • 数据库:一文掌握 Elasticsearch 的各种指令(Elasticsearch指令备忘)
  • webpack的SplitChunksPlugin和在路由或组件级别进行拆分
  • 生物医药蛋白分子数据采集:支撑大模型训练的技术实践分享