Author: angela
Date: Mon Aug 19 16:15:49 2019
New Revision: 1865474
URL: http://svn.apache.org/viewvc?rev=1865474&view=rev
Log:
OAK-8557 : CugPolicyImpl.isValidPrincipal contains unreachable default option
Modified:
jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java
jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java
Modified:
jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java?rev=1865474&r1=1865473&r2=1865474&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java
(original)
+++
jackrabbit/oak/trunk/oak-authorization-cug/src/main/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImpl.java
Mon Aug 19 16:15:49 2019
@@ -138,11 +138,6 @@ class CugPolicyImpl implements CugPolicy
boolean isValid = true;
switch (importBehavior) {
- case ImportBehavior.ABORT:
- if (!principalManager.hasPrincipal(name)) {
- throw new AccessControlException("Unknown principal " +
name);
- }
- break;
case ImportBehavior.IGNORE:
if (!principalManager.hasPrincipal(name)) {
log.debug("Ignoring unknown principal {}", name);
@@ -152,8 +147,10 @@ class CugPolicyImpl implements CugPolicy
case ImportBehavior.BESTEFFORT:
log.debug("Best effort: don't verify existence of
principals.");
break;
- default:
- throw new IllegalStateException("Unsupported import behavior "
+ importBehavior);
+ default: //ImportBehavior.ABORT
+ if (!principalManager.hasPrincipal(name)) {
+ throw new AccessControlException("Unknown principal " +
name);
+ }
}
return isValid;
}
Modified:
jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java?rev=1865474&r1=1865473&r2=1865474&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java
(original)
+++
jackrabbit/oak/trunk/oak-authorization-cug/src/test/java/org/apache/jackrabbit/oak/spi/security/authorization/cug/impl/CugPolicyImplTest.java
Mon Aug 19 16:15:49 2019
@@ -27,7 +27,6 @@ import org.apache.jackrabbit.oak.namepat
import org.apache.jackrabbit.oak.namepath.impl.NamePathMapperImpl;
import org.apache.jackrabbit.oak.spi.security.authorization.cug.CugExclude;
import org.apache.jackrabbit.oak.spi.security.authorization.cug.CugPolicy;
-import org.apache.jackrabbit.oak.spi.security.principal.AdminPrincipal;
import org.apache.jackrabbit.oak.spi.security.principal.EveryonePrincipal;
import org.apache.jackrabbit.oak.spi.security.principal.PrincipalImpl;
import org.apache.jackrabbit.oak.spi.security.principal.SystemUserPrincipal;
@@ -41,7 +40,10 @@ import java.util.Collections;
import java.util.Iterator;
import java.util.Set;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotSame;
+import static org.junit.Assert.assertTrue;
public class CugPolicyImplTest extends AbstractSecurityTest {
@@ -76,13 +78,9 @@ public class CugPolicyImplTest extends A
}
private Principal getExcludedPrincipal() {
- return new SystemUserPrincipal() {
- @Override
- public String getName() {
- return "excluded";
- }
- };
+ return (SystemUserPrincipal) () -> "excluded";
}
+
@Test
public void testPrincipalSetPolicy() {
assertTrue(createCugPolicy(principals) instanceof PrincipalSetPolicy);