Loading projects/cadcAccessControl-Server/build.xml +16 −0 Original line number Diff line number Diff line Loading @@ -138,4 +138,20 @@ value="${ext.lib}/commons-logging.jar"/> <property name="testingJars" value="${lib.commons-logging}:${dev.junit}:${dev.jsonassert}:${dev.httpunit}:${dev.easyMock}:${dev.selenium.server}:${dev.objenesis}:${lib.js}:${lib.nekoHTML}:${lib.xerces}"/> <target name="test" depends="compile,compile-test"> <echo message="Running test suite..." /> <junit printsummary="yes" haltonfailure="yes" fork="yes"> <classpath> <pathelement path="${build}/class"/> <pathelement path="${build}/test/class"/> <pathelement path="${jars}:${testingJars}"/> </classpath> <sysproperty key="ca.nrc.cadc.util.PropertiesReader.dir" value="test"/> <test name="ca.nrc.cadc.ac.server.ldap.LdapUserDAOTest" /> <test name="ca.nrc.cadc.ac.server.ldap.LdapGroupDAOTest" /> <formatter type="plain" usefile="false" /> </junit> </target> </project> projects/cadcAccessControl-Server/config/LdapConfig.dev.properties 0 → 100644 +13 −0 Original line number Diff line number Diff line # This are the configuration fields required by the Ldap ldap-dao unit tests # Tests are more accurate running on Port 636. If it fails due to SSL/Security # issues, then make very sure the ca.crt (gimli2.cadc.dao.nrc.ca:~miscsw/ca.crt) # is installed in your Java Keystore: # scp gimli2.cadc.dao.nrc.ca:~miscsw/ca.crt /tmp/ca.crt # ${JAVA_HOME}/bin/keytool -importcert -keystore ${JAVA_HOME}/jre/lib/security/cacerts -file /tmp/ca.crt server = proc5-03.cadc.dao.nrc.ca port = 636 proxyUser = testproxy usersDn = ou=Users,ou=ds,dc=testcanfar userRequestsDN = ou=UserRequests,ou=ds,dc=testcanfar groupsDn = ou=Groups,ou=ds,dc=testcanfar adminGroupsDn = ou=adminGroups,ou=ds,dc=testcanfar No newline at end of file projects/cadcAccessControl-Server/src/ca/nrc/cadc/ac/server/UserPersistence.java +2 −5 Original line number Diff line number Diff line Loading @@ -73,10 +73,7 @@ import java.security.Principal; import java.util.Collection; import java.util.Map; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserAlreadyExistsException; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.ac.UserRequest; import ca.nrc.cadc.ac.*; import ca.nrc.cadc.net.TransientException; import com.unboundid.ldap.sdk.DN; Loading @@ -91,7 +88,7 @@ public interface UserPersistence<T extends Principal> * @throws TransientException If an temporary, unexpected problem occurred. * @throws AccessControlException If the operation is not permitted. */ Map<String, String> getUsers() Map<String, PersonalDetails> getUsers() throws TransientException, AccessControlException; /** Loading projects/cadcAccessControl-Server/src/ca/nrc/cadc/ac/server/ldap/LdapDAO.java +6 −7 Original line number Diff line number Diff line Loading @@ -68,7 +68,6 @@ */ package ca.nrc.cadc.ac.server.ldap; import ca.nrc.cadc.ac.UserAlreadyExistsException; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.auth.NumericPrincipal; import ca.nrc.cadc.auth.OpenIdPrincipal; Loading @@ -79,18 +78,17 @@ import com.unboundid.ldap.sdk.LDAPException; import com.unboundid.ldap.sdk.ResultCode; import com.unboundid.ldap.sdk.SearchResult; import com.unboundid.ldap.sdk.SearchScope; import org.apache.log4j.Logger; import java.nio.file.FileAlreadyExistsException; import javax.net.SocketFactory; import javax.net.ssl.SSLSocketFactory; import javax.security.auth.Subject; import javax.security.auth.x500.X500Principal; import java.security.AccessControlException; import java.security.AccessController; import java.security.GeneralSecurityException; import java.security.Principal; import java.util.Set; import javax.net.SocketFactory; import javax.net.ssl.SSLSocketFactory; import javax.security.auth.Subject; import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; public abstract class LdapDAO Loading Loading @@ -236,6 +234,7 @@ public abstract class LdapDAO throws TransientException { logger.debug("Ldap result: " + code); System.out.println("Ldap result: " + code); if (code == ResultCode.INSUFFICIENT_ACCESS_RIGHTS) { Loading projects/cadcAccessControl-Server/src/ca/nrc/cadc/ac/server/ldap/LdapGroupDAO.java +10 −13 Original line number Diff line number Diff line Loading @@ -68,18 +68,6 @@ */ package ca.nrc.cadc.ac.server.ldap; import java.security.AccessControlException; import java.security.Principal; import java.util.ArrayList; import java.util.Collection; import java.util.HashSet; import java.util.List; import java.util.Set; import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.ActivatedGroup; import ca.nrc.cadc.ac.Group; import ca.nrc.cadc.ac.GroupAlreadyExistsException; Loading @@ -89,7 +77,6 @@ import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.net.TransientException; import ca.nrc.cadc.util.StringUtil; import com.unboundid.ldap.sdk.AddRequest; import com.unboundid.ldap.sdk.Attribute; import com.unboundid.ldap.sdk.DN; Loading @@ -106,6 +93,16 @@ import com.unboundid.ldap.sdk.SearchResult; import com.unboundid.ldap.sdk.SearchResultEntry; import com.unboundid.ldap.sdk.SearchScope; import com.unboundid.ldap.sdk.controls.ProxiedAuthorizationV2RequestControl; import org.apache.log4j.Logger; import javax.security.auth.x500.X500Principal; import java.security.AccessControlException; import java.security.Principal; import java.util.ArrayList; import java.util.Collection; import java.util.HashSet; import java.util.List; import java.util.Set; public class LdapGroupDAO<T extends Principal> extends LdapDAO { Loading Loading
projects/cadcAccessControl-Server/build.xml +16 −0 Original line number Diff line number Diff line Loading @@ -138,4 +138,20 @@ value="${ext.lib}/commons-logging.jar"/> <property name="testingJars" value="${lib.commons-logging}:${dev.junit}:${dev.jsonassert}:${dev.httpunit}:${dev.easyMock}:${dev.selenium.server}:${dev.objenesis}:${lib.js}:${lib.nekoHTML}:${lib.xerces}"/> <target name="test" depends="compile,compile-test"> <echo message="Running test suite..." /> <junit printsummary="yes" haltonfailure="yes" fork="yes"> <classpath> <pathelement path="${build}/class"/> <pathelement path="${build}/test/class"/> <pathelement path="${jars}:${testingJars}"/> </classpath> <sysproperty key="ca.nrc.cadc.util.PropertiesReader.dir" value="test"/> <test name="ca.nrc.cadc.ac.server.ldap.LdapUserDAOTest" /> <test name="ca.nrc.cadc.ac.server.ldap.LdapGroupDAOTest" /> <formatter type="plain" usefile="false" /> </junit> </target> </project>
projects/cadcAccessControl-Server/config/LdapConfig.dev.properties 0 → 100644 +13 −0 Original line number Diff line number Diff line # This are the configuration fields required by the Ldap ldap-dao unit tests # Tests are more accurate running on Port 636. If it fails due to SSL/Security # issues, then make very sure the ca.crt (gimli2.cadc.dao.nrc.ca:~miscsw/ca.crt) # is installed in your Java Keystore: # scp gimli2.cadc.dao.nrc.ca:~miscsw/ca.crt /tmp/ca.crt # ${JAVA_HOME}/bin/keytool -importcert -keystore ${JAVA_HOME}/jre/lib/security/cacerts -file /tmp/ca.crt server = proc5-03.cadc.dao.nrc.ca port = 636 proxyUser = testproxy usersDn = ou=Users,ou=ds,dc=testcanfar userRequestsDN = ou=UserRequests,ou=ds,dc=testcanfar groupsDn = ou=Groups,ou=ds,dc=testcanfar adminGroupsDn = ou=adminGroups,ou=ds,dc=testcanfar No newline at end of file
projects/cadcAccessControl-Server/src/ca/nrc/cadc/ac/server/UserPersistence.java +2 −5 Original line number Diff line number Diff line Loading @@ -73,10 +73,7 @@ import java.security.Principal; import java.util.Collection; import java.util.Map; import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserAlreadyExistsException; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.ac.UserRequest; import ca.nrc.cadc.ac.*; import ca.nrc.cadc.net.TransientException; import com.unboundid.ldap.sdk.DN; Loading @@ -91,7 +88,7 @@ public interface UserPersistence<T extends Principal> * @throws TransientException If an temporary, unexpected problem occurred. * @throws AccessControlException If the operation is not permitted. */ Map<String, String> getUsers() Map<String, PersonalDetails> getUsers() throws TransientException, AccessControlException; /** Loading
projects/cadcAccessControl-Server/src/ca/nrc/cadc/ac/server/ldap/LdapDAO.java +6 −7 Original line number Diff line number Diff line Loading @@ -68,7 +68,6 @@ */ package ca.nrc.cadc.ac.server.ldap; import ca.nrc.cadc.ac.UserAlreadyExistsException; import ca.nrc.cadc.auth.HttpPrincipal; import ca.nrc.cadc.auth.NumericPrincipal; import ca.nrc.cadc.auth.OpenIdPrincipal; Loading @@ -79,18 +78,17 @@ import com.unboundid.ldap.sdk.LDAPException; import com.unboundid.ldap.sdk.ResultCode; import com.unboundid.ldap.sdk.SearchResult; import com.unboundid.ldap.sdk.SearchScope; import org.apache.log4j.Logger; import java.nio.file.FileAlreadyExistsException; import javax.net.SocketFactory; import javax.net.ssl.SSLSocketFactory; import javax.security.auth.Subject; import javax.security.auth.x500.X500Principal; import java.security.AccessControlException; import java.security.AccessController; import java.security.GeneralSecurityException; import java.security.Principal; import java.util.Set; import javax.net.SocketFactory; import javax.net.ssl.SSLSocketFactory; import javax.security.auth.Subject; import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; public abstract class LdapDAO Loading Loading @@ -236,6 +234,7 @@ public abstract class LdapDAO throws TransientException { logger.debug("Ldap result: " + code); System.out.println("Ldap result: " + code); if (code == ResultCode.INSUFFICIENT_ACCESS_RIGHTS) { Loading
projects/cadcAccessControl-Server/src/ca/nrc/cadc/ac/server/ldap/LdapGroupDAO.java +10 −13 Original line number Diff line number Diff line Loading @@ -68,18 +68,6 @@ */ package ca.nrc.cadc.ac.server.ldap; import java.security.AccessControlException; import java.security.Principal; import java.util.ArrayList; import java.util.Collection; import java.util.HashSet; import java.util.List; import java.util.Set; import javax.security.auth.x500.X500Principal; import org.apache.log4j.Logger; import ca.nrc.cadc.ac.ActivatedGroup; import ca.nrc.cadc.ac.Group; import ca.nrc.cadc.ac.GroupAlreadyExistsException; Loading @@ -89,7 +77,6 @@ import ca.nrc.cadc.ac.User; import ca.nrc.cadc.ac.UserNotFoundException; import ca.nrc.cadc.net.TransientException; import ca.nrc.cadc.util.StringUtil; import com.unboundid.ldap.sdk.AddRequest; import com.unboundid.ldap.sdk.Attribute; import com.unboundid.ldap.sdk.DN; Loading @@ -106,6 +93,16 @@ import com.unboundid.ldap.sdk.SearchResult; import com.unboundid.ldap.sdk.SearchResultEntry; import com.unboundid.ldap.sdk.SearchScope; import com.unboundid.ldap.sdk.controls.ProxiedAuthorizationV2RequestControl; import org.apache.log4j.Logger; import javax.security.auth.x500.X500Principal; import java.security.AccessControlException; import java.security.Principal; import java.util.ArrayList; import java.util.Collection; import java.util.HashSet; import java.util.List; import java.util.Set; public class LdapGroupDAO<T extends Principal> extends LdapDAO { Loading