背景: 我正在deviseREST Web服务的身份validationscheme。 这并不是“真正的”需要安全的(这更像是一个个人项目),但是我想尽可能地保证它的安全性和学习体验的安全性。 我不想使用SSL,因为我不想要麻烦,而且大部分都是为了设置它。 这些SO问题让我开始特别有用: RESTfulauthentication 保护REST API / Web服务的最佳实践 最好的SOAP / REST / RPC Web API的例子? 你为什么喜欢他们? 他们有什么问题? 我正在考虑使用简化版本的Amazon S3身份validation (我喜欢OAuth,但似乎太复杂了,我的需要)。 我正在添加一个随机生成的服务器提供的nonce ,以防止重播攻击。 为了解决这个问题: S3和OAuth都依靠签名请求URL和几个选定的标头。 他们都不签署 POST或PUT请求的请求正文 。 这难道不是一个中间人攻击,它保留了url和headers,并用攻击者想要的任何数据replace请求主体? 看起来好像我可以通过在被签名的string中包含请求主体的散列来防范这一点。 这是安全的吗?
在deviseREST API或服务时,是否存在处理安全性(身份validation,授权,身份pipe理)的最佳实践? 在构buildSOAP API时,您将WS-Security作为指导,有关该主题的文献很多。 我find了有关保护REST端点的更less信息。 虽然我了解REST故意没有类似于WS- *的规格,但我希望最佳实践或推荐模式已经出现。 任何有关文件的讨论或链接将非常感激。 如果重要的话,我们将使用WCF和POX / JSON序列化消息来构build使用.NET Framework v3.5构build的REST API / Services。
RESTfulauthentication是什么意思,它是如何工作的? 我无法在Google上find一个好的概述。 我唯一的理解是,你在URL中传递会话密钥(remeberal),但这可能是非常错误的。