zoukankan      html  css  js  c++  java
  • 为什么要使用oath协议?

    一.如何查看用户是否登录?

    通过cookie和session来查看用户是否登录.

    如果cookie对应的session中保存了用户登录信息,则判定用户已登录

    Jsessionid,也就是tomcat自动生成的cookie,用来匹配session,默认的domain,path以及expires都是N/A

    这个N/A的意思是默认,domain和path都是/,expires关闭浏览器过期.

    domain表示二级域名等是否共享cookie,如果domain为cnblogs.com表示只有cnblogs.com享有此cookie,

    而如果设置为.cnblogs.com(有个点),则i.cnbolgs.com,q.cnblogs.com以及全部二级域名都享受此cookie

    如果设置为/,则cnblogs.com:8080也享有此cookie,应该没有没有正则的写法.

    path表示目录,比如/sso,domain为cnblogs.com,只有cnblogs.com/sso目录下的页面享有此cookie

    二. 普通的缺点.

    1.微信小程序以及类似的不支持cookie

    2.app的cookie关闭后就清空了(没试过)

    3.安全性,https另说,没接触过

    三.oath协议的四种模式

    1.授权码

    2.简化

    3.密码

    4.客户端

    四.oath协议如何规避二中的缺点

    只讨论授权码和简化模式

    授权码模式有1,2,3,4,5五步,最后一步发送令牌是认证服务器通过request向第三方应用的服务器发送令牌,相比简化模式更安全.

    简化没有第3步,第4步,只有1,2,5三步,因为简化模式假定没有网页没有服务器控制权,用户同意授权后认证服务器发送携带令牌的response返回第三方应用的页面.

    oath协议中只需要令牌,令牌是普通字符串,不涉及cookie

    而且令牌可以不需要https也能操作加密.

    只需要client每次发送的时候在携带令牌即可.

    而且令牌可以设置成定时更新,在用户没有察觉的情况下更新令牌,更安全.

    但cookie的对应的session并没有办法更改jsessionid,如果为了安全30分钟让用户重新登录一次更换jsessionid,体验不好.

     

  • 相关阅读:
    win10下安装基于caffe的 Faster-Rcnn
    Caffe学习系列
    Caffe 分类问题 Check failed: error == cudaSuccess (2 vs. 0) out of memory
    Windows 10下安装配置Caffe并支持GPU加速(修改版)
    Python 基础语法
    Halcon 彩色图片通道分割处理
    halcon 特征测量
    川崎机器人c#通讯(转)
    Halcon 2D测量
    Halcon 1D测量
  • 原文地址:https://www.cnblogs.com/ptqueen/p/8449150.html
Copyright © 2011-2022 走看看