Tim*_*uri 6 security rest authorization restful-architecture
关于REST和安全性的主题,有许多关于SO的优秀问题(和答案).许多人说"纯粹主义者不喜欢这样,但是等等等等......"然后其他人说"你永远不应该这样做,因为等等等等".
但我还没有看到"纯粹主义者"为以下情况提出建议的解决方案.所以我的问题是 - 以下场景中的"纯RESTful解决方案"是什么?
简单的场景......
想象一下,建立一个数据库/网站,让用户管理自己喜欢的食谱.该网站公开了RESTful API,以便用户可以从他们想要编写的自定义程序(利用此API)查询和操作他们的列表.
因此,用户"A"有3个最喜欢的食谱,ID为"1","2"和"3".
用户"B"有两个最喜欢的食谱,ID为"4"和"5".
我们需要确保如果用户A发送DELETE命令/Recipes/4,他将得到Forbidden (403)响应.
我通常会做什么......
我通常会做的是让他们首先调用一个身份验证方法,然后向他们发送一些有效30分钟左右的auth-token.通常,此令牌将通过cookie传递.
什么是纯粹的解决方案?
纯REST解决方案是让它们将它作为查询字符串中的变量传递吗?饼干是魔鬼吗?令牌是否应该用作URL的一部分(而不是查询字符串参数)?还有其他东西可以清楚地回答这个问题吗?