2012-02-08 73 views
0

我正在构建REST API并使用oAuth进行授权。我的问题是,在包含数据的PUT和POST请求的情况下,我是否需要对请求的主体做任何事情?如果这有什么不同,我使用SSL。我是否需要使用oAuth来保护REST请求的正文?

在我看来,该网址是由oAuth签名验证的,但身体的内容可以是任何东西。但我不确定这是否是一个问题,因为如果URL正确签名,那么他们提供了正确的凭据来执行插入或更新。我使用nonce来防止重放攻击,但是我想避免由于误解如何处理请求主体而造成安全问题。

感谢您的任何建议。

+0

这听起来像你真正要问的是你是否应该对请求的主体进行数字签名,以便服务器可以验证它是否在传输过程中被恶意攻击者修改。这是对的吗? 我还没有与任何REST API一起工作 - 一般来说,如果连接是安全的,并且请求已经正确验证,那么你就很好。当然,假设你正在进行正确的数据验证,避免基本的缓冲区溢出,注入攻击等...... – aalpern 2012-02-09 01:03:44

+0

谢谢,这基本上是我在想什么,但它似乎创建了一个中间人漏洞,至于改变有效载荷。这看起来确实不太可能,但我只是不确定是否标准签名。听起来像是不是..? – Jason 2012-02-09 05:20:39

回答

1

我找到了通过一些OAuth库寻找答案。它不是规范的正式部分,但是一些服务和库在请求头中使用“xoauth_body_signature”和“xoauth_body_signature_method”来发送正文内容的签名。

显然有一些挑战实施和讨论可以通过搜索xoauth_body_signature搜索。似乎没有很多人在做这件事。

相关问题