From a207acf7cb8724cedc0afb3411c4715d6f805ec6 Mon Sep 17 00:00:00 2001 From: Luke Taylor Date: Wed, 5 Nov 2008 01:09:14 +0000 Subject: [PATCH] SEC-999: Fix broken test which was failing due to use of incorrect authentication object. --- .../security/expression/SecurityExpressionRoot.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/org/springframework/security/expression/SecurityExpressionRoot.java b/core/src/main/java/org/springframework/security/expression/SecurityExpressionRoot.java index 8f3ffd643a..932c78aafa 100644 --- a/core/src/main/java/org/springframework/security/expression/SecurityExpressionRoot.java +++ b/core/src/main/java/org/springframework/security/expression/SecurityExpressionRoot.java @@ -4,6 +4,7 @@ import java.util.Set; import org.springframework.security.Authentication; import org.springframework.security.AuthenticationTrustResolver; +import org.springframework.security.GrantedAuthority; import org.springframework.security.util.AuthorityUtils; /** @@ -41,7 +42,13 @@ public class SecurityExpressionRoot { } public final boolean hasRole(String role) { - return AuthorityUtils.userHasAuthority(role); + for (GrantedAuthority authority : authentication.getAuthorities()) { + if (role.equals(authority.getAuthority())) { + return true; + } + } + + return false; } public final boolean hasAnyRole(String... roles) {