sla*_*197 7 ajax rest web-services api-key
我有一个Web服务,我正在向用户提供进入我的应用程序数据库并获取一些信息.用户必须注册API密钥并在提出请求时提供.一切正常,但我如何检查注册密钥的用户是否实际提出请求而不是他可能已经提供密钥的其他人?
在过去的两天里,我一直在考虑提出一个解决方案,但到目前为止还没有.
lau*_*ent 12
您需要使用已签名的请求.基本上它的工作原理如下:
为了避免重放攻击,您还可以在混合中添加随机数和时间戳.nonce只是一个必须在每个请求上由客户端递增的数字.当您收到请求时,检查您之前是否已收到此nonce/timestamp.如果您这样做,则拒绝该请求(因为它很可能是重播攻击).如果没有,则将nonce/timestamp存储在数据库中,以便以后查找.
这或多或少是在OAuth中签署请求的方式.看看他们在链接中的例子.
| 归档时间: |
|
| 查看次数: |
6261 次 |
| 最近记录: |