为什么Rails Authorization标头需要格式令牌令牌=" abc123"

时间:2017-02-06 18:57:57

标签: ruby-on-rails authorization ruby-on-rails-5

我试图谷歌这个,但无法找到答案。使用rails时,为什么我必须像这样发送授权标题

Authorization: Token token=abc123

为什么我不能像这样发送一个

Authorization: abc123

我认为这就是authenticate_or_request_with_http_token的构建方式。仅仅编写自己的方法来获取裸露的授权标题是否存在缺点,或者是否存在一些我不知道的安全问题?

1 个答案:

答案 0 :(得分:1)

标头的Token部分是授权的方案类型,后跟实际凭证rfc1945。由于RFC未指定默认类型,因此添加它非常重要,因为不同的Web服务器可能具有不同的默认值,并且如果未提供方案类型则执行不同的操作。有一些有用的方案,如bearer tokensbasic auth看起来相似,但可能由服务器进行不同的管理。 authenticate_or_request_with_http_token只是试图为你设置​​方案类型,但是如果你想要一个不同的方案,你可以使用一个实现OAuth2的gem。