我试图谷歌这个,但无法找到答案。使用rails时,为什么我必须像这样发送授权标题
Authorization: Token token=abc123
为什么我不能像这样发送一个
Authorization: abc123
我认为这就是authenticate_or_request_with_http_token
的构建方式。仅仅编写自己的方法来获取裸露的授权标题是否存在缺点,或者是否存在一些我不知道的安全问题?
答案 0 :(得分:1)
标头的Token
部分是授权的方案类型,后跟实际凭证rfc1945。由于RFC未指定默认类型,因此添加它非常重要,因为不同的Web服务器可能具有不同的默认值,并且如果未提供方案类型则执行不同的操作。有一些有用的方案,如bearer tokens和basic auth看起来相似,但可能由服务器进行不同的管理。 authenticate_or_request_with_http_token
只是试图为你设置方案类型,但是如果你想要一个不同的方案,你可以使用一个实现OAuth2的gem。