spring security 实战
文章平均质量分 74
深入理解spring security原理,通过实例展示如何合理自定义并集成使用spring security。
梦想画家
开源软件爱好者,乐于博客分享,业余时间喜欢跑步和科幻,希望与意趣相投朋友一起学习交流。
展开
-
API 网关与反向代理
API 已经成为成功数字产品的必备要素之一,因此正确管理API成为重要内容。本文带你了解管理API的两个常用组件:API 网关与反向代理。架构我们首先看典型的网络拓扑图。虽然API 网关与反向代理位于相同位置,但两者提供的功能有差异。下面我们分别进行解释。反向代理反向代理主要作为客户端与一个或多个后端服务之间的协调者。在微服务架构中,随着应用规模增大微服务会随之变多。必要时需要隐藏异构AP服务带来的复杂性,这时反向代理可以重写URL,客户端仅和反向代理交互,反向代理负责将请求转发到后端服务实例.原创 2021-11-26 15:19:45 · 1892 阅读 · 0 评论 -
Spring Security 实现IP白名单机制
Spring Security 实现IP白名单机制本文讨论如何在Spring Security 中实现IP白名单机制。先看看默认实现机制,同时也讨论自定义AuthenticationProvider实现更加灵活的应用。1. 默认实现首先我们看下Java配置。使用hasIpAddress() 定义允许特定ip地址的用户访问特定资源。请看下面使用hasIpAddress()的配置:@Confi...原创 2020-03-08 10:10:06 · 11682 阅读 · 2 评论 -
基于数据库自定义UserDetailsService实现Spring security认证
Spring security——基于数据库自定义UserDetailsService实现认证本文将展示如何在spring security中创建基于数据库自定义UserDetailsService的认证服务。UserDetailsServiceUserDetailsService接口用于返回用户相关数据。它有loadUserByUsername()方法,根据username查询用...原创 2018-02-24 13:07:40 · 46942 阅读 · 11 评论 -
使用Spring Security 限制URL访问
使用Spring Security 限制URL访问通常保护url方式有以下几种:允许每个人访问的url基于角色保护url基于多个角色保护url基于IP地址保护url本文介绍如何通过spring security 实现这些功能。指定URL指定url最常用的方法是通过antMatcher,如果我们想保护下列url: url 访问限制 http...原创 2018-02-13 14:03:39 · 21595 阅读 · 8 评论 -
spring security 获取用户信息
spring security 获取用户信息本文描述在spring security中如何获取用户信息。分别介绍几种常用的方法实现。通过Bean获取用户获取当前认证用户(authenticated principal)最简单的方式是通过SecurityContextHolder类的静态方法:Authentication authentication = SecurityCo...原创 2018-02-19 17:09:51 · 33671 阅读 · 7 评论 -
spring security控制session
spring security控制session本文给你描述在spring security中如何控制http session。包括session超时、启用并发session以及其他高级安全配置。创建session时机我们可以准确地控制什么时机创建session,有以下选项进行控制:always – 如果session不存在总是需要创建; ifRequired – 仅当需要时...原创 2018-02-25 20:10:40 · 20920 阅读 · 0 评论 -
Spring Security Authentication Provider
Spring Security Authentication Provider 介绍本文介绍spring security如何相比简单的UserDetailService上实现灵活的认证。Authentication Providerspring security提供了多种执行认证方式,但都遵循一个简单的约定——AuthenticationProvider处理认证请求,然后返回授信...原创 2018-04-05 09:20:37 · 4839 阅读 · 2 评论 -
spring security防止恶意登录
spring security防止恶意登录本文我们使用spring security提供一个基本的解决方案防止恶意登录。 简单地说,我们记录来自同一IP的登录失败次数,如果超过设定的数量,在24小时内被阻止登录。AuthenticationFailureEventListener我们定义AuthenticationFailureEventListener,监听Authentica...原创 2018-04-05 11:53:59 · 4656 阅读 · 0 评论 -
Java Base64 加密与解密
Java Base64 加密与解密本文我们探讨不同方式实现java中Base4加密和解密功能。主要是java 8 api为主,同时也学习来自Apache Commons 的API。Java 8 中 Base 64java 8 在标准API中增加Base64功能,通过 java.util.Base64工具类。首先我们看基本的加密过程:Java 8 基本 Base64基本的...原创 2018-06-01 20:07:36 · 22680 阅读 · 1 评论 -
Spring Security Basic 认证
Spring Security Basic 认证本文介绍如何在spring security中搭建、配置、自定义Basic认证。读者需要在spring mvc 基础上进行配置测试。Spring Security配置使用java config方式配置如下:@Configuration@EnableWebSecuritypublic class CustomWebSecurit...原创 2018-06-07 22:24:12 · 8166 阅读 · 0 评论 -
spring security 自定义AccessDecisionVoter类
spring security 自定义AccessDecisionVoter类针对spring web应用或rest api,spring security提供很多方法实现安全控制,但有时会遇到一些具体场景默认提供功能难以满足。本文我们自定义AccessDecisionVoter类展示如何抽象web应用程序的授权逻辑,并将其与应用程序的业务逻辑分离开来。应用场景为了演示Access...原创 2018-06-09 15:38:58 · 7925 阅读 · 0 评论