Nginx进阶 配置-Nginx auth_basic 身份认证

这篇具有很好参考价值的文章主要介绍了Nginx进阶 配置-Nginx auth_basic 身份认证。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

在公司前期投入研发时,尤其针对于ZF的客户,往往是很多需求含糊不清,可项目的里程碑节点已是板上定钉。在这种情况下,需求组应和研发组协同推敲,不断的制定计划、出demo,拿着我们推测出的构建想法及原型去征求客户的意见。
对于大屏、驾驶舱等可以前端先行的项目,往往不再是拿着高保真图片,而是部署到演示环境,将客户提供的真实数据展现于相关图表,数据可以使用前端mock数据,不用任何后端系统支撑。还有更low的是直接写死在图表上。用这个服务做演示汇报。这种情况下,有些驾驶舱、大屏的数据就涉及到敏感问题。演示的环境基本都是http://xxx.xxxx.xxx/xxxx ,针对于大屏并没有去配置用户权限控制,甚至这个时候后台的鉴权服务还没有搭建起来,还在属于设计的阶段,对于内网部署的还好去解释不做用户的鉴权。如果客户要求放在外网上,只要是拿到了url地址,任何人都可以访问。在前后台都不愿意去写一套登录代码认证的情况下,0代码完成用户认证,可以考虑使用Nginx的 auth_basic 。

个人经历

客户第二天需要验收大屏页面,加班到晚上9点刚把前端的包部署完准备下班,突然领导要求访问的大屏页面地址加个用户名登录,这样数据放在互联网上谁都可以访问查看,太危险,造成数据泄露。起初想法是让前端去实现,尽快搞完下班,但是前端组有别的任务,压力给到我这边。后来想到了nginx的负载均衡,应该是可以做到,查了相关资料,半小时搞定。记录下文章,给日后也有相关需求的项目团队提供帮助。

auth_basic 配置步骤

1.生成密码(Linux)

Nginx绝大部分公司使用的目的还是作为一个负载均衡的功能,当然Nginx里还提供了其它的一些作用。今天一起来学习下Nginx的 Auth_basic 鉴权。
Nginx下载、安装、启动这种弱智般的操作流程不再多写。要是不会建议转行哈。
ngx_http_auth_basic_module模块允许通过使用“HTTP基本认证”协议验证用户名和密码来限制对资源的访问。 大致的过程就是在nginx下生成一个用户密码的配置文件,而后在conf配置文件中配置一下就OK了。
访问还可以根据地址、子请求的结果或JWT进行限制。同时通过地址和密码限制访问由满足指令控制。
同时,auth_basic要求放置的用户文件需要进行hash值计算,要对明文密码进行处理。用户文件后面说明。
注:加密处理只针对Linux服务器,Windows server不需要加密后的用户文件,不需要。不需要!!!只需要将明文用户密码作为一个文件就可以,网上没有对windows server的文件解释,自己摸索了半天才发现。

yum install httpd-tools -y

确定服务器是否安装了 http,而后生成用户名密码

htpasswd -nbm admin 12345678

使用了如上命令后,会生成加密后的hash值,大概是如下的样子

admin:$apr1$nkxLxBPa$EGa.u5yKuQ08m6g/8bGb9.

创建一个文件,不要有后缀的,将生成的用户密码贴进来。如果是多个用户,换行贴入就可以。文件可命名为auth_basic_user_file。放在可以找到的位置路径上。

2.配置

        location / {
            root   html;
            index  index.html index.htm;
			# 开启功能模块,关闭为off
			auth_basic on;
			# 指定密码配置文件
			auth_basic_user_file home/web/auth/auth_basic_user_file;
			# 验证通过后 跳转的相关路径
			proxy_pass   http://127.0.0.1:9003;
        }
代码解读

nginx监听指定端口,用户访问指定的端口后,跳出验证用户密码,auth_basic on 代表打开验证登录,输入的用户密码要在生成的用户信息文件里可以匹配的上,完成验证后,跳转到9003端口的页面上。

业务思路

我这边的服务器是window server,我认为Linux也一样可以参考,首先将服务器的9003号端口也就是我的大屏部署的端口进站关掉,这样即便项目部署成功去访问9003是访问不进来的,只能通过访问我的ngxin监听的端口。如果访问我的nginx监听端口,则跳转出登录,登录成功后内部自己跳转到9003。如下图
nginx auth_basic,java后台,nginx,运维,服务器,java

访问9007验证登录,输入配置的南京发改委账号信息,验证成功后显示大屏:
nginx auth_basic,java后台,nginx,运维,服务器,java
nginx auth_basic,java后台,nginx,运维,服务器,java

0代码完成用户的登录。文章来源地址https://www.toymoban.com/news/detail-518895.html

 /* powerd by zym */
 0 error(s),0 warning(s)

到了这里,关于Nginx进阶 配置-Nginx auth_basic 身份认证的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 统一身份认证,构建数字时代的安全壁垒——统一身份认证介绍、原理和实现方法

    随着数字化时代的来临,个人和机构在互联网上的活动越来越频繁,对于身份认证的需求也愈发迫切。为了有效应对身份欺诈、数据泄露等问题,统一身份认证(Unified Identity Authentication)应运而生。 在本文博主将介绍统一身份认证的概念、原理以及其具体的实现方案。 统一

    2024年02月03日
    浏览(33)
  • 身份证识别ocr、身份证实名认证接口文档

    每一次验证背后,都是对用户数据安全的承诺,对平台信誉的坚守。翔云身份证实名认证API,通过身份证识别接口仅需一键上传身份证图片即可快速识别身份证信息,翔云实名认证接口实时联网查验证件信息的真伪。 ​PHP身份证实名认证接口文档代码如下:

    2024年04月17日
    浏览(41)
  • k8s 拉取镜像报错 no basic auth credentials

    省流提醒: 本次解决的问题是 docker login 可以正常登录, docker pull 也可以正常拉取镜像,只是 k8s 在启动 pod 的时候,没有指定 imagePullSecrets ,导致没权限拉取 从私有仓库拉取镜像 执行过 docker login 命令后,会在 ~/.docker/config.json 生成凭据文件 参考命令,记得把 去掉 如果有

    2024年02月07日
    浏览(33)
  • 常见的身份认证技术

    (1)   口令认证技术(用户名/密码) 这是最简单也是最传统的身份认证方法,通过口令来验证用户的合法有效性。 通过用户名  ID  和用户密码  PW  来认证用户。 只要能够正确验证密码,系统就判定操作者是合法用户。 口令认证主要适用于小型封闭型系统。 存在的问题

    2024年02月06日
    浏览(38)
  • ES开启身份认证

    X-Pack是Elastic Stack扩展功能,提供安全性,警报,监视,报告,机器学习和许多其他功能。 X-Pack的发展演变: 1,5.X版本之前:没有x-pack,是独立的:security安全,watch查看,alert警告等独立单元。 2,5.X版本:对原本的安全,警告,监视,图形和报告做了一个封装,形成了x-pac

    2024年02月14日
    浏览(26)
  • 鉴权与身份认证

    ​ 所谓鉴权就是 身份认证 ,就是验证您是否有权限从服务器访问或操作相关数据。通俗的讲就是一个门禁,您想要进入室内,必须通过门禁验证身份,这就是鉴权,如打开一个网站必须要输入用户名和密码才可以登录进入,这种就是鉴权,还有一些业务需要登录以后才可以

    2024年03月14日
    浏览(55)
  • Nacos身份认证漏洞

    公司Nacos版本有用的2.0.1和2.0.3的都复现了身份认证的漏洞,无需认证身份就可以查看用户列表以及注册新用户,并且注册上来的新用户可以查看所有public命名空间下的配置资源! 1、查看用户列表 URL: http://ip:8848/nacos/v1/auth/users?pageNo=1pageSize=1 方法类型:GET 返回结果: 如图示

    2023年04月10日
    浏览(32)
  • Nodejs七、身份认证

    1、Web 开发模式 (1)目前主流的 Web 开发模式 基于 服务端渲染 的传统 Web 开发模式 基于 前后端分离 的新型 Web 开发模式 (2)服务端渲染的 Web 开发模式 服务器发送给客户端的 HTML 页面,是在服务器通过字符串的拼接,动态生成的。 客户端不需要使用 Ajax 这样的技术额外请

    2024年02月09日
    浏览(34)
  • NACOS身份认证绕过

    一、漏洞描述 Nacos是Alibaba的一个动态服务发现、配置和服务管理平台。攻击者通过添加Nacos-Server的User-Agent头部将可绕过(nacos.core.auth.enabled=true)鉴权认证,从而进行API操作。 二、漏洞利用 访问 http://xxxxx/nacos/v1/auth/users?username=testpassword=test ,并使用burpsuite进行抓包,将方法

    2024年02月16日
    浏览(29)
  • 数据库与身份认证

    能够知道如何配置MySQL数据库环境 能够认识并使用常见的SQL语句操作数据库 能够在Express中操作MySQL数据库 能够了解Session的实现原理 能够了解JWT的实现原理 数据库的概念 安装并配置MySQL MySQL的基本使用 在Express中操作MySQL 前后端的身份认证 数据库(database)是用来 阻止、存储和

    2024年02月10日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包