SEC-1231: Authentication.getAuthorities should be of type Collection<GrantedAuthority> and not List<GrantedAuthority>. Refactored the interface and related classes to match (UserDetails etc).

This commit is contained in:
Luke Taylor
2009-10-05 19:28:53 +00:00
parent 07d7c0ddae
commit caff3ee9ba
64 changed files with 296 additions and 355 deletions

View File

@@ -98,12 +98,8 @@ public class AclAuthorizationStrategyImpl implements AclAuthorizationStrategy {
}
// Iterate this principal's authorities to determine right
List<GrantedAuthority> auths = authentication.getAuthorities();
for (int i = 0; i < auths.size(); i++) {
if (requiredAuthority.equals(auths.get(i))) {
return;
}
if (authentication.getAuthorities().contains(requiredAuthority)) {
return;
}
// Try to get permission via ACEs within the ACL

View File

@@ -16,6 +16,7 @@
package org.springframework.security.acls.domain;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import org.springframework.security.access.hierarchicalroles.NullRoleHierarchy;
@@ -51,7 +52,7 @@ public class SidRetrievalStrategyImpl implements SidRetrievalStrategy {
//~ Methods ========================================================================================================
public List<Sid> getSids(Authentication authentication) {
List<GrantedAuthority> authorities = roleHierarchy.getReachableGrantedAuthorities(authentication.getAuthorities());
Collection<GrantedAuthority> authorities = roleHierarchy.getReachableGrantedAuthorities(authentication.getAuthorities());
List<Sid> sids = new ArrayList<Sid>(authorities.size() + 1);
sids.add(new PrincipalSid(authentication));