gpt4 book ai didi

web-services - 每次调用 Web 服务时重复用户名/密码身份验证

转载 作者:行者123 更新时间:2023-12-02 02:13:28 25 4
gpt4 key购买 nike

我正在创建一个网络服务来向我的移动应用程序公开。我目前正在实现基于 token 的身份验证解决方案(因为这是我过去所做的);但是,在这种情况下,我很难理解为什么我不每次都简单地传递用户名和密码?我可以在运行移动应用程序时将密码保存在 RAM 中(如果我们想要变得过于复杂,则在使用之间加密),然后在每次连接到服务器时传递它并每次重复哈希验证。当然,一切都是 SSL,因此在网络传输方面,每次都这样做与只做一次相比没有更多的风险吗?我看到的唯一 CON 是哈希验证过程可能比 token 验证更昂贵 - 也许吧。我在这里还缺少其他缺点吗?

最佳答案

有几个不这样做的原因:

  1. 每次传输信息时,都会面临被拦截的风险。 (即使通过使用 SSL 等加密系统可以大大减轻这种风险)。
  2. 在每个请求上传递用户名/密码组合意味着您将在服务器端对每个请求检查它们的组合。这通常需要额外的数据库命中和一些不必要的逻辑。
  3. 如果您在每次请求时都传递这样的凭证,您将需要为每个请求使用 SSL - 这是昂贵的开销。以纯文本形式来回发送加密的身份验证 token 要便宜得多 - 只有服务器端才能读取。

最近几天,这似乎是 SO 上的一个热门话题,因为我已经回答了几个有关 RESTful 身份验证等的问题。我在下面提供了一些指向这些答案的链接——这些链接更深入。也许如果您看一下我提出的身份验证方案 - 您会看到它如何保护您,而不是简单地在每个请求上发送用户名/密码。

Authentication in RESTful web services

Public facing Authentication mechanisms for REST

关于web-services - 每次调用 Web 服务时重复用户名/密码身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11689179/

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