gpt4 book ai didi

authentication - 简单的 REST 身份验证策略?

转载 作者:搜寻专家 更新时间:2023-10-31 22:42:40 24 4
gpt4 key购买 nike

我正在设计一个可供多个客户端、Web、移动、第 3 方等使用的 Web 服务。我正在将 REST 视为一种可能的解决方案,并且正在考虑身份验证的情况。

我试图让事情变得简单和高效。作为记录,我使用的是 Node.js。

我知道出于可扩展性原因,不建议使用 session 。

对通过 https 的每个请求传递用户名和密码有何看法?

例如:

http://myservice/users/list?username=authorized&password=mypass

这种方法有严重的缺点吗?它会打开安全漏洞、跨站点脚本吗?

对于一般的 Web 服务,是否有更好的解决方案?

最佳答案

你不应该在 URL 中使用明文信息(它可以在浏览器历史记录,没有混淆并且也在像 apache 这样的常用日志模式中)。

为此使用 HTTP header :

X-USER: user
X-PWD: password

优点:

  • 它符合 HTTP(HTTP header 经常用于横切关注点,例如安全性或缓存控制)
  • 如果您使用 SSL(例如通过 https),信息将被加密

如果您没有适当的 SSL,您应该使用 nonce 方法。看看HTTP-digest得到一些想法。如果您不需要识别特定用户(如移动设备最终用户),您可以完全重用 HTTP-digest .

为了尽可能重用安全设置。很难想出自定义身份验证方案,因为存在许多安全隐患。

关于authentication - 简单的 REST 身份验证策略?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7485391/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com