Rest 使用头或POST数据传递HTTP身份验证令牌?
在设计HTTP API时,我们是否有理由选择一种方法而不是另一种方法:Rest 使用头或POST数据传递HTTP身份验证令牌?,rest,http,http-headers,authorization,Rest,Http,Http Headers,Authorization,在设计HTTP API时,我们是否有理由选择一种方法而不是另一种方法: 在头中传递身份验证令牌 是否在POST数据中传递身份验证令牌 我可以理解为什么在查询中传递它有缺点:URL可以记录在客户端或服务器端。在标头或POST数据中传递令牌是否有类似的副作用?我正试图在这两种方法之间做出选择。我认为最好使用头来传递身份验证令牌。我认为,最重要的论点是,您可以在浏览器中看到令牌,如果您使用HTTPS,它们也将是可见的(只有有效负载是加密的) 也就是说,我认为您应该利用HTTP提供的现有身份验证机制
- 在头中传递身份验证令牌
- 是否在POST数据中传递身份验证令牌
我可以理解为什么在查询中传递它有缺点:URL可以记录在客户端或服务器端。在标头或POST数据中传递令牌是否有类似的副作用?我正试图在这两种方法之间做出选择。我认为最好使用头来传递身份验证令牌。我认为,最重要的论点是,您可以在浏览器中看到令牌,如果您使用HTTPS,它们也将是可见的(只有有效负载是加密的) 也就是说,我认为您应该利用HTTP提供的现有身份验证机制/头:
- 例如,标题
-参见RFC 2617:授权
- 此链接还可以为您提供一些关于RESTful服务中身份验证实现的提示-请参阅
ThierryURL日志记录也是我想到的主要问题。比起客户端和服务器,我更关心代理——即使假设您的身份验证是通过HTTPs进行的,一些公司环境也会在中间执行SSL man,并且仍然可以看到URL。URL也可能更容易受到不必要的登录的影响,从而有人刷新浏览器并生成新的登录请求;浏览器不会自动重新提交帖子内容。(当然,如果您有一个与浏览器无关的纯API,请忽略这一点)。没有特别考虑到职位。