You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by at...@apache.org on 2008/09/05 09:09:48 UTC
svn commit: r692356 - in
/portals/jetspeed-2/portal/branches/security-refactoring:
components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/
jetspeed-api/src/main/java/org/apache/jetspeed/security/
Author: ate
Date: Fri Sep 5 00:09:47 2008
New Revision: 692356
URL: http://svn.apache.org/viewvc?rev=692356&view=rev
Log:
Some corrections and further implementation of RoleManager(Impl)
Modified:
portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/BaseJetspeedPrincipalManager.java
portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/RoleManagerImpl.java
portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientGroup.java
portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientRole.java
portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientUser.java
portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-api/src/main/java/org/apache/jetspeed/security/RoleManager.java
Modified: portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/BaseJetspeedPrincipalManager.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/BaseJetspeedPrincipalManager.java?rev=692356&r1=692355&r2=692356&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/BaseJetspeedPrincipalManager.java (original)
+++ portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/BaseJetspeedPrincipalManager.java Fri Sep 5 00:09:47 2008
@@ -90,7 +90,7 @@
this.jppsm = jppsm;
}
- protected void validatePrincipal(JetspeedPrincipal principal)
+ protected final void validatePrincipal(JetspeedPrincipal principal)
{
if (!principal.getType().getName().equals(principalType.getName()))
{
@@ -102,7 +102,7 @@
}
}
- public JetspeedPrincipalType getPrincipalType()
+ public final JetspeedPrincipalType getPrincipalType()
{
return principalType;
}
@@ -182,7 +182,7 @@
//
// JetspeedPrincipalStorageManager interface implementation
//
- public boolean isMapped()
+ public final boolean isMapped()
{
return jpsm.isMapped();
}
Modified: portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/RoleManagerImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/RoleManagerImpl.java?rev=692356&r1=692355&r2=692356&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/RoleManagerImpl.java (original)
+++ portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/RoleManagerImpl.java Fri Sep 5 00:09:47 2008
@@ -28,10 +28,13 @@
import org.apache.commons.logging.LogFactory;
import org.apache.jetspeed.security.AuthenticationProviderProxy;
import org.apache.jetspeed.security.DependentPrincipalException;
+import org.apache.jetspeed.security.JetspeedPermission;
import org.apache.jetspeed.security.JetspeedPrincipal;
import org.apache.jetspeed.security.JetspeedPrincipalAssociationHandler;
import org.apache.jetspeed.security.JetspeedPrincipalAssociationReference;
import org.apache.jetspeed.security.JetspeedPrincipalAssociationType;
+import org.apache.jetspeed.security.JetspeedPrincipalManager;
+import org.apache.jetspeed.security.JetspeedPrincipalType;
import org.apache.jetspeed.security.PrincipalAlreadyExistsException;
import org.apache.jetspeed.security.PrincipalAssociationRequiredException;
import org.apache.jetspeed.security.PrincipalNotFoundException;
@@ -45,6 +48,7 @@
import org.apache.jetspeed.security.SecurityProvider;
import org.apache.jetspeed.security.attributes.SecurityAttributes;
import org.apache.jetspeed.security.attributes.SecurityAttributesProvider;
+import org.apache.jetspeed.security.spi.JetspeedPrincipalAccessManager;
import org.apache.jetspeed.security.spi.JetspeedPrincipalPermissionStorageManager;
import org.apache.jetspeed.security.spi.JetspeedPrincipalStorageManager;
import org.apache.jetspeed.security.spi.RoleSecurityHandler;
@@ -74,17 +78,33 @@
/** The logger. */
private static final Log log = LogFactory.getLog(RoleManagerImpl.class);
- private JetspeedPrincipalAssociationHandler associationHandler;
+ public RoleManagerImpl(JetspeedPrincipalType principalType, JetspeedPrincipalAccessManager jpam,
+ JetspeedPrincipalStorageManager jpsm,
+ JetspeedPrincipalPermissionStorageManager jppsm)
+ {
+ super(principalType, jpam, jpsm, jppsm);
+ }
- public RoleManagerImpl()
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.RoleManager#newRole(java.lang.String, boolean)
+ */
+ public Role newRole(String name, boolean mapped)
{
- super();
+ RoleImpl role = new RoleImpl();
+ role.setName(name);
+ role.setMapped(mapped);
+ return role;
}
- public RoleManagerImpl(JetspeedPrincipalStorageManager jetspeedPrincipalStorageManager, JetspeedPrincipalPermissionStorageManager jetspeedPrincipalPermissionStorageManager, JetspeedPrincipalAssociationHandler associationHandler)
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.RoleManager#newTransientRole(java.lang.String)
+ */
+ public Role newTransientRole(String name)
{
- super(jetspeedPrincipalStorageManager, jetspeedPrincipalPermissionStorageManager);
- this.associationHandler = associationHandler;
+ TransientRole role = new TransientRole();
+ role.setName(name);
+ return role;
}
/**
@@ -92,15 +112,20 @@
*/
public void addRole(String roleName) throws SecurityException
{
- if (roleExists(roleName))
- {
+ Role role = newRole(roleName, true);
+ try
+ {
+ super.addPrincipal(role, null);
+ }
+ catch (PrincipalAlreadyExistsException e)
+ {
throw new SecurityException(SecurityException.ROLE_ALREADY_EXISTS.create(roleName));
}
-
- RolePrincipal rolePrincipal = new RolePrincipalImpl(roleName);
- roleSecurityHandler.storeRolePrincipal(rolePrincipal);
- SecurityAttributes sa = attributesProvider.createSecurityAttributes(rolePrincipal);
- attributesProvider.saveAttributes(sa);
+ catch (PrincipalAssociationRequiredException e)
+ {
+ // TODO: add SecurityException type for this?
+ throw new SecurityException(SecurityException.UNEXPECTED.create("RoleManager.addRole", "add", e.getMessage()));
+ }
if (log.isDebugEnabled())
log.debug("Added role: " + roleName);
}
@@ -330,45 +355,183 @@
}
}
- public JetspeedPrincipal newPrincipal(String name, boolean mapped)
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#addAssociationHandler(org.apache.jetspeed.security.JetspeedPrincipalAssociationHandler)
+ */
+ @Override
+ public void addAssociationHandler(JetspeedPrincipalAssociationHandler jpah)
{
// TODO Auto-generated method stub
- return null;
+ super.addAssociationHandler(jpah);
}
- public JetspeedPrincipal newTransientPrincipal(String name)
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#addPrincipal(org.apache.jetspeed.security.JetspeedPrincipal, java.util.Set)
+ */
+ @Override
+ public void addPrincipal(JetspeedPrincipal principal, Set<JetspeedPrincipalAssociationReference> associations)
+ throws PrincipalAlreadyExistsException,
+ PrincipalAssociationRequiredException
{
// TODO Auto-generated method stub
- return null;
+ super.addPrincipal(principal, associations);
}
- public void addPrincipal(JetspeedPrincipal principal,
- Set<JetspeedPrincipalAssociationReference> associations)
- throws PrincipalAlreadyExistsException,
- PrincipalAssociationRequiredException
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#getAssociatedFrom(java.lang.String, java.lang.String)
+ */
+ @Override
+ public List<JetspeedPrincipal> getAssociatedFrom(String principalName, String associationName)
{
// TODO Auto-generated method stub
-
+ return super.getAssociatedFrom(principalName, associationName);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#getAssociatedNamesFrom(java.lang.String, java.lang.String)
+ */
+ @Override
+ public List<String> getAssociatedNamesFrom(String principalName, String associationName)
+ {
+ // TODO Auto-generated method stub
+ return super.getAssociatedNamesFrom(principalName, associationName);
}
- public boolean isMapped()
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#getAssociatedNamesTo(java.lang.String, java.lang.String)
+ */
+ @Override
+ public List<String> getAssociatedNamesTo(String principalName, String associationName)
{
// TODO Auto-generated method stub
- return false;
+ return super.getAssociatedNamesTo(principalName, associationName);
}
- public void removePrincipal(JetspeedPrincipal principal)
- throws PrincipalNotFoundException, PrincipalNotRemovableException,
- DependentPrincipalException
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#getAssociatedTo(java.lang.String, java.lang.String)
+ */
+ @Override
+ public List<JetspeedPrincipal> getAssociatedTo(String principalName, String associationName)
{
// TODO Auto-generated method stub
-
+ return super.getAssociatedTo(principalName, associationName);
}
- public void updatePrincipal(JetspeedPrincipal principal)
- throws PrincipalUpdateException, PrincipalNotFoundException
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#getPrincipal(java.lang.String)
+ */
+ @Override
+ public JetspeedPrincipal getPrincipal(String name)
{
// TODO Auto-generated method stub
-
+ return super.getPrincipal(name);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#getPrincipalNames(java.lang.String)
+ */
+ @Override
+ public List<String> getPrincipalNames(String nameFilter)
+ {
+ // TODO Auto-generated method stub
+ return super.getPrincipalNames(nameFilter);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#getPrincipals(java.lang.String)
+ */
+ @Override
+ public List<JetspeedPrincipal> getPrincipals(String nameFilter)
+ {
+ // TODO Auto-generated method stub
+ return super.getPrincipals(nameFilter);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#grantPermission(org.apache.jetspeed.security.JetspeedPrincipal, org.apache.jetspeed.security.JetspeedPermission)
+ */
+ @Override
+ public void grantPermission(JetspeedPrincipal principal, JetspeedPermission permission)
+ {
+ // TODO Auto-generated method stub
+ super.grantPermission(principal, permission);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#principalExists(java.lang.String)
+ */
+ @Override
+ public boolean principalExists(String name)
+ {
+ return super.principalExists(name);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#removePrincipal(org.apache.jetspeed.security.JetspeedPrincipal)
+ */
+ @Override
+ public void removePrincipal(JetspeedPrincipal principal) throws PrincipalNotFoundException,
+ PrincipalNotRemovableException, DependentPrincipalException
+ {
+ // TODO Auto-generated method stub
+ super.removePrincipal(principal);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#removePrincipal(java.lang.String)
+ */
+ @Override
+ public void removePrincipal(String name) throws PrincipalNotFoundException, PrincipalNotRemovableException,
+ DependentPrincipalException
+ {
+ // TODO Auto-generated method stub
+ super.removePrincipal(name);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#revokeAll(org.apache.jetspeed.security.JetspeedPrincipal)
+ */
+ @Override
+ public void revokeAll(JetspeedPrincipal principal)
+ {
+ // TODO Auto-generated method stub
+ super.revokeAll(principal);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#revokePermission(org.apache.jetspeed.security.JetspeedPrincipal, org.apache.jetspeed.security.JetspeedPermission)
+ */
+ @Override
+ public void revokePermission(JetspeedPrincipal principal, JetspeedPermission permission)
+ {
+ // TODO Auto-generated method stub
+ super.revokePermission(principal, permission);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.impl.BaseJetspeedPrincipalManager#updatePrincipal(org.apache.jetspeed.security.JetspeedPrincipal)
+ */
+ @Override
+ public void updatePrincipal(JetspeedPrincipal principal) throws PrincipalUpdateException,
+ PrincipalNotFoundException
+ {
+ // TODO Auto-generated method stub
+ super.updatePrincipal(principal);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.JetspeedPrincipalManager#newPrincipal(java.lang.String, boolean)
+ */
+ public JetspeedPrincipal newPrincipal(String name, boolean mapped)
+ {
+ return newRole(name, mapped);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.security.JetspeedPrincipalManager#newTransientPrincipal(java.lang.String)
+ */
+ public JetspeedPrincipal newTransientPrincipal(String name)
+ {
+ return newTransientRole(name);
}
}
\ No newline at end of file
Modified: portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientGroup.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientGroup.java?rev=692356&r1=692355&r2=692356&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientGroup.java (original)
+++ portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientGroup.java Fri Sep 5 00:09:47 2008
@@ -17,11 +17,13 @@
package org.apache.jetspeed.security.impl;
+import org.apache.jetspeed.security.Group;
+
/**
* @version $Id$
*
*/
-public class TransientGroup extends TransientJetspeedPrincipal
+public class TransientGroup extends TransientJetspeedPrincipal implements Group
{
private static final long serialVersionUID = -4347595527204071090L;
}
Modified: portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientRole.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientRole.java?rev=692356&r1=692355&r2=692356&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientRole.java (original)
+++ portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientRole.java Fri Sep 5 00:09:47 2008
@@ -17,11 +17,13 @@
package org.apache.jetspeed.security.impl;
+import org.apache.jetspeed.security.Role;
+
/**
* @version $Id$
*
*/
-public class TransientRole extends TransientJetspeedPrincipal
+public class TransientRole extends TransientJetspeedPrincipal implements Role
{
private static final long serialVersionUID = -3622751457840996366L;
}
Modified: portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientUser.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientUser.java?rev=692356&r1=692355&r2=692356&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientUser.java (original)
+++ portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-security/src/main/java/org/apache/jetspeed/security/impl/TransientUser.java Fri Sep 5 00:09:47 2008
@@ -17,11 +17,13 @@
package org.apache.jetspeed.security.impl;
+import org.apache.jetspeed.security.User;
+
/**
* @version $Id$
*
*/
-public class TransientUser extends TransientJetspeedPrincipal
+public class TransientUser extends TransientJetspeedPrincipal implements User
{
private static final long serialVersionUID = 2966176187274497019L;
}
Modified: portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-api/src/main/java/org/apache/jetspeed/security/RoleManager.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-api/src/main/java/org/apache/jetspeed/security/RoleManager.java?rev=692356&r1=692355&r2=692356&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-api/src/main/java/org/apache/jetspeed/security/RoleManager.java (original)
+++ portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-api/src/main/java/org/apache/jetspeed/security/RoleManager.java Fri Sep 5 00:09:47 2008
@@ -31,7 +31,9 @@
*/
public interface RoleManager
{
-
+ Role newRole(String name, boolean mapped);
+ Role newTransientRole(String name);
+
/**
* <p>Add a new role.</p>
* <p>Role principal names are expressed as {principal}.{subprincipal} where
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org