宁静的api ..会话安全

时间:2011-08-12 05:23:17

标签: rest restful-authentication restful-url

假设订购应用程序,用户“Ben”将能够通过发出

列出特定订单

/顺序/ 1

现在..在做之前我已经验证了“Ben”(用户名/密码auth)并将用户名作为cookie发送(用sha1校验和签名)。

在每个http请求中,我收到cookie,告诉我“Bent”仍然经过身份验证,但谁可以阻止他发布

/顺序/ 23

其中id = 23的订单不属于“Ben”。

所以我想我应该写一些逻辑来确保订单23实际上属于“Ben”......对于这种情况,这是最佳实践或模式吗?

我应该使用单独的“功能主键”,而不是串行主键ID吗?

1 个答案:

答案 0 :(得分:0)

我没有看到任何合理的自然主键用于订购。为了减少可发现性,你可以使用UUID(很小的机会偶然发现/命令/ 4886ed80-dd71-11e0-9572-0800200c9a66)...

但是默默无闻是安全。即使我无法猜测您的订单的UUID,我也可以嗅探您的流量,如果安全性仅通过模糊的URL提供,我将能够通过订单资源做任何我想做的事。

这应该表明在这种情况下你不能跳过身份验证。