Skip to content
Snippets Groups Projects
Commit ba23b978 authored by Jeff Burke's avatar Jeff Burke
Browse files

ac2: move group web classes into own package, update and change user passwords in DAO.

parent 0bc7947b
Branches
Tags
No related merge requests found
Showing
with 55 additions and 125 deletions
......@@ -137,19 +137,7 @@
<property name="lib.commons-logging"
value="${ext.lib}/commons-logging.jar"/>
<property name="testingJars"
<<<<<<< HEAD
value="${lib.commons-logging}:${dev.junit}:${dev.jsonassert}:${dev.httpunit}:${dev.easyMock}:${dev.selenium.server}:${dev.objenesis}:${lib.js}:${lib.nekoHTML}:${lib.xerces}"/>
=======
value="${lib.commons-logging}:${dev.junit}:${dev.httpunit}:${dev.easyMock}:${dev.selenium.server}:${dev.objenesis}:${lib.js}:${lib.nekoHTML}:${lib.xerces}"/>
<target name="setup-test">
<echo>******************</echo>
<echo>******************</echo>
<echo>Don't forget to set the ca.nrc.cadc.util.PropertiesReader.dir system property first!</echo>
<echo>e.g. ant -Dca.nrc.cadc.util.PropertiesReader.dir=test clean build test</echo>
<echo>******************</echo>
<echo>******************</echo>
</target>
<target name="test" depends="compile,compile-test">
<echo message="Running test suite..." />
......@@ -161,10 +149,9 @@
</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" />-->
<test name="ca.nrc.cadc.ac.server.ldap.LdapGroupDAOTest" />
<formatter type="plain" usefile="false" />
</junit>
</target>
>>>>>>> s1734
</project>
......@@ -66,31 +66,15 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
import java.io.IOException;
import java.security.AccessControlContext;
import java.security.AccessControlException;
import java.security.AccessController;
import java.security.Principal;
import java.util.Collection;
import java.util.Date;
import java.util.Iterator;
import java.util.Set;
import javax.security.auth.Subject;
import javax.security.auth.x500.X500Principal;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
package ca.nrc.cadc.ac.server.web.groups;
import ca.nrc.cadc.ac.Group;
import ca.nrc.cadc.ac.GroupNotFoundException;
import ca.nrc.cadc.ac.xml.GroupsWriter;
import ca.nrc.cadc.ac.UserNotFoundException;
import ca.nrc.cadc.ac.server.GroupPersistence;
import ca.nrc.cadc.ac.server.PluginFactory;
import ca.nrc.cadc.ac.server.RequestValidator;
import ca.nrc.cadc.ac.xml.GroupsWriter;
import ca.nrc.cadc.auth.AuthenticationUtil;
import ca.nrc.cadc.auth.HttpPrincipal;
import ca.nrc.cadc.net.TransientException;
......@@ -100,9 +84,23 @@ import ca.nrc.cadc.uws.server.JobRunner;
import ca.nrc.cadc.uws.server.JobUpdater;
import ca.nrc.cadc.uws.server.SyncOutput;
import ca.nrc.cadc.uws.util.JobLogInfo;
import org.apache.log4j.Logger;
import javax.security.auth.Subject;
import javax.security.auth.x500.X500Principal;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.security.AccessControlContext;
import java.security.AccessControlException;
import java.security.AccessController;
import java.security.Principal;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.Iterator;
import java.util.Set;
public class ACSearchRunner implements JobRunner
{
......
......@@ -66,7 +66,7 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import ca.nrc.cadc.ac.Group;
import ca.nrc.cadc.ac.GroupAlreadyExistsException;
......
......@@ -66,18 +66,16 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import ca.nrc.cadc.ac.Group;
import ca.nrc.cadc.ac.MemberAlreadyExistsException;
import ca.nrc.cadc.ac.User;
import ca.nrc.cadc.ac.server.GroupPersistence;
import ca.nrc.cadc.ac.server.UserPersistence;
import ca.nrc.cadc.auth.AuthenticationUtil;
import java.security.Principal;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
public class AddUserMemberAction extends GroupsAction
{
......
......@@ -66,7 +66,7 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import java.io.InputStream;
import java.util.ArrayList;
......
......@@ -66,7 +66,7 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import java.util.ArrayList;
......
......@@ -65,7 +65,7 @@
* $Revision: 4 $
*
************************************************************************
*/package ca.nrc.cadc.ac.server.web;
*/package ca.nrc.cadc.ac.server.web.groups;
import ca.nrc.cadc.ac.Group;
import ca.nrc.cadc.ac.server.GroupPersistence;
......
......@@ -67,7 +67,7 @@
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import java.io.Writer;
import java.util.Collection;
......
......@@ -66,7 +66,7 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import ca.nrc.cadc.log.ServletLogInfo;
import java.util.List;
......
......@@ -66,7 +66,7 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import java.io.IOException;
import java.security.AccessControlException;
......
......@@ -66,7 +66,7 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import java.io.IOException;
import java.net.URL;
......
......@@ -66,7 +66,7 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import java.io.IOException;
......
......@@ -66,7 +66,7 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import java.io.InputStream;
import java.util.ArrayList;
......
......@@ -66,14 +66,13 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import ca.nrc.cadc.ac.Group;
import ca.nrc.cadc.ac.GroupNotFoundException;
import ca.nrc.cadc.ac.server.GroupPersistence;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
public class RemoveGroupMemberAction extends GroupsAction
{
......
......@@ -66,13 +66,12 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import ca.nrc.cadc.ac.Group;
import ca.nrc.cadc.ac.MemberNotFoundException;
import ca.nrc.cadc.ac.User;
import ca.nrc.cadc.ac.server.GroupPersistence;
import ca.nrc.cadc.ac.server.UserPersistence;
import ca.nrc.cadc.auth.AuthenticationUtil;
import java.security.Principal;
import java.util.ArrayList;
......
......@@ -68,6 +68,17 @@
*/
package ca.nrc.cadc.ac.server.web.users;
import ca.nrc.cadc.ac.PersonalDetails;
import ca.nrc.cadc.ac.User;
import ca.nrc.cadc.ac.UserNotFoundException;
import ca.nrc.cadc.ac.UserRequest;
import ca.nrc.cadc.ac.server.PluginFactory;
import ca.nrc.cadc.ac.server.UserPersistence;
import ca.nrc.cadc.net.TransientException;
import org.apache.log4j.Logger;
import javax.security.auth.Subject;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.io.Writer;
......@@ -77,19 +88,6 @@ import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
import java.util.Map;
import javax.security.auth.Subject;
import javax.servlet.http.HttpServletResponse;
import ca.nrc.cadc.ac.PersonalDetails;
import ca.nrc.cadc.ac.User;
import ca.nrc.cadc.ac.UserRequest;
import org.apache.log4j.Logger;
import ca.nrc.cadc.ac.UserNotFoundException;
import ca.nrc.cadc.ac.server.PluginFactory;
import ca.nrc.cadc.ac.server.UserPersistence;
import ca.nrc.cadc.net.TransientException;
public abstract class UsersAction
implements PrivilegedExceptionAction<Object>
{
......
......@@ -5,7 +5,7 @@
# 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
port = 389
proxyUser = testproxy
usersDn = ou=Users,ou=ds,dc=testcanfar
userRequestsDN = ou=UserRequests,ou=ds,dc=testcanfar
......
......@@ -69,11 +69,11 @@
package ca.nrc.cadc.ac.server;
import ca.nrc.cadc.ac.Role;
import ca.nrc.cadc.ac.server.web.AddUserMemberActionTest;
import ca.nrc.cadc.ac.server.web.groups.AddUserMemberActionTest;
import ca.nrc.cadc.auth.AuthenticationUtil;
import ca.nrc.cadc.util.Log4jInit;
import ca.nrc.cadc.uws.Parameter;
import java.security.Principal;
import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Level;
......
......@@ -69,7 +69,6 @@
package ca.nrc.cadc.ac.server.ldap;
import ca.nrc.cadc.ac.PersonalDetails;
import ca.nrc.cadc.ac.PosixDetails;
import ca.nrc.cadc.ac.User;
import ca.nrc.cadc.ac.UserDetails;
import ca.nrc.cadc.ac.UserRequest;
......@@ -132,7 +131,7 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
/**
* Test of addUser method, of class LdapUserDAO.
*/
// @Test
@Test
public void testAddUser() throws Exception
{
final User<HttpPrincipal> expected = new User<HttpPrincipal>(new HttpPrincipal(getUserID()));
......@@ -152,7 +151,7 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
/**
* Test of getUser method, of class LdapUserDAO.
*/
// @Test
@Test
public void testGetUser() throws Exception
{
Subject subject = new Subject();
......@@ -167,8 +166,6 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
try
{
User<X500Principal> actual = getUserDAO().getUser(testUser.getUserID());
User<X500Principal> actual = getUserDAO()
.getUser(testUser.getUserID());
check(testUser, actual);
return null;
......@@ -185,7 +182,7 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
/**
* Test of getUserGroups method, of class LdapUserDAO.
*/
// @Test
@Test
public void testGetUserGroups() throws Exception
{
Subject subject = new Subject();
......@@ -198,11 +195,7 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
{
try
{
Collection<DN> groups = getUserDAO().getUserGroups(testUser.getUserID(), false);
assertNotNull(groups);
assertTrue(!groups.isEmpty());
Collection<DN> groups =
getUserDAO().getUserGroups(testUser.getUserID(),
Collection<DN> groups = getUserDAO().getUserGroups(testUser.getUserID(),
false);
assertNotNull("Groups should not be null.", groups);
......@@ -211,9 +204,6 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
log.debug(groupDN);
}
groups = getUserDAO().getUserGroups(testUser.getUserID(), true);
assertNotNull(groups);
assertTrue(!groups.isEmpty());
groups = getUserDAO().getUserGroups(testUser.getUserID(),
true);
assertNotNull("Groups should not be null.", groups);
......@@ -235,7 +225,7 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
/**
* Test of getUserGroups method, of class LdapUserDAO.
*/
// @Test
@Test
public void testIsMember() throws Exception
{
Subject subject = new Subject();
......@@ -249,16 +239,9 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
try
{
boolean isMember = getUserDAO().isMember(testUser.getUserID(), "foo");
assertFalse(isMember);
boolean isMember =
getUserDAO().isMember(testUser.getUserID(), "foo");
assertFalse("Membership should not exist.", isMember);
String groupDN = "cn=cadcdaotestgroup1," + config.getGroupsDN();
isMember = getUserDAO().isMember(testUser.getUserID(), groupDN);
assertTrue(isMember);
String groupDN = "cn=cadcdaotestgroup1,"
+ config.getGroupsDN();
isMember = getUserDAO().isMember(testUser.getUserID(),
groupDN);
assertTrue("Membership should exist.", isMember);
......@@ -276,7 +259,7 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
/**
* Test of getMember.
*/
// @Test
@Test
public void testGetMember() throws Exception
{
Subject subject = new Subject();
......@@ -290,8 +273,6 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
try
{
User<X500Principal> actual = getUserDAO().getMember(new DN(testUserDN));
User<X500Principal> actual = getUserDAO()
.getMember(new DN(testUserDN));
check(testUser, actual);
return null;
}
......@@ -314,12 +295,7 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
{
try
{
<<<<<<< HEAD
User<X500Principal> actual = getUserDAO().getMember(new DN(testUserDN));
=======
User<X500Principal> actual = getUserDAO()
.getMember(new DN(testUserDN));
>>>>>>> 57bf534cb0ace85be32da449ca35a73e96a379b2
check(testUser, actual);
return null;
}
......@@ -334,14 +310,12 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
/**
* Test of testGetCadcUserIDs.
*/
// @Test
@Test
public void testGetCadcUserIDs() throws Exception
{
Subject subject = new Subject();
// anonymous access
int users1 = (Integer)Subject.doAs(subject, new PrivilegedExceptionAction<Object>()
int users1 = (Integer) Subject
.doAs(subject, new PrivilegedExceptionAction<Object>()
{
......@@ -363,7 +337,6 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
// authenticated access
subject.getPrincipals().add(testUser.getUserID());
int users2 = (Integer)Subject.doAs(subject, new PrivilegedExceptionAction<Object>()
int users2 = (Integer) Subject
.doAs(subject, new PrivilegedExceptionAction<Object>()
{
......@@ -383,11 +356,10 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
}
});
assertEquals("User listing should be independent of the access type",
<<<<<<< HEAD
users1, users2);
}
@Test
// @Test
public void testSetPassword() throws Exception
{
// LDAPConnection connection =
......@@ -507,7 +479,7 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
}
// @Test
@Test
public void testUpdateUser() throws Exception
{
// Create a test user
......@@ -596,9 +568,6 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
});
assertNotNull(updatedUser);
check(testUser2, updatedUser);
=======
users1, users2);
>>>>>>> 57bf534cb0ace85be32da449ca35a73e96a379b2
}
private static void check(final User<? extends Principal> user1, final User<? extends Principal> user2)
......@@ -630,24 +599,6 @@ public class LdapUserDAOTest<T extends Principal> extends AbstractLdapDAOTest
assertTrue(found);
}
}
if (d1 instanceof PosixDetails)
{
PosixDetails pd1 = (PosixDetails) d1;
boolean found = false;
for(UserDetails d2 : user2.details)
{
if(d2 instanceof PosixDetails)
{
PosixDetails pd2 = (PosixDetails) d2;
assertEquals(pd1, pd2);
assertEquals(pd1.getUid(), pd2.getUid());
assertEquals(pd1.getGid(), pd2.getGid());
assertEquals(pd1.getHomeDirectory(), pd2.getHomeDirectory());
found = true;
}
assertTrue(found);
}
}
}
}
......
......@@ -66,7 +66,7 @@
*
************************************************************************
*/
package ca.nrc.cadc.ac.server.web;
package ca.nrc.cadc.ac.server.web.groups;
import ca.nrc.cadc.ac.Group;
import ca.nrc.cadc.ac.GroupAlreadyExistsException;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment