安全框架技术栈
文章平均质量分 70
安全相关技术
小猿、
整洁的代码简单直接,整洁的代码如同优美的散文,整洁的代码从不隐藏设计者的意图,充满了干净利落的抽象和直截了当的控制语句
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
详解Spring Security 中的 @PreAuthorize 注解应用场景和示例代码
本文介绍了SpringSecurity中@PreAuthorize注解的使用方法,详细说明了其在SpringBoot3.4.3中的配置方式及常见应用场景。该注解通过SpEL表达式实现方法级权限控制,支持基于角色、权限及业务参数的条件判断。文章还提供了控制器层、服务层的典型示例代码,并强调了密码安全、性能优化等注意事项。最后指出@PreAuthorize应与URL安全控制配合使用,形成多层次的安全防护体系,遵循最小权限原则保障应用安全。原创 2025-12-09 09:33:02 · 796 阅读 · 0 评论 -
Spring Security6 中 @PostFilter 和 @PreFilter 注解详解
摘要:@PostFilter和@PreFilter是Spring Security提供的安全注解,用于集合/数组的权限过滤。@PreFilter在方法执行前过滤输入参数,@PostFilter在方法执行后过滤返回值。两者基于SpEL表达式,支持权限检查(如hasRole)。需配合@EnableMethodSecurity启用,适用于数据权限控制场景,但要注意性能影响(内存过滤)。可与@PreAuthorize等注解组合使用,通过filterObject访问集合元素,支持多参数过滤(filterTarget)原创 2025-11-13 18:01:36 · 471 阅读 · 0 评论 -
Spring Security6 中 @PostAuthorize 注解详解
摘要: @PostAuthorize是Spring Security提供的方法级安全注解,用于在方法执行后根据返回结果进行权限校验。它基于SpEL表达式,支持使用returnObject变量访问返回值,适合动态权限判断和数据过滤场景。与@PreAuthorize不同,它允许方法先执行再校验权限,但需注意性能影响和副作用。典型应用包括用户数据访问控制、敏感信息过滤和复杂业务规则验证。使用时需通过@EnableMethodSecurity启用,并可与@PostFilter配合处理集合返回值。原创 2025-10-14 09:00:00 · 823 阅读 · 0 评论 -
Spring Security6 中 @PreAuthorize 注解详解
摘要:@PreAuthorize是Spring Security提供的方法级权限控制注解,支持SpEL表达式实现细粒度的安全校验。需配合@EnableMethodSecurity启用,支持角色(hasRole)、权限(hasAuthority)等校验,并可与方法参数结合实现数据级权限。适用于API保护、业务方法权限控制等场景,提供比URL级更精准的安全控制。需注意性能影响,可与@PostAuthorize等注解配合使用,测试时可通过@WithMockUser模拟权限。该注解是构建安全应用的重要工具。原创 2025-10-14 08:30:00 · 683 阅读 · 0 评论 -
Spring Security AuthenticationManager 接口详解与实战
Spring Security框架中的AuthenticationManager接口是认证体系的核心,负责验证用户身份。该接口定义简洁,仅包含authenticate()方法,用于处理认证请求并返回包含完整用户信息的Authentication对象或抛出异常。实际应用中通常使用ProviderManager实现类,它通过委托多个AuthenticationProvider来处理不同认证类型。本文详细介绍了AuthenticationManager的工作原理、应用场景(如表单登录、API认证等)原创 2025-09-08 14:55:26 · 1403 阅读 · 0 评论 -
OAuth2AuthorizationEndpointFilter类介绍、应用场景和示例代码
是 Spring Security OAuth2 授权服务器中的核心过滤器,负责处理 OAuth2 授权码授权流程中的端点请求。// 查询客户端信息// 解析scope// 用户同意授权" +} else {// 用户拒绝授权" +@Beanhttp// 自定义认证转换器@Override// 自定义转换逻辑= null) {// 处理自定义参数// 默认处理@Beanhttp// 自定义成功处理器。原创 2025-04-25 15:53:14 · 929 阅读 · 0 评论 -
OAuth2TokenEndpointFilter类介绍、应用场景和示例代码
是 Spring Security OAuth2 授权服务器中的一个关键过滤器,负责处理 OAuth2 令牌端点(Token Endpoint)的请求。它是 OAuth2 授权服务器实现的核心组件之一,用于处理各种授权类型的令牌请求。@Bean// 自定义认证转换器,添加密码模式支持new OAuth2PasswordAuthenticationConverter() // 自定义的密码模式转换器@Override// 添加自定义响应头// 调用默认实现添加新的授权类型。原创 2025-04-25 15:52:21 · 551 阅读 · 0 评论 -
OAuth2RefreshTokenAuthenticationConverter类介绍、应用场景和示例代码
是 Spring Security OAuth2 授权服务器中的一个认证转换器,专门用于处理 OAuth2 刷新令牌(Refresh Token)的请求。它实现了接口,负责将 HTTP 请求转换为认证对象。@Override// 先调用默认实现// 添加自定义逻辑,如验证额外的参数= null) {@Beannew CustomRefreshTokenAuthenticationConverter(), // 使用自定义转换器))原创 2025-04-23 11:07:58 · 479 阅读 · 0 评论 -
CSRF攻击原理与解决方法
跨站请求伪造(Cross-Site Request Forgery,简称CSRF)是一种常见的网络攻击方式,攻击者通过诱导用户在已认证的网站上执行非预期的操作,从而实现恶意目的。CSRF攻击利用了用户在目标网站上的有效会话,通常无需用户直接参与即可完成攻击。例如,用户登录了银行网站并保持会话有效,攻击者通过诱导用户点击恶意链接或访问伪造页面,触发对银行网站的请求(如转账操作),而浏览器会自动附带用户的有效Cookie,导致请求被网站误认为是合法操作。原创 2025-04-23 11:06:46 · 1658 阅读 · 0 评论 -
OAuth2AuthorizationEndpointConfigurer类介绍、应用场景和示例代码
是 Spring Security OAuth2 授权服务器模块中的一个重要配置类,用于配置 OAuth2 授权端点(/oauth2/authorize)。@Beanhttp// 可以修改默认的转换器列表})// 自定义认证转换器@Override// 自定义转换逻辑@Beanhttp// 可以修改默认的提供者列表})// 自定义认证提供者@Override// 自定义认证逻辑@Override@Beanhttp// 自定义验证逻辑。原创 2025-04-18 15:51:32 · 552 阅读 · 0 评论 -
OAuth2AuthorizationServerConfiguration类介绍、应用场景和示例代码
这个类来自包,是 Spring Boot 自动配置 OAuth2 授权服务器的核心类。@Bean作用:提供客户端注册信息的存储仓库条件:当没有其他Bean存在时才创建:只有当配置了注册客户端时才创建实现:使用内存存储 (),适合开发和测试环境。原创 2025-04-16 17:23:15 · 560 阅读 · 0 评论 -
OAuth2AuthorizationServerWebSecurityConfiguration类介绍、应用场景和示例代码
类是 Spring Boot 自动配置 OAuth2 授权服务器 Web 安全的核心类,负责配置授权服务器的安全过滤链。@Bean// 自定义授权端点访问规则@Bean@Order(Integer.MIN_VALUE + 1) // 在授权服务器过滤器之后。原创 2025-04-16 17:22:27 · 386 阅读 · 0 评论 -
OAuth2AuthorizationServerAutoConfiguration类介绍、应用场景和示例代码
是 Spring Boot 提供的自动配置类,用于自动设置 OAuth2 授权服务器。它是 Spring Authorization Server 项目的一部分,提供了 OAuth 2.1 和 OpenID Connect 1.0 规范的实现。简化了 Spring Authorization Server 的配置过程,通过自动配置机制提供了开箱即用的 OAuth2 授权服务器功能。原创 2025-04-14 08:00:00 · 544 阅读 · 0 评论 -
使用RequiresUser注解介绍、应用场景和示例代码
注解指示方法或者类需要当前用户已经通过认证。它是Apache Shiro安全框架提供的一部分,用于加强应用程序的安全性。原创 2024-08-03 07:00:00 · 453 阅读 · 0 评论 -
使用RequiresPermissions介绍、使用场景和示例代码
注解允许开发者在方法或类级别上定义需要的权限,以确保只有具备相应权限的用户才能执行相应操作。在安全敏感的应用程序中,这种精确的权限控制非常重要,可以有效保护系统资源和数据。注解是Apache Shiro框架中强大的权限控制工具,允许开发者在代码中定义精确的访问权限要求。通过这种方式,可以有效保护系统的安全性和数据的完整性,确保用户仅能执行其有权执行的操作。原创 2024-08-02 20:45:00 · 3572 阅读 · 0 评论 -
使用RequiresGuest注解介绍、应用场景和示例代码
注解是Apache Shiro安全框架中的一部分,用于声明只有未认证的用户(即“guest”用户)才能访问某些方法或类。在应用程序中,可以通过这个注解来限制访问权限,确保只有未经身份验证的用户可以执行特定的操作。注解在Apache Shiro等安全框架中是确保权限控制的一种手段,用于限制只有未认证的用户可以访问特定的方法或类。通过它,开发者可以简单而直观地定义访问权限,保护敏感操作和数据。原创 2024-08-02 08:00:00 · 490 阅读 · 0 评论 -
使用RequiresAuthentication注解介绍、应用场景和示例代码
注解指示方法或者类需要用户进行认证(即登录),否则访问将被拒绝。它通常与 Shiro 的安全管理结合使用,确保用户必须通过身份验证才能访问被注解的代码块。原创 2024-08-02 20:30:00 · 761 阅读 · 0 评论 -
使用RequiresRoles注解介绍、应用场景和示例代码
是 Apache Shiro 提供的注解之一,用于在方法或类级别上指定需要的角色。当方法或类被标记为时,Shiro 将检查当前用户是否具有指定的角色,如果不具备则访问会被拒绝。原创 2024-08-01 07:45:00 · 726 阅读 · 0 评论 -
使用SpringBoot集成Shiro应用场景和示例代码
Apache Shiro是一个强大且易于使用的Java安全框架,提供认证、授权、加密和会话管理等功能。通过与Spring Boot集成,可以方便地实现权限控制和安全管理。@Autowired// 用户认证@Overrideif (user!= null) {} else {throw new UnknownAccountException("用户不存在");// 用户授权@Override// 查询用户角色和权限,设置到AuthorizationInfo中。原创 2024-07-25 08:15:00 · 509 阅读 · 0 评论
分享