我在Rails中构建了一个基于XML的webservice作为iPhone应用程序的后端,我想知道如何才能最好地实现auth方案,这将允许我同时使用GET和POST请求 - 即不需要在XML有效负载的主体中发送auth的请求。Rails XML API设计实践
这里的皱纹是我没有使用普通的HTTP验证。相反,我正在创建一个SHA1摘要以及未经哈希的ID的硬件ID(连接w/a“秘密”字符串预摘要)。我在服务器上验证它,试图从请求中重新创建带有硬件ID的摘要,并将其与来自请求的散列硬件ID进行匹配。
我的问题是这样的:我应该创建我的服务,以便每个资源上的每个操作都需要包含常用XML结构中的安全上下文的POST XML的有效载荷,还是有更好的方法来实现它?
换句话说,我想使用GET对于像/显示,/指数等,但因为我的应用程序目前为,我不能这样做,因为我需要发送包含XML有效负载安全上下文。
也许有一种很好的方法可以有效地实现与Google API的头文件相同的功能?
每一个安全环境是这样的:
<request-wrapper>
<security-context>
<username>joefoo</username>
<hardware-id>AE7D128BCA9206E59901</hardware-id>
<hashed-hardware-id>cfd7983850301f97f6fdc26b553d1b6170f18bde</hashed-hardware-id>
</security-context>
...
(remainder of request payload)
...
</request-wrapper>
这是Rails的我的第一个XML服务,所以我会很感激在这方面的任何一般的做法的建议为好。
谢谢!
感谢您的回应 - 这些都是好的。应用程序本身并不重要(没有个人数据或任何传输内容),如果这意味着简化实现,我一直认为重播风险是可以的,但是关于仅使用SSL的说法很重要。 – trevrosen