【问题标题】:Token authentication - where to store the token令牌认证 - 存储令牌的位置
【发布时间】:2014-09-19 12:43:15
【问题描述】:

我目前正在使用 PHP 和 Laravel,我有一个 restful api,用户需要对其进行身份验证以确保他们只能访问自己拥有的东西等。

我想知道来自服务器的令牌应该保存在客户端的什么位置?在会话中使用 cookie?服务器数据库?

【问题讨论】:

  • 那么会话使用 cookie 来识别,并将数据保存在服务器 hd 或数据库中。
  • 那么把它保存在一个cookie中,并让cookie与token一样有效?
  • 如果您构建 API,那么 cookie 将无济于事!您应该生成一个令牌,将其存储在数据库或缓存中,然后让他们在每次请求时发送令牌。

标签: php authentication laravel access-token


【解决方案1】:

我建议走以下路线:

  1. 用户登录您的网站并请求 API 使用令牌
  2. 当对您的 API 的新请求进入时,将来自传入请求的令牌与数据库中的令牌进行比较。如果找到,它是一个有效的请求。 REST 客户端可以使用Authorization 标头发送令牌。
  3. 发送请求的答案

虽然您网站的登录系统可能是基于会话的,在客户端使用 cookie,但 REST API 是基于令牌的,不需要 cookie 或会话。

请查看此以了解更多详细信息: https://softwareengineering.stackexchange.com/a/141434/111803

【讨论】:

    猜你喜欢
    • 2018-02-28
    • 2019-10-25
    • 2015-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-25
    • 2017-04-20
    • 1970-01-01
    相关资源
    最近更新 更多