![]() |
1
2
|
![]() |
2
1
我想补充一些澄清问题的信息。“useauth”的答案是正确的,但是也被加载了(因为规范很长,不熟悉它的人通常希望看到它后自杀)。
这基本上就是所谓的“双腿OAuth”;因为OAuth最初是用来验证客户机应用程序的,所以流程由3部分组成,包括身份验证服务、盯着屏幕的用户和想要使用客户机凭据的服务。 两条腿的OAuth(我在那篇文章中详细介绍了这一点)用于服务API在彼此之间进行身份验证。例如,这是amazonweb服务用于所有API调用的方法。 在HTTP上有任何请求时,你必须考虑攻击向量,其中中间的一些恶意人正在记录和重放或更改请求。 例如,您向/user/create发出一个名为“bob”的POST,那么中间的人可以向/user/delete发出一个名为“bob”的POST,这只是为了让人讨厌。 客户机和服务器需要某种方式来相互信任,唯一的方式是通过公钥/私钥。 您不能只是来回传递公钥/私钥,也不能简单地提供用私钥签名的唯一令牌(这是 典型的 大多数人所做的和认为安全的事情),虽然这将识别来自真实客户机的原始请求,但仍会保留评论的参数以供更改。 例如,如果我发送: 其中密钥是我的公钥,由我的私钥签名,只有中间的人才能截获此调用,并以“amt”值“10000.00”将其重新提交到服务器。
提醒:只有客户端和服务器知道私钥。 这种类型的验证称为“HMAC”;它是验证请求内容的校验和。 因为哈希生成非常敏感,必须完成 确切地 例如,当您尝试使用SHA-1对这两行进行签名时,这两行提供了非常不同的哈希: /计费C&用户=bob&金额=100 /计费C&金额=100&用户=鲍勃 OAuth规范中的很多内容都在描述这一点 准确的
你也不能走捷径,只是把所有的东西连接成一个巨大的字符串,亚马逊尝试了AWS签名版本1和它 turned out wrong . 我希望所有这些都能帮到你,如果你被困了,请随时提问。 |
![]() |
jay ram · 如何在URL核心php中从API获取JSON? 1 年前 |
|
Anaya Ammar · 渲染后未显示的值 1 年前 |
![]() |
eymentakak · json字典类型错误:字符串索引必须是整数 2 年前 |
![]() |
Dev · 在laravel rest api中按特定角色获取所有用户 2 年前 |
![]() |
Kimchi · 将包含列表的dic传输到数据帧中 2 年前 |