zoukankan      html  css  js  c++  java
  • Spring cloud微服务安全实战-5-12实现基于token的SSO(2)

    我只要把这个meFilter放在AuthorizationFilter后面就可以了。
    authorizationFilter的排序是3

    MeFilter设置为4 就可以了。


    拿到了username直接返回回来

    启动服务测试

    启动网关

    认证


    现在在服务器的session上不再存任何东西了
    首先登陆



    一直惦记get order info。accessToken失效了 就会调用refresh_token刷一下
    下面就是refresh_token失效了。

    跳到认证服务器重新,去认证了。然后回调,然后又到了主页上。

    惦记确定后,可以继续获取到order 的信息

    一直到认证服务器上session失效。刷新令牌也失效了。才会让用户去输入用户名和密码

    退出

    点击退出后,还是在当前的这个页面上。

    因为现在登录是由于cookies决定的,refreshToken失效了才会真正出现登录的界面




    angular操作cookie需要操作一个插件

    安装 ngx-cookie

    app.modules.ts内引入cookieService

    在provider里面加上,加载providers里面才能在自己的代码里面依赖注入。

    app.component.ts

    通过构造函数注入 CookieService

    删除cookie

    测试



    跳到了登陆页

    总结

    cookie和session方案的区别,以前是存在客户端的session里面的,现在是存在浏览器里面的
    之前存session,在客户端的服务器上一段session失效。用户就需要到认证服务器上做一次认证,
    现在基于cookie的这个方案。当浏览器的refresh_token失效才需要去认证服务器做认证。
    不管是哪种方案,认证服务器都会有用户的session,只不过第一种方案要保证认证服务器要保证有效时间很长的一个session这样前端服务器的session失效后,它到认证服务器上才不需要反复的去登陆。而能一直做sso,哪个客户端失效后,认证服务器都会认,。

    cookie的方案,不需要认证服务器存放时间很长的session,因为决定客户端能不能访问服务的不是session的有效期,而是refresh_token的有效期。只要你refresh_token有效,就能一直访问其他的服务。


    session的优点

    使用https保证cookie的传递。包括cookie本身的信息的安全。放在cookie里面的accesstoken一般不会给他很长的有效期。一般是1小时或者2小时。一旦被人窃取也很快就会失效掉。现在我们子啊浏览器里面还是存的一个无异议的串

    存在客户端浏览器里面的东西 没法随时删掉。存在服务器的session我们可以随时让它失效掉。
     

    结束

  • 相关阅读:
    hdu 4614 线段树 二分
    cf 1066d 思维 二分
    lca 最大生成树 逆向思维 2018 徐州赛区网络预赛j
    rmq学习
    hdu 5692 dfs序 线段树
    dfs序介绍
    poj 3321 dfs序 树状数组 前向星
    cf 1060d 思维贪心
    【PAT甲级】1126 Eulerian Path (25分)
    【PAT甲级】1125 Chain the Ropes (25分)
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/11968208.html
Copyright © 2011-2022 走看看