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 ta...@apache.org on 2005/10/22 01:36:55 UTC
svn commit: r327609 - in /portals/jetspeed-2/trunk/components/security/src:
java/org/apache/jetspeed/security/impl/PermissionManagerImpl.java
test/org/apache/jetspeed/security/TestPermissionManager.java
Author: taylor
Date: Fri Oct 21 16:36:53 2005
New Revision: 327609
URL: http://svn.apache.org/viewcvs?rev=327609&view=rev
Log:
http://issues.apache.org/jira/browse/JS2-384
abstract Permission Manager checkPermission operation
in putting this to use in portlet filtering,
it seemed easier for user to simply check return status instead of exceptions everytime
Modified:
portals/jetspeed-2/trunk/components/security/src/java/org/apache/jetspeed/security/impl/PermissionManagerImpl.java
portals/jetspeed-2/trunk/components/security/src/test/org/apache/jetspeed/security/TestPermissionManager.java
Modified: portals/jetspeed-2/trunk/components/security/src/java/org/apache/jetspeed/security/impl/PermissionManagerImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/security/src/java/org/apache/jetspeed/security/impl/PermissionManagerImpl.java?rev=327609&r1=327608&r2=327609&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/security/src/java/org/apache/jetspeed/security/impl/PermissionManagerImpl.java (original)
+++ portals/jetspeed-2/trunk/components/security/src/java/org/apache/jetspeed/security/impl/PermissionManagerImpl.java Fri Oct 21 16:36:53 2005
@@ -438,20 +438,24 @@
return internalPermission;
}
- public void checkPermission(Subject subject, final Permission permission)
- throws SecurityException
+ public boolean checkPermission(Subject subject, final Permission permission)
{
- //Subject.doAs(subject, new PrivilegedAction()
- Subject.doAsPrivileged(subject, new PrivilegedAction()
+ try
{
- public Object run()
+ //Subject.doAs(subject, new PrivilegedAction()
+ Subject.doAsPrivileged(subject, new PrivilegedAction()
{
- AccessController.checkPermission(permission);
- System.out.println("tst with policy: " +
- Policy.getPolicy().getClass().getName());
- return null;
- }
- }, null);
- System.out.println("Did not deny access for perm " + permission);
+ public Object run()
+ {
+ AccessController.checkPermission(permission);
+ return null;
+ }
+ }, null);
+ }
+ catch (Exception e)
+ {
+ return false;
+ }
+ return true;
}
}
Modified: portals/jetspeed-2/trunk/components/security/src/test/org/apache/jetspeed/security/TestPermissionManager.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/security/src/test/org/apache/jetspeed/security/TestPermissionManager.java?rev=327609&r1=327608&r2=327609&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/security/src/test/org/apache/jetspeed/security/TestPermissionManager.java (original)
+++ portals/jetspeed-2/trunk/components/security/src/test/org/apache/jetspeed/security/TestPermissionManager.java Fri Oct 21 16:36:53 2005
@@ -108,21 +108,22 @@
principals.add(user);
principals.add(role1);
principals.add(role2);
- boolean failNow = true;
+
try
{
Subject subject = new Subject(true, principals, publicCredentials, privateCredentials);
- pms.checkPermission(subject, perm1);
- pms.checkPermission(subject, perm2);
- pms.checkPermission(subject, perm3);
- failNow = false;
- pms.checkPermission(subject, perm3a);
- fail("should have failed permission check on perm3a");
+ boolean access = pms.checkPermission(subject, perm1);
+ assertTrue("access to perm1 should be granted ", access);
+ access = pms.checkPermission(subject, perm2);
+ assertTrue("access to perm2 should be granted ", access);
+ access = pms.checkPermission(subject, perm3);
+ assertTrue("access to perm3 should be granted ", access);
+ access = pms.checkPermission(subject, perm3a);
+ assertFalse("access to perm3a should be denied ", access);
}
catch (AccessControlException e)
{
- if (failNow)
- fail("failed permission check");
+ fail("failed permission check");
}
finally
{
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org