ZeroNews basic auth policy: 0代码为你的HTTP站点追加安全可控的基本权限验证能力

电子说

1.4w人已加入

描述

basic auth (基本权限验证)是HTTP标准协议在RFC 7235条中定义的一层基本权限控制规范,当外部请求访问设定了basic auth 规则的站点或者url时,会强制要求输入指定的用户名及密码才能对站点内容进行读取操作,否则将会直接被拒绝访问

ZeroNews在内部规则引擎中已经实现该能力,该博文将阐述ZeroNews basic auth的工作模式以及如何以0代码门槛通过ZeroNews平台快速便捷的为你的指定站点追加该策略

ZeroNews basic auth 基本工作原理

作为流量治理网关,ZeroNews 边缘节点会将访问端的流量安全实时的转发到用户内网服务, 如果用户设置了basic auth 策略,那么当针对该映射的HTTP 请求 到达ZeroNews 边缘节点时, ZeroNews会直接返回 验证模块 提示访问者输入对应username 及password, 只有在ZeroNews 验证成功识别请求方为合法预期访问者以后才会将外部请求转发到用户内网,反之,在验证失败的情况下, 用户内网会被ZeroNews 边缘节点安全隔离,不会受到任何恶意请求的污染及攻击

如何集成ZeroNews basic auth 到已有的映射上?

用户可以在ZeroNews用户平台映射模块中针对映射配置对应的basic auth policy(鉴权认证)

内网

选择/创建 对应用户名以后点击保存按钮,对应basic auth policy 代码及配置相关的事情将由ZeroNews自动实现,此时访问对应站点,则会要求访问者提供指定的用户名及密码,否则无法访问

内网

ZeroNews basic auth 作用域范围

ZeroNews 严格基于HTTP标准规范RFC 7235实现, 在CURL, 浏览器访问及常规HTTP请求中都会生效, 上面我们已经演示了浏览器页面访问,但是如规范所说,basic auth 的能力远不止如此, 我们依旧可以在API请求 及 curl等常规HTTP场景中使用该能力

ZeroNews 提供一个测试站点,其访问端点为: https://***.com

curl 案例

您可尝试通过curl 去获取该站点的内容

内网

ApiPost案例

您也可以通过Postman / ApiPost 或者 axios / fetch / http client 等任意Api client 尝试对该站点进行请求

内网

当basic auth 信息缺失时, ZeroNews 边缘节点会直接拒绝请求, 只有如下方正确添加了basic auth信息的请求才会被ZeroNews边缘节点受理并转发给内网服务

内网

在什么场景下需要用到basic auth?

1. 在针对一些敏感资源(如文件,内部站点)的临时分享,您只想让部分经过您允许的访问者才能访问对应资源,basic auth能满足您的基本需求,如您现在有一个法律文件,需要临时共享给您的代理方查阅,但是又担心隐私泄漏,basic auth将是一个非常合适的选择

2. basic auth非常容易集成到一些只提供维护不提供更新的老旧系统里, 部分系统或者站点因为各类原因可能不再升级只提供基本维护, 此时该类系统对新验证方式的支持程度可能有限, 而basic auth只依赖最基础的HTTP Header, 他可以非常轻松的嵌入到各类高校/政企内部系统中提供对安全的一层保障

ZeroNews最佳实践

basic auth是ZeroNews中最容易配置的高级特性,不依赖任何外部认证系统,它非常适合一些临时共享项目,保护内部API不被侵扰,或者开发测试阶段的局部认证功能,在生产环境中,如果对安全策略有更高级别的要求,可以考虑使用更先进的认证模式(如OAUTH 2 / JWT等),同时可以考虑ZeroNews IP Policy 去对访问端IP 进行精准控制以达到跟高级别安全标准的要求

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分