|
|
|
@ -35,7 +35,6 @@ import org.springframework.core.convert.ConversionException; |
|
|
|
import org.springframework.core.convert.ConversionService; |
|
|
|
import org.springframework.core.convert.ConversionService; |
|
|
|
import org.springframework.jdbc.core.JdbcTemplate; |
|
|
|
import org.springframework.jdbc.core.JdbcTemplate; |
|
|
|
import org.springframework.jdbc.core.ResultSetExtractor; |
|
|
|
import org.springframework.jdbc.core.ResultSetExtractor; |
|
|
|
import org.springframework.security.acls.domain.*; |
|
|
|
|
|
|
|
import org.springframework.security.acls.domain.AccessControlEntryImpl; |
|
|
|
import org.springframework.security.acls.domain.AccessControlEntryImpl; |
|
|
|
import org.springframework.security.acls.domain.AclAuthorizationStrategy; |
|
|
|
import org.springframework.security.acls.domain.AclAuthorizationStrategy; |
|
|
|
import org.springframework.security.acls.domain.AclImpl; |
|
|
|
import org.springframework.security.acls.domain.AclImpl; |
|
|
|
@ -43,6 +42,7 @@ import org.springframework.security.acls.domain.AuditLogger; |
|
|
|
import org.springframework.security.acls.domain.DefaultPermissionFactory; |
|
|
|
import org.springframework.security.acls.domain.DefaultPermissionFactory; |
|
|
|
import org.springframework.security.acls.domain.DefaultPermissionGrantingStrategy; |
|
|
|
import org.springframework.security.acls.domain.DefaultPermissionGrantingStrategy; |
|
|
|
import org.springframework.security.acls.domain.GrantedAuthoritySid; |
|
|
|
import org.springframework.security.acls.domain.GrantedAuthoritySid; |
|
|
|
|
|
|
|
import org.springframework.security.acls.domain.ObjectIdentityRetrievalStrategyImpl; |
|
|
|
import org.springframework.security.acls.domain.PermissionFactory; |
|
|
|
import org.springframework.security.acls.domain.PermissionFactory; |
|
|
|
import org.springframework.security.acls.domain.PrincipalSid; |
|
|
|
import org.springframework.security.acls.domain.PrincipalSid; |
|
|
|
import org.springframework.security.acls.model.AccessControlEntry; |
|
|
|
import org.springframework.security.acls.model.AccessControlEntry; |
|
|
|
@ -137,7 +137,6 @@ public class BasicLookupStrategy implements LookupStrategy { |
|
|
|
|
|
|
|
|
|
|
|
private AclClassIdUtils aclClassIdUtils; |
|
|
|
private AclClassIdUtils aclClassIdUtils; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* Constructor accepting mandatory arguments |
|
|
|
* Constructor accepting mandatory arguments |
|
|
|
* @param dataSource to access the database |
|
|
|
* @param dataSource to access the database |
|
|
|
@ -158,7 +157,6 @@ public class BasicLookupStrategy implements LookupStrategy { |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
public BasicLookupStrategy(DataSource dataSource, AclCache aclCache, |
|
|
|
public BasicLookupStrategy(DataSource dataSource, AclCache aclCache, |
|
|
|
AclAuthorizationStrategy aclAuthorizationStrategy, PermissionGrantingStrategy grantingStrategy) { |
|
|
|
AclAuthorizationStrategy aclAuthorizationStrategy, PermissionGrantingStrategy grantingStrategy) { |
|
|
|
|
|
|
|
|
|
|
|
Assert.notNull(dataSource, "DataSource required"); |
|
|
|
Assert.notNull(dataSource, "DataSource required"); |
|
|
|
Assert.notNull(aclCache, "AclCache required"); |
|
|
|
Assert.notNull(aclCache, "AclCache required"); |
|
|
|
Assert.notNull(aclAuthorizationStrategy, "AclAuthorizationStrategy required"); |
|
|
|
Assert.notNull(aclAuthorizationStrategy, "AclAuthorizationStrategy required"); |
|
|
|
@ -494,8 +492,8 @@ public class BasicLookupStrategy implements LookupStrategy { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public void setObjectIdentityGenerator(ObjectIdentityGenerator objectIdentityGenerator) { |
|
|
|
public final void setObjectIdentityGenerator(ObjectIdentityGenerator objectIdentityGenerator) { |
|
|
|
Assert.notNull(objectIdentityGenerator,"The provided strategy has to be not null!"); |
|
|
|
Assert.notNull(objectIdentityGenerator, "objectIdentityGenerator cannot be null"); |
|
|
|
this.objectIdentityGenerator = objectIdentityGenerator; |
|
|
|
this.objectIdentityGenerator = objectIdentityGenerator; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -580,7 +578,8 @@ public class BasicLookupStrategy implements LookupStrategy { |
|
|
|
// target id type, e.g. UUID.
|
|
|
|
// target id type, e.g. UUID.
|
|
|
|
Serializable identifier = (Serializable) rs.getObject("object_id_identity"); |
|
|
|
Serializable identifier = (Serializable) rs.getObject("object_id_identity"); |
|
|
|
identifier = BasicLookupStrategy.this.aclClassIdUtils.identifierFrom(identifier, rs); |
|
|
|
identifier = BasicLookupStrategy.this.aclClassIdUtils.identifierFrom(identifier, rs); |
|
|
|
ObjectIdentity objectIdentity = objectIdentityGenerator.createObjectIdentity(identifier,rs.getString("class")); |
|
|
|
ObjectIdentity objectIdentity = BasicLookupStrategy.this.objectIdentityGenerator |
|
|
|
|
|
|
|
.createObjectIdentity(identifier, rs.getString("class")); |
|
|
|
|
|
|
|
|
|
|
|
Acl parentAcl = null; |
|
|
|
Acl parentAcl = null; |
|
|
|
long parentAclId = rs.getLong("parent_object"); |
|
|
|
long parentAclId = rs.getLong("parent_object"); |
|
|
|
|