
springsecurity
文章平均质量分 94
Spring Security为基于J2EE开发的企业应用软件提供了全面的安全服务,特别是使用Spring开发的企业软件项目,如果你熟悉Spring,尤其是Spring的依赖注入原理,这将帮助你更快掌握Spring Security.
赵广陆
优快云认证博客专家、优快云的Java领域优质创作者、全网30w+粉丝、超300w访问量、专注于大学生项目实战开发、讲解和答疑辅导、以及产品测评宣传、工具推广等合作。同时招收学生代理、校园代理,对于专业性数据证明一切!
展开
-
Spring Security实现分布式系统授权
目录1 需求分析2 注册中心3 网关3.1 创建工程3.2 token配置3.3 配置资源服务3.4 安全配置4 转发明文token给微服务5 微服务用户鉴权拦截6 集成测试7 扩展用户信息7.1 需求分析7.2 修改UserDetailService7.3 修改资源服务过虑器1 需求分析回顾技术方案如下:1、UAA认证服务负责认证授权。2、所有请求经过 网关到达微服务3、网关负责鉴权客户端以及请求转发4、网关将token解析后传给微服务,微服务进行授权。2 注册中心所有微服务的请求都经原创 2022-02-08 20:30:00 · 2319 阅读 · 0 评论 -
JWT令牌生成与校验
目录1 JWT介绍1.1 什么是JWT?1.2 JWT令牌结构2 配置JWT令牌服务3 生成JWT令牌4 校验JWT令牌5 JWT整合Spring Security5.1 创建表6 配置授权服务6.1 测试1 JWT介绍通过上边的测试我们发现,当资源服务和授权服务不在一起时资源服务使用RemoteTokenServices 远程请求授权服务验证token,如果访问量较大将会影响系统的性能 。解决上边问题:令牌采用JWT格式即可解决上边的问题,用户认证通过会得到一个JWT令牌,JWT令牌中已经包括了原创 2022-02-08 20:00:00 · 2642 阅读 · 0 评论 -
常见登录密码加密方式
目录1 常见的加密方式1.1.可逆加密算法1.1.1. 对称加密1.1.2. 非对称加密1.2.不可逆加密算法1.3.Base64编码2 密码加密的方式选型2.1 MD5密码加密2.2 手动加密(md5+随机字符串)2.3 . BCrypt密码加密3 jwt介绍3.1 token认证-面试3.2 什么是JWT?3.3 生成token1 常见的加密方式由于在学习JWT的时候会涉及使用很多加密算法, 所以在这里做下扫盲, 简单了解就可以加密算法种类有:1.1.可逆加密算法解释: 加密后, 密文可以反原创 2021-02-16 18:24:15 · 20200 阅读 · 1 评论 -
Java从零搭建一个单点登录系统
目录1 单点登录业务介绍1.1 单一服务器用户认证1.2 WEB应用集群session共享模式1.3 分布式SSO(single sign on)模式2 认证中心模块搭建2.1登录功能(生成token)2.2 passport只负责认证和token的颁发2.3 核对后台登录信息+用户登录信息载入缓存2.4 生成token2.5 制作 JWT的工具类(JwtUtil)2.6 passport模块Controller示例3 验证登录(token)功能,用jwt解析3.1 思路3.2 代码示例4 业务模块的登录检原创 2021-06-25 22:53:29 · 1495 阅读 · 0 评论 -
java实现社交账号登录
一、什么是社交登陆QQ、微博、github等网站的用户量非常大,别的网站为了简化自我网站的登陆与注册逻辑,引入社交登陆功能;步骤:1)、用户点击QQ按钮2)、引导跳转到QQ授权页3)、用户主动点击授权,跳回之前网页。1、什么是OAuth2.0OAuth: OAuth(开放授权)是一个开放标准,允许用户授权第三方网站访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方网站或分享他们数据的所有内容。OAuth2.0:对于用户相关的OpenAPI(例如获取用户信息,动态同原创 2021-06-25 22:55:59 · 607 阅读 · 0 评论 -
SSO单点登录
目录1 单点登录2 SSO讲解3 代码实现3.1 基于cookie和redis的单点登录3.2 单点登陆实现思想:3.2.1 注册3.2.2 登陆3.2.3 拦截器实现4 Cookie共享测试5 不同顶级域名的单点登录临时票据与全局票据1 单点登录为什么要使用单点登录系统?以前实现的登录和注册是在同一个tomcat内部完成,我们现在的系统架构是每一个系统都是由一个团队进行维护,每个系统都是单独部署运行一个单独的tomcat,所以,不能将用户的登录信息保存到session中(多个tomcat的sess原创 2020-12-31 18:49:35 · 3988 阅读 · 2 评论 -
Token泄露引发的问题
1 如何防止token劫持或者说是泄露?token肯定会存在泄露的问题。比如我拿到你的手机,把你的token拷出来,在过期之前就都可以以你的身份在别的地方登录。解决这个问题的一个简单办法在存储的时候把token进行对称加密存储,用时解开。将请求URL、时间戳、token三者进行合并加盐签名或者缓存用户的ip地址也是不错的选择,服务端校验有效性。这两种办法的出发点都是:窃取你存储的数据较为容易,而反汇编你的程序hack你的加密解密和签名算法是比较难的。然而其实说难也不难,所以终究是防君子不防小人的做原创 2021-02-23 11:01:01 · 13171 阅读 · 2 评论 -
深入理解JWT令牌
目录1 JWT 介绍2 JWT适用场景3 JWT结构3.1 Header3.2 Payload3.3 Signature4 JWT实践5 JWT工作原理6 常见问题6.1 JWT 安全嗎?6.2 JWT Payload 內容可以被伪造嗎?6.3 如果我的 Cookie 被窃取了,那不就表示第三方可以做 CSRF 攻击?6.4 空间及长度问题?6.5 Token失效问题?7 JWT使用建议1 JWT 介绍JSON Web Token(JWT)是一个开放式标准(RFC 7519),它定义了一种紧凑(Com原创 2021-06-25 23:12:39 · 607 阅读 · 0 评论 -
Spring Security OAuth2分布式系统认证解决方案
目录1 什么是分布式系统2 分布式认证需求3 分布式认证方案3.1 选型分析3.2 技术方案4 OAuth2.04.1 OAuth2.0介绍4.2 Spring Cloud Security OAuth24.2.1 环境介绍4.2.2 环境搭建4.2.2.1 父工程4.2.2.2 创建UAA授权服务工程4.2.2.3 创建Order资源服务工程4.2.2.授权服务器配置4.2.2.1 EnableAuthorizationServer4.2.2.1.配置客户端详细信息4.2.2.2.管理令牌4.2.2.3.原创 2022-02-07 21:15:00 · 3858 阅读 · 2 评论 -
Spring Security使用原理解读
目录1 集成SpringBoot1.1 Spring Boot 介绍1.2 创建maven工程1.3 spring 容器配置1.4 Servlet Context配置1.5 安全配置1.6 测试2 工作原理2.1 结构总览2.2 认证流程2.2.1 认证流程2.2.2.AuthenticationProvider2.2.3.UserDetailsService2.2.4.PasswordEncoder2.3.授权流程2.3.1 授权流程2.3.2 授权决策3 自定义认证3.1 自定义登录页面3.1.1 认证原创 2022-02-07 21:00:00 · 1524 阅读 · 0 评论 -
Spring Security快速入门
目录1 Spring Security介绍2 创建工程2.1 创建maven工程2.2 Spring容器配置2.3 Servlet Context配置2.4 加载 Spring容器3 认证3.1 认证页面3.2.安全配置3.2.Spring Security初始化2.3.默认根路径请求2.4.认证成功页面2.5 测试4 授权5 小结1 Spring Security介绍Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。由于它是Sprin原创 2022-02-07 20:45:00 · 12706 阅读 · 2 评论 -
基于Session方式深入了解认证授权
目录1 认证流程2 创建工程2.1 创建maven工程2.2 Spring 容器配置2.3 servletContext配置2.4 加载 Spring容器3 实现认证功能3.1 认证页面3.2 认证接口4 实现会话功能5 实现授权功能6 小结1 认证流程基于Session认证方式的流程是,用户认证成功后,在服务端生成用户相关的数据保存在session(当前会话),而发给客户端的 sesssion_id 存放到 cookie 中,这样用客户端请求时带上 session_id 就可以验证服务器端是否存在s原创 2022-02-07 20:15:00 · 496 阅读 · 0 评论 -
认证授权中的基本概念
目录1 什么是认证1.1 什么是会话2 什么是授权3 授权的数据模型4 RBAC4.1基于角色的访问控制(一般不用)4.2基于资源的访问控制1 什么是认证进入移动互联网时代,大家每天都在刷手机,常用的软件有微信、支付宝、头条等,下边拿微信来举例子说明认证相关的基本概念,在初次使用微信前需要注册成为微信用户,然后输入账号和密码即可登录微信,输入账号和密码登录微信的过程就是认证。系统为什么要认证?认证是为了保护系统的隐私数据与资源,用户的身份合法方可访问该系统的资源。认证:用户认证就是判断一个用户的原创 2022-02-07 20:00:00 · 331 阅读 · 0 评论 -
Spring Security认证与授权框架
目录1 Spring Security介绍1.1 框架介绍1.2 认证与授权实现思路2 第一个 Spring Security 项目2.1 导入依赖2.2 访问页面3 UserDetailsService 详解3.1 返回值3.2 方法参数3.3 异常4 创建spring security核心配置类5 创建认证授权相关的工具类6 创建认证授权实体类7 创建认证和授权的filter1 Spring Security介绍1.1 框架介绍Spring 是一个非常流行和成功的 Java 应用开发框架。S原创 2021-01-20 10:32:33 · 2547 阅读 · 0 评论 -
JWT验证用户信息功能与OAuth2协议
1 简介JSON Web token简称JWT, 是用于对应用程序上的用户进行身份验证的标记。也就是说, 使用 JWTS 的应用程序不再需要保存有关其用户的 cookie 或其他session数据。此特性便于可伸缩性, 同时保证应用程序的安全。在身份验证过程中, 当用户使用其凭据成功登录时, 将返回 JSON Web token, 并且必须在本地保存 (通常在本地存储中)。每当用户要访问受保护的路由或资源 (端点) 时, 用户代理(user agent)必须连同请求一起发送 JWT, 通常在授权标头原创 2020-12-31 18:53:01 · 1318 阅读 · 0 评论