如何"令牌身份验证"任何不同于" cookie auth"?

时间:2016-02-05 23:53:10

标签: api authentication cookies token

从表面上看,它似乎是#a; token auth"与传统的" cookie auth"基本相同。

Token auth:

  1. 用户将用户名/密码提交给API
  2. API使用访问令牌
  3. 进行响应
  4. 客户端存储用于在将来的请求中识别用户的访问令牌
  5. Cookie auth:

    1. 用户将用户名/密码提交给API
    2. API以cookie响应
    3. 客户端存储用于在将来的请求中识别用户的Cookie
    4. 似乎令牌身份验证与cookie身份验证基本相同,只是大多数HTTP客户端已经知道如何自动处理cookie,而您必须手动管理API令牌。

      我错过了什么?使用令牌身份验证有什么好处?真的值得付出额外的努力吗?

1 个答案:

答案 0 :(得分:1)

额外的努力是否值得,取决于您正在保护什么以及谁在使用API​​。

当您的客户端不基于浏览器时,基于令牌的身份验证会更容易。因此,如果您要定位移动应用程序,则基于令牌的身份验证值得考虑。

但是在浏览器场景中它也有一些优点。由于浏览器不会自动发送Authorization标头,因此安全令牌不容易受到CSRF攻击。

如果您的网络应用程序位于API之外的其他域上,则不会因same-origin policy而发送Cookie。安全令牌不受此影响。