`

spring-security4 无权限问题解决方案

阅读更多
设置资源后无法进行访问,主要是由于spring security 在判断角色的时候,自动加上了前缀 ORLE_,直接上diamante就懂了;

类:org.springframework.security.access.expression.SecurityExpressionRoot

public final boolean hasRole(String role) {
		return hasAnyRole(role);
	}

	public final boolean hasAnyRole(String... roles) {
		return hasAnyAuthorityName(defaultRolePrefix, roles);
	}

	private boolean hasAnyAuthorityName(String prefix, String... roles) {
		Set<String> roleSet = getAuthoritySet();

		for (String role : roles) {
			String defaultedRole = getRoleWithDefaultPrefix(prefix, role);
			if (roleSet.contains(defaultedRole)) {
				return true;
			}
		}

		return false;
	}
	private static String getRoleWithDefaultPrefix(String defaultRolePrefix, String role) {
		if (role == null) {
			return role;
		}
		if (defaultRolePrefix == null || defaultRolePrefix.length() == 0) {
			return role;
		}
		if (role.startsWith(defaultRolePrefix)) {
			return role;
		}
		return defaultRolePrefix + role;
	}
分享到:
评论

相关推荐

    spring-security所需要的jar包,

    Spring Security 是一个强大的Java安全框架,它为Web应用程序提供了全面的安全解决方案。这个压缩包包含了Spring Security的核心组件,以及与其相关的 Acegi Security 框架的一些版本。这些jar包是构建和配置Spring ...

    spring-security Jar包

    这个框架被广泛应用于Web应用程序,提供了一套全面的安全解决方案,包括用户认证、授权、会话管理以及防止常见攻击(如CSRF、XSS等)。在你提到的"spring-security-3.0.5.RELEASE"版本中,我们将深入探讨该框架的...

    spring-boot spring-security-oauth2 完整demo

    Spring Security是Spring生态下的一个安全模块,它提供了全面的安全管理解决方案,包括身份验证、授权、CSRF防护等。Spring Security的配置灵活性高,能够适应各种安全需求,而且与Spring Boot结合使用时,可以无缝...

    spring security 4.0.0所需jar包

    在Spring Security 4.0.0中,这些jar包一起工作,提供了一套完整的解决方案,用于实现用户认证(验证用户身份)和授权(决定用户是否允许访问特定资源)。例如,`spring-security-core`负责基本的认证和授权逻辑,`...

    spring-security-oauth2-authorization-server.zip

    Spring Security是Java开发人员广泛使用的安全框架,它提供了全面的身份验证和授权解决方案。本项目“spring-security-oauth2-authorization-server”将带你深入理解如何利用Spring Security OAuth2构建一个授权...

    spring-security-3.1.4

    这个"spring-security-3.1.4"版本是该框架的一个稳定发行版,提供了在2012年的安全解决方案。这个zip包包含了Spring Security的核心库、文档、示例代码和其他必要的资源,便于开发者下载和学习。 Spring Security的...

    spring-security-core-3.1.0.RC1.jar

    《Spring Security核心库3.1.0.RC1详解》 ...它提供了认证、授权和访问控制的全面解决方案,为开发者带来了强大的安全防护能力。了解和熟练掌握Spring Security能帮助开发者构建更安全、更健壮的应用系统。

    springsecurity所有jar包

    它为Web应用和企业级应用提供安全解决方案,包括用户认证、权限控制、会话管理等多个方面。在Spring Security 3.1.2版本中,包含了多个jar包,每个jar包都有其特定的功能,下面将对这些关键jar包进行详细介绍。 1. ...

    spring-security-ldap-2.0.1

    在Java企业级开发中,Spring Security作为一款强大的安全框架,为应用程序提供了全面的安全管理解决方案。而其与LDAP(Lightweight Directory Access Protocol)的集成,使得身份验证和授权过程更加灵活高效。本文将...

    spring-security-2.0.5

    Spring Security 2.0.5作为Spring生态系统的安全模块,为开发者提供了一套强大且灵活的权限管理解决方案。本文将深入探讨Spring Security的核心概念、主要功能以及与Spring框架的整合。 **1. Spring Security简介**...

    spring-security-core-2.0.5.RELEASE.src

    Spring Security提供了一整套解决方案,包括认证、授权、会话管理、CSRF防护等,以确保应用程序的安全性。它基于Spring框架构建,易于与其他Spring组件集成,如Spring MVC、Spring Boot等。`spring-security-core`是...

    spring-boot与spring-security整合的java代码

    Spring Security是Spring生态系统的组成部分,提供了认证和授权的解决方案。它能够处理登录、会话管理、访问控制等功能,确保只有经过验证的用户才能访问特定的资源。Spring Security的主要组件包括:过滤器链、认证...

    spring-cloud-security例子

    总结,Spring Cloud Security为微服务架构提供了全面的安全解决方案,通过用户身份认证和权限管理,确保了服务的安全性。在实际开发中,我们可以参考spring-boot-security-master项目,根据业务需求进行定制化配置,...

    spring-security-4.2.4(全)资源包

    9. **与其他Spring项目集成**:Spring Security可以很好地与Spring MVC、Spring Data、Spring Boot等其他Spring生态系统组件集成,提供全面的安全解决方案。 10. **持续更新与维护**:4.2.4是官方的一个正式版本,...

    spring-security-4.1.2.RELEASE-dist.zip

    总的来说,Spring Security是Java开发者的强大工具,它提供了一套全面的安全解决方案,帮助我们构建安全的应用程序。通过深入理解并正确使用Spring Security,你可以有效地保护你的系统免受各种网络安全威胁。

    spring-security 官方文档 中文版

    Spring Security 是一款基于 Spring 框架的安全插件,提供了完整的安全性解决方案,包括身份认证(Authentication)、授权(Authorization)以及会话管理(Session Management)等功能。Spring Security 的设计目标是为...

    spring-security4.0.zip

    - `thymeleaf-extras-springsecurity4-3.0.0.RELEASE.jar`: 使得Thymeleaf模板引擎能够与Spring Security无缝协作,方便地在页面上展示权限相关的控制。 10. **消息安全** - `spring-security-messaging-4.0.0....

    spring-security-reference.pdf

    由于提供的文件内容是关于Spring Security的参考资料,接下来将详细说明Spring ...在对Spring Security的深入研究中,开发者可以更全面地理解框架所提供的安全解决方案,以及如何将这些方案应用到实际的项目中去。

    spring-security-helloworld

    Spring Security是一个强大的安全框架,为Java应用程序提供了全面的安全管理解决方案。 【描述】"Spring-security demo" 暗示这是一个用于演示Spring Security功能的实例。通常,这样的项目会包含从用户认证到授权...

    spring-security-3.0.5.RELEASE 官方下载

    这个框架的主要目的是为Web应用程序提供全面的安全解决方案。"spring-security-3.0.5.RELEASE"是该框架的一个特定版本,发布于某个时间点,可能包含了一些修复、改进和新功能。 在Spring Security 3.0.5.RELEASE中...

Global site tag (gtag.js) - Google Analytics