当前位置: 首页 > 知识库问答 >
问题:

Rails API:实现身份验证的最佳方式?

周越泽
2023-03-14

我只是想知道如何实现这一点的当前最佳实践是什么,所以我一定会走上正确的道路。

共有1个答案

司空叶五
2023-03-14

从安全的角度来看,重要的一点是将用户的电子邮件和密码交换为令牌一次,然后在后续请求中使用该令牌。这是因为:

  1. 您不希望客户端应用程序负责保留用户的密码,因为漏洞或攻击可能导致密码泄露;和
  2. 服务器发布的令牌使您(和您的用户)能够在必要时使令牌过期,例如锁定被盗设备或阻止行为不端的API客户端。

有许多方法可以在复杂程度不同的情况下完成这一任务。

 类似资料:
  • 这可能涉及到会话cookie、服务器端会话存储以及一些会话APIendpoint,通过身份验证的web UI可以访问这些endpoint来获取当前用户信息,以帮助个性化或甚至确定客户端的角色/能力。服务器仍将强制执行保护对数据访问的规则当然,UI将仅仅使用这些信息来定制体验。 将其视为使用公共API的任何第三方客户端,并使用类似于OAuth的某种令牌系统进行身份验证。客户端UI将使用此令牌机制来验

  • 在REST spring Boot中对用户进行授权和身份验证的最佳实践是什么? 我正在构建一个带有标准页面+REST API的移动应用程序。我看了很多关于Spring Security性的文章,基本上大多数都采用了某种fitler方法,允许或阻止REST调用。然而,在我的例子中,我有一些基于用户是谁的身份验证逻辑。例如,有一个API可以更新用户信息,用户可以更新自己,但不能更新其他人。最初我想使用

  • 假设我有一个Web应用程序,我在其中实现了刷新令牌 < li >用户使用发送到< code>/login REST APIendpoint的正文中的用户名和密码登录。 endpoint创建一个到期时间为1个月的刷新令牌,并将散列后的刷新令牌存储在对应于用户ID的Db中。 endpoint创建到期时间为15分钟的JWT访问令牌,该令牌使用服务器密钥签名并对用户ID进行编码。 endpoint使用刷新