哪个更好,在HTTP头或HTTP Body中传递用户名/密码作为参数?

Sar*_*ada 5 header http

我正在实现一个REST服务器.

我将收到用户的每个请求的用户名,requeststid和密码.

我有两个选择,我可以要求用户在http正文或http标头中传递这三个参数.

这将是更好的实施方式,为什么?

提前致谢.

jhe*_*cks 5

头球!

如果我理解您的问题,那么您将在每个请求中传递一些东西。这意味着如果您想支持 GET 和 HEAD 等安全请求,您只有两种选择:HTTP 标头或 URL(通常通过查询参数)。

由于它包含身份验证信息,因此应避免将其放在 URL 中。除此之外,您说它是加密的,并且额外的保护层是通过 SSL 进行的,但是标头和正文同样安全/易受攻击,因此从安全角度来看它没有区别。

将它放在头中也将它与应用程序状态和媒体类型分离,这是一件好事。如果您想支持 JSON、XML 和 XHTML 表单,那么您的身份验证参数没有任何区别。