后端安全验证过程

目标:提供一个接口给第三方服务使用,但因为第三方服务没有用户账号这东西,所以需要进行安全访问控制(Java实现)

例如:http://XXXXX?nonce=XXXX?&timestamp=XXXX&signature=XXXX (请求参数在POST里面)

步骤:

1.在filter中获取参数,验证是第三方服务调用 

  获取nonce、signature、timestamp、请求参数、四个参数,如果有即是第三方服务在调用接口,没有则将请求转发给下一个filter

 

2.检查请求的时效性

  根据上面拿到的时间戳,判断请求是否过期

 

3.获取token

  拿到对应服务的token

 

4.进行签名

   1.将token、timestamp、nonce进行字典排序,作为签名的secret_key

   2.将请求参数作为签名的内容,然后选择签名的方法

   3.生成签名

 

5.验证签名

   将生成的签名与第一个步骤获取的signature比较,相同即是合法操作

 

6.设置所信任的上下文

   根据请求的数据,获取里面能作为设置凭证的参数,将此次请求设置为受信任的请求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值