Author: anil
Date: Wed Jul 22 21:16:44 2009
New Revision: 796883
URL: http://svn.apache.org/viewvc?rev=796883&view=rev
Log:
SCOUT-79: privileged blocks
Added:
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/SecurityActions.java
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/SecurityActions.java
Modified:
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/ConnectionImpl.java
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/RMITransport.java
Modified:
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/ConnectionImpl.java
URL:
http://svn.apache.org/viewvc/webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/ConnectionImpl.java?rev=796883&r1=796882&r2=796883&view=diff
==============================================================================
---
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/ConnectionImpl.java
(original)
+++
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/ConnectionImpl.java
Wed Jul 22 21:16:44 2009
@@ -52,7 +52,7 @@
if (transportClass!=null) {
prop.setProperty(RegistryImpl.TRANSPORT_CLASS_PROPERTY_NAME,
transportClass);
} else {
- String transport =
System.getProperty(RegistryImpl.TRANSPORT_CLASS_PROPERTY_NAME);
+ String transport =
SecurityActions.getProperty(RegistryImpl.TRANSPORT_CLASS_PROPERTY_NAME);
if (transport != null) {
prop.setProperty(RegistryImpl.TRANSPORT_CLASS_PROPERTY_NAME, transport);
}
Modified:
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java
URL:
http://svn.apache.org/viewvc/webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java?rev=796883&r1=796882&r2=796883&view=diff
==============================================================================
---
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java
(original)
+++
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/RegistryImpl.java
Wed Jul 22 21:16:44 2009
@@ -20,6 +20,9 @@
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
+import java.security.AccessControlContext;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
import java.util.Arrays;
import java.util.Properties;
@@ -1133,7 +1136,13 @@
try {
// log.info("Using the Context ClassLoader");
- ClassLoader ccl =
Thread.currentThread().getContextClassLoader();
+ ClassLoader ccl = AccessController.doPrivileged(new
PrivilegedAction<ClassLoader>()
+ {
+ public ClassLoader run() {
+ return
Thread.currentThread().getContextClassLoader();
+ }
+ });
+
clazz = Class.forName(name, true, ccl);
} catch (Exception e) {
//log.warn("Failed to load the class " + name + " with
context
@@ -1141,7 +1150,12 @@
}
if (null == clazz) {
- ClassLoader scl = ClassLoader.getSystemClassLoader();
+ ClassLoader scl = AccessController.doPrivileged(new
PrivilegedAction<ClassLoader>()
+ {
+ public ClassLoader run() {
+ return
ClassLoader.getSystemClassLoader();
+ }
+ });
try {
clazz = Class.forName(name, true, scl);
Added:
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/SecurityActions.java
URL:
http://svn.apache.org/viewvc/webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/SecurityActions.java?rev=796883&view=auto
==============================================================================
---
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/SecurityActions.java
(added)
+++
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/registry/SecurityActions.java
Wed Jul 22 21:16:44 2009
@@ -0,0 +1,48 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.ws.scout.registry;
+
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
+/**
+ * Security Privileged Actions
+ *
+ * @author <a href="mailto:[email protected]">Anil Saldhana</a>
+ */
+class SecurityActions
+{
+ static String getProperty(final String key, final String defaultValue)
+ {
+ return AccessController.doPrivileged(new
PrivilegedAction<String>()
+ {
+ public String run() {
+ return System.getProperty(key, defaultValue);
+ }
+ });
+ }
+
+ static String getProperty(final String key)
+ {
+ return AccessController.doPrivileged(new
PrivilegedAction<String>()
+ {
+ public String run() {
+ return System.getProperty(key);
+ }
+ });
+ }
+
+}
\ No newline at end of file
Modified:
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/RMITransport.java
URL:
http://svn.apache.org/viewvc/webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/RMITransport.java?rev=796883&r1=796882&r2=796883&view=diff
==============================================================================
---
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/RMITransport.java
(original)
+++
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/RMITransport.java
Wed Jul 22 21:16:44 2009
@@ -66,9 +66,9 @@
Properties env = new Properties();
//It be a lot nicer if this is configured through properties, but for
now
//I'd like to keep the changes localized, so this seems pretty
reasonable.
- String factoryInitial =
System.getProperty("java.naming.factory.initial");
+ String factoryInitial =
SecurityActions.getProperty("java.naming.factory.initial");
if (factoryInitial==null) factoryInitial =
"org.jnp.interfaces.NamingContextFactory";
- String factoryURLPkgs =
System.getProperty("java.naming.factory.url.pkgs");
+ String factoryURLPkgs =
SecurityActions.getProperty("java.naming.factory.url.pkgs");
if (factoryURLPkgs==null) factoryURLPkgs = "org.jboss.naming";
env.setProperty("java.naming.factory.initial", factoryInitial);
env.setProperty("java.naming.factory.url.pkgs", factoryURLPkgs);
Added:
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/SecurityActions.java
URL:
http://svn.apache.org/viewvc/webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/SecurityActions.java?rev=796883&view=auto
==============================================================================
---
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/SecurityActions.java
(added)
+++
webservices/scout/branches/v1.1/scout/src/main/java/org/apache/ws/scout/transport/SecurityActions.java
Wed Jul 22 21:16:44 2009
@@ -0,0 +1,48 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.ws.scout.transport;
+
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
+/**
+ * Security Privileged Actions
+ *
+ * @author <a href="mailto:[email protected]">Anil Saldhana</a>
+ */
+class SecurityActions
+{
+ static String getProperty(final String key, final String defaultValue)
+ {
+ return AccessController.doPrivileged(new
PrivilegedAction<String>()
+ {
+ public String run() {
+ return System.getProperty(key, defaultValue);
+ }
+ });
+ }
+
+ static String getProperty(final String key)
+ {
+ return AccessController.doPrivileged(new
PrivilegedAction<String>()
+ {
+ public String run() {
+ return System.getProperty(key);
+ }
+ });
+ }
+
+}
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]