You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@clerezza.apache.org by re...@apache.org on 2010/06/19 14:24:09 UTC
svn commit: r956219 - in
/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security:
BundlePermissionManager.java PermissionManager.java UserAwarePolicy.java
Author: reto
Date: Sat Jun 19 12:24:08 2010
New Revision: 956219
URL: http://svn.apache.org/viewvc?rev=956219&view=rev
Log:
CLEREZZA-242: SecurityActivator with no required dependecy takes care of setting a restricitive police when UserAwarePolicy is not available
Added:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/BundlePermissionManager.java
- copied, changed from r956129, incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/PermissionManager.java
Removed:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/PermissionManager.java
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserAwarePolicy.java
Copied: incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/BundlePermissionManager.java (from r956129, incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/PermissionManager.java)
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/BundlePermissionManager.java?p2=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/BundlePermissionManager.java&p1=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/PermissionManager.java&r1=956129&r2=956219&rev=956219&view=diff
==============================================================================
--- incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/PermissionManager.java (original)
+++ incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/BundlePermissionManager.java Sat Jun 19 12:24:08 2010
@@ -63,10 +63,11 @@ import org.apache.clerezza.rdf.core.MGra
*/
@Component
-public class PermissionManager implements BundleListener {
+public class BundlePermissionManager implements BundleListener {
- final Logger logger = LoggerFactory.getLogger(PermissionManager.class);
+ final Logger logger = LoggerFactory.getLogger(BundlePermissionManager.class);
+
@Reference
private ConditionalPermissionAdmin cpa;
private static final String ALL_EXCEPT_USER_BUNDLES_CPINAME = "allExceptUserBundles";
@@ -83,7 +84,7 @@ public class PermissionManager implement
}
private PermissionDefinitions permissionDefinitions;
- private Policy originalPolicy;
+
/**
*
@@ -128,21 +129,13 @@ public class PermissionManager implement
updateFromSystemGraph(bundleLocation);
}
}
- setUserAwarePolicy();
}
- private void setUserAwarePolicy() {
- logger.debug("Set user aware policy");
- //keep the original policy for resetting it at deactivation()
- originalPolicy = Policy.getPolicy();
- Policy.setPolicy(new UserAwarePolicy(systemGraph));
- }
protected void deactivate(final ComponentContext cCtx) throws Exception {
logger.debug("Permission manager being deactivated");
cCtx.getBundleContext().removeBundleListener(this);
- Policy.setPolicy(originalPolicy);
}
/**
Modified: incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserAwarePolicy.java
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserAwarePolicy.java?rev=956219&r1=956218&r2=956219&view=diff
==============================================================================
--- incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserAwarePolicy.java (original)
+++ incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.security/src/main/java/org/apache/clerezza/platform/security/UserAwarePolicy.java Sat Jun 19 12:24:08 2010
@@ -34,6 +34,7 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import org.apache.clerezza.platform.config.SystemConfig;
import org.osgi.service.permissionadmin.PermissionInfo;
@@ -50,14 +51,23 @@ import org.apache.clerezza.rdf.ontologie
import org.apache.clerezza.rdf.ontologies.PLATFORM;
import org.apache.clerezza.rdf.ontologies.RDF;
import org.apache.clerezza.rdf.ontologies.SIOC;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Reference;
+import org.apache.felix.scr.annotations.Service;
/**
*
* @author mir
*/
+@Component
+@Service(UserAwarePolicy.class)
public class UserAwarePolicy extends Policy {
final Logger logger = LoggerFactory.getLogger(UserAwarePolicy.class);
+
+ @Reference(target=SystemConfig.SYSTEM_GRAPH_FILTER)
+ private MGraph systemGraph;
+
/**
* Stores the mapping between a String describing the permission and the
* described <code>Permission</code> object.
@@ -69,12 +79,9 @@ public class UserAwarePolicy extends Pol
*/
private UserPermissionsCache cache = new UserPermissionsCache();
- private MGraph systemGraph;
-
private Policy originalPolicy;
- public UserAwarePolicy(MGraph systemGraph) {
- this.systemGraph = systemGraph;
+ public UserAwarePolicy() {
this.originalPolicy = Policy.getPolicy();
}
@@ -182,7 +189,7 @@ public class UserAwarePolicy extends Pol
* are his/her own permissions and the permissions of his roles
*
*/
- List<String> getAllPermissionsOfAUserByName(String userName)
+ private List<String> getAllPermissionsOfAUserByName(String userName)
throws UserUnregisteredException {
NonLiteral user = getUserByName(userName);