diff --git a/core/src/main/java/org/springframework/security/userdetails/hierarchicalroles/RoleHierarchyImpl.java b/core/src/main/java/org/springframework/security/userdetails/hierarchicalroles/RoleHierarchyImpl.java index 7b6d68e2cd..76782d66c0 100755 --- a/core/src/main/java/org/springframework/security/userdetails/hierarchicalroles/RoleHierarchyImpl.java +++ b/core/src/main/java/org/springframework/security/userdetails/hierarchicalroles/RoleHierarchyImpl.java @@ -126,7 +126,7 @@ public class RoleHierarchyImpl implements RoleHierarchy { * references a set of the reachable lower roles. */ private void buildRolesReachableInOneStepMap() { - String parsingRegex = "(\\s*(\\w+)\\s*\\>\\s*(\\w+))"; + String parsingRegex = "(\\s*([^\\s>]+)\\s*\\>\\s*([^\\s>]+))"; Pattern pattern = Pattern.compile(parsingRegex); Matcher roleHierarchyMatcher = pattern.matcher(roleHierarchyStringRepresentation);