为什么HTTP请求后面有时带一个sign参数(HTTP请求签名校验)

前言

最近在开发过程中,发现前端有很多的接口发送请求时都会携带sign=xxxx参数,但是后端明明没有写,也不需要这个参数,后面才知道,这个前面是为了给http请求签名,主要是为了防止请求体和请求参数被拦截篡改,后端不需要处理该参数,该参数是给网关来进行处理和校验的。

为什么要请求签名

通常我们后端接口暴露给前端使用,但是浏览器f12或者抓包工具可以轻松的获得我们后端接口的请求地址,为了限制只有指定客户端、前端或其他指定第三方服务可以调用我们的接口。

对接口使用前面算法前面后,可以保证,

  • 后端接受到的请求,一定是有权限的客户端发出的请求
  • 请求参数在整个网络传输过程中没有被篡改
  • 加入时间戳的话,可以保证这个请求在一段时间内生效,防止了重放攻击

使用场景

  • 需要对接口访问进行权限限制
  • 对接口的安全性有一定要求

如何使用

只要能发出http请求就都可以对http请求体前面

例如前端在发送请求前,根据约定好的签名算法,把sign给生成拼接在url后面

后端同样可以对请求前面,只要实现了相应的签名算法即可

后端通常不要对签名参数进行处理,这是网关所负责的,签名不合格的非法请求直接就会被网关拦截

注意:

签名机制仅能确保请求中的参数不被篡改,并不能保证传输中敏感数据的安全性。

参考:

相关推荐
陳長生.36 分钟前
JAVA EE_网络原理_网络层
java·服务器·开发语言·网络·java-ee
元清加油41 分钟前
【网络】:传输层协议 —— UDP、TCP协议
网络·数据结构·网络协议·tcp/ip·算法·udp
vx153027823622 小时前
‌CDGP|数据治理:探索企业数据有序与安全的解决之道
大数据·运维·网络·cdgp·数据治理
_只道当时是寻常2 小时前
【网络入侵检测】基于源码分析Suricata的IP分片重组
网络·安全·网络安全·安全威胁分析
Fanmeang3 小时前
BGP选路原则实验案例
运维·网络·华为·bgp·路由选路·路由选路原则·route-policy
兴达易控3 小时前
E+H流量计通过Profibus DP主站转Modbus TCP网关与上位机轻松通讯
网络协议
未来之窗软件服务4 小时前
SAN 文件编码识别-对抗网络搜索—智能编程—仙盟创梦IDE
网络·ide·文件编码·仙盟创梦ide
蜡笔小新..4 小时前
【计算机网络01】 网络组成与三种交换方式
网络·计算机网络
大G哥4 小时前
【WebSocket&IndexedDB】node+WebSocket&IndexedDB开发简易聊天室
网络·websocket·网络协议
Javis2114 小时前
【Linux高级全栈开发】2.1高性能网络-网络编程——2.1.1 网络IO与IO多路复用——select/poll/epoll
linux·运维·网络