登录和第三方授权,TCP和IP详解

登录与授权的区别

  • 登录: 身份认证,即确认 [你是你] 的过程
  • 授权: 由身份或持有的令牌确认享有某些权限(例如获取用户信息).而登录过程实质目的也是为了确认权限

因此,在实际应用过程中,多数场景下的[登录] 和 [授权] 界限是模糊的


Http 确认授权(或登录)的两种方式

  1. 通过 Cookie
  2. 通过 Authorization Header

Cookie

起源: [购物车] 功能的需求,由 Netscape 浏览器开发团队打造


⼯作机制:

  1. 服务器需要客户端保存的内容,放在 Set-Cookie header里面返回,客户端会自动保存
  2. 客户端保存的Cookie,会在之后所有的请求里面都携带进 Cookie header里发回给服务器
  3. 客户端保存的Cookie,会在之后的请求里都携带进Cookie里header发回给服务器
  4. 客户端里的Cookie超时会被删除,没有设置超时时间的Cookie(称做Session Cookie)在浏览器关闭后,会自动删除;另外服务器也可以删除还未过期的客户端Cookie

Cookie的作用:

  • 会话登录

登录状态 ,购物车


  • 个性化:

⽤户偏好、主题


  • Tracking

分析用户的行为


  • XSS(Cross-site scripting): 跨站脚本攻击.即使用JavaScript拿到浏览器Cookie之后,发送到自己的网站,以这种方式盗取y用户Cookie.对应方式: Server 在发送 Cookie 时,敏感 Cookie 加上 HttpOnly

    • 对应方式: HttpOnly -- 这个 Cookie 只能用于 Http 请求,不能被JavaScript 调用.它可以防止本地代码滥用 Cookie
  • XSRF (Cross-site request forgery): 跨站请求伪造.即在用户不知情的情况下访问已经保存了了 Cookie 的网站,以此来越权操作用户账号(例如:盗取用户资金).应对方式主要是从服务器安全角度考虑,就不多说了

    • 应对方式: Referer 校验

Authorization

  • Basic

格式: Authorization:Basicusername:password(Base64ed)

  • Bearer

猜你喜欢

转载自blog.csdn.net/weixin_34019144/article/details/91365236
今日推荐