diff --git a/appserver/admin/admin-core/src/test/resources/UpgradeTest.xml b/appserver/admin/admin-core/src/test/resources/UpgradeTest.xml
index 032daebfa82..408d6ec2357 100644
--- a/appserver/admin/admin-core/src/test/resources/UpgradeTest.xml
+++ b/appserver/admin/admin-core/src/test/resources/UpgradeTest.xml
@@ -198,7 +198,6 @@
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Xmx512m
-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}/config/keystore.p12
diff --git a/appserver/admin/template/src/main/resources/config/domain.xml b/appserver/admin/template/src/main/resources/config/domain.xml
index c30fa534715..67217ee6580 100644
--- a/appserver/admin/template/src/main/resources/config/domain.xml
+++ b/appserver/admin/template/src/main/resources/config/domain.xml
@@ -166,7 +166,6 @@
-Djavax.xml.accessExternalSchema=all
-Djavax.management.builder.initial=com.sun.enterprise.v3.admin.AppServerMBeanServerBuilder
-XX:+UnlockDiagnosticVMOptions
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as
-Xmx512m
@@ -368,7 +367,6 @@
-Djdk.tls.rejectClientInitiatedRenegotiation=true
-Djdk.xml.totalEntitySizeLimit=50000000
-XX:+UnlockDiagnosticVMOptions
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as
-Djavax.net.ssl.keyStore=${com.sun.aas.instanceRoot}/config/keystore.p12
diff --git a/appserver/admingui/common/src/main/java/org/glassfish/admingui/common/handlers/SecurityHandler.java b/appserver/admingui/common/src/main/java/org/glassfish/admingui/common/handlers/SecurityHandler.java
index 97e152256ee..f6f760acc11 100644
--- a/appserver/admingui/common/src/main/java/org/glassfish/admingui/common/handlers/SecurityHandler.java
+++ b/appserver/admingui/common/src/main/java/org/glassfish/admingui/common/handlers/SecurityHandler.java
@@ -736,84 +736,4 @@ else if (providerMap.get("providerType").equals("client-server")) {
}
}
-
- @Handler(id="saveSecurityManagerValue",
- input={
- @HandlerInput(name="configName", type=String.class),
- @HandlerInput(name="value", type=String.class, required=true)
- })
- public static void saveSecurityManagerValue(HandlerContext handlerCtx){
- try {
- String configName = (String) handlerCtx.getInputValue("configName");
- if (GuiUtil.isEmpty(configName))
- configName = "server-config";
- String endpoint = GuiUtil.getSessionValue("REST_URL") +
- "/configs/config/" + configName + "/java-config/jvm-options.json";
- ArrayList list;
- Map result = (HashMap) RestUtil.restRequest(endpoint, null, "GET", null, false).get("data");
- list = (ArrayList) ((Map) result.get("extraProperties")).get("leafList");
- if (list == null)
- list = new ArrayList();
- Boolean status = isSecurityManagerEnabled(list);
- String value= (String) handlerCtx.getInputValue("value");
- Boolean userValue = Boolean.valueOf(value);
- if (status.equals(userValue)){
- //no need to change
- return;
- }
-
- ArrayList newOptions = new ArrayList();
- Object [] origOptions = list.toArray();
- if (userValue){
- for(int i=0; i payload = new HashMap();
- payload.put("target", configName);
- for (String option : newOptions) {
- String option1 = UtilHandlers.escapePropertyValue(option);
- ArrayList kv = InstanceHandler.getKeyValuePair(option1);
- payload.put((String)kv.get(0), kv.get(1));
- }
- RestUtil.restRequest(endpoint, payload, "POST", handlerCtx, false);
- }catch(Exception ex){
- GuiUtil.handleException(handlerCtx, ex);
- }
- }
-
- @Handler(id="getSecurityManagerValue",
- input={
- @HandlerInput(name="endpoint", type=String.class),
- @HandlerInput(name="attrs", type=Map.class, required=false)},
- output={
- @HandlerOutput(name="value", type=String.class)}
- )
- public static void getSecurityManagerValue(HandlerContext handlerCtx){
- ArrayList list = InstanceHandler.getJvmOptions(handlerCtx);
- handlerCtx.setOutputValue("value", isSecurityManagerEnabled(list).toString());
- }
-
- private static Boolean isSecurityManagerEnabled(List jvmOptions){
- for(String jvmOption : jvmOptions){
- if (jvmOption.trim().equals(JVM_OPTION_SECURITY_MANAGER) ||
- jvmOption.trim().startsWith(JVM_OPTION_SECURITY_MANAGER_WITH_EQUAL)){
- return Boolean.TRUE;
- }
- }
- return Boolean.FALSE;
- }
-
- private static final String JVM_OPTION_SECURITY_MANAGER = "-Djava.security.manager";
- private static final String JVM_OPTION_SECURITY_MANAGER_WITH_EQUAL = "-Djava.security.manager=";
-
}
diff --git a/appserver/appclient/client/acc-standalone/src/main/java/org/glassfish/appclient/client/acc/agent/CLIBootstrap.java b/appserver/appclient/client/acc-standalone/src/main/java/org/glassfish/appclient/client/acc/agent/CLIBootstrap.java
index bf280f2713d..ba7169f1c75 100644
--- a/appserver/appclient/client/acc-standalone/src/main/java/org/glassfish/appclient/client/acc/agent/CLIBootstrap.java
+++ b/appserver/appclient/client/acc-standalone/src/main/java/org/glassfish/appclient/client/acc/agent/CLIBootstrap.java
@@ -77,8 +77,6 @@ public class CLIBootstrap {
static final String ENV_VAR_PROP_PREFIX = "acc.";
-
- private final static String SECURITY_POLICY_PROPERTY_EXPR = "-Djava.security.policy=";
private final static String SECURITY_AUTH_LOGIN_CONFIG_PROPERTY_EXPR = "-Djava.security.auth.login.config=";
private final static String SYSPROP_SYSTEM_CLASS_LOADER = "-Djava.system.class.loader=";
@@ -293,7 +291,6 @@ private void addProperties(final StringBuilder command) {
command.append(' ').append(SYSPROP_SYSTEM_CLASS_LOADER).append("org.glassfish.appclient.client.acc.agent.ACCAgentClassLoader");
command.append(' ').append("-D").append(INSTALL_ROOT.getSystemPropertyName()).append('=').append(quote(gfInfo.home().getAbsolutePath()));
command.append(' ').append("-Dorg.glassfish.gmbal.no.multipleUpperBoundsException=true");
- command.append(' ').append(SECURITY_POLICY_PROPERTY_EXPR).append(quote(gfInfo.securityPolicy().getAbsolutePath()));
command.append(' ').append(SECURITY_AUTH_LOGIN_CONFIG_PROPERTY_EXPR).append(quote(gfInfo.loginConfig().toExternalForm()));
}
diff --git a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/JWSAppClientContainerMain.java b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/JWSAppClientContainerMain.java
index 154a27978a2..4aca769467b 100644
--- a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/JWSAppClientContainerMain.java
+++ b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/JWSAppClientContainerMain.java
@@ -93,8 +93,6 @@ public static void main(String[] args) {
processJWSArgs();
final String agentArgsText = System.getProperty("agent.args");
- LaunchSecurityHelper.setPermissions();
-
// Prevent the Java Web Start class loader from delegating to its parent when resolving
// classes and resources that should come from the GlassFish-provided endorsed JARs.
insertMaskingLoader();
diff --git a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/jws/boot/JWSACCMain.java b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/jws/boot/JWSACCMain.java
index e5ee12509cb..a254f1dbe95 100644
--- a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/jws/boot/JWSACCMain.java
+++ b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/jws/boot/JWSACCMain.java
@@ -29,17 +29,13 @@
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.net.MalformedURLException;
-import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
-import java.security.Policy;
-import java.text.MessageFormat;
import java.util.ResourceBundle;
import java.util.Vector;
import javax.swing.SwingUtilities;
-import org.glassfish.appclient.client.acc.AppClientContainer;
import org.glassfish.appclient.client.acc.JWSACCClassLoader;
import static org.glassfish.main.jdke.props.SystemProperties.setProperty;
@@ -62,9 +58,6 @@
*/
public class JWSACCMain implements Runnable {
- /** name of the permissions template */
- private static final String PERMISSIONS_TEMPLATE_NAME = "jwsclient.policy";
-
/** placeholder used in the policy template to substitute dynamically-generated grant clauses */
private static final String GRANT_CLAUSES_PROPERTY_EXPR = "${grant.clauses}";
@@ -79,11 +72,6 @@ public class JWSACCMain implements Runnable {
private static final String JWSACC_RUN_ON_SWING_THREAD = "RunOnSwingThread";
- /** grant clause template for dynamically populating the policy */
- private static final String GRANT_CLAUSE_TEMPLATE = "grant codeBase \"{0}\" '{'\n" +
- " permission java.security.AllPermission;\n" +
- "'}';";
-
/**
* request to exit the JVM upon return from the client - should be set (via
* the -jwsacc command-line argument value) only for
@@ -138,12 +126,6 @@ public static void main(String[] args) {
throw new IllegalArgumentException(rb.getString("jwsacc.errorLocJARs"), thr);
}
- /*
- *Before creating the new instance of the real ACC main, set permissions
- *so ACC and the user's app client can function properly.
- */
- setPermissions();
-
/*
*Make sure that the main ACC class is instantiated and run in the
*same thread. Java Web Start may not normally do so.
@@ -274,37 +256,6 @@ private static void processJWSArgs(Vector args) {
}
}
- private static void setPermissions() {
- try {
- /*
- */
- String permissionsTemplate = loadResource(JWSACCMain.class, PERMISSIONS_TEMPLATE_NAME);
-
- /*
- *Prepare the grant clauses for the downloaded jars and substitute
- *those clauses into the policy template.
- */
- StringBuilder grantClauses = new StringBuilder();
-
- for (URL url : downloadedJarURLs) {
- grantClauses.append(MessageFormat.format(GRANT_CLAUSE_TEMPLATE, url.toExternalForm()));
- }
-
- for (URL url : persistenceJarURLs) {
- grantClauses.append(MessageFormat.format(GRANT_CLAUSE_TEMPLATE, url.toExternalForm()));
- }
-
- String substitutedPermissionsTemplate = permissionsTemplate.replace(GRANT_CLAUSES_PROPERTY_EXPR, grantClauses.toString());
- boolean retainTempFiles = Boolean.getBoolean(AppClientContainer.APPCLIENT_RETAIN_TEMP_FILES_PROPERTYNAME);
- File policyFile = writeTextToTempFile(substitutedPermissionsTemplate, "jwsacc", ".policy", retainTempFiles);
-
- refreshPolicy(policyFile);
-
- } catch (IOException ioe) {
- throw new RuntimeException("Error loading permissions template", ioe);
- }
- }
-
/**
*Locates the first free policy.url.x setting.
*@return the int value for the first unused policy setting
@@ -324,13 +275,6 @@ public static int firstFreePolicyIndex() {
*as additional policy.
*@param policyFile the file containing additional policy
*/
- public static void refreshPolicy(File policyFile) {
- int idx = firstFreePolicyIndex();
- URI policyFileURI = policyFile.toURI();
- java.security.Security.setProperty("policy.url." + idx, policyFileURI.toASCIIString());
- Policy p = Policy.getPolicy();
- p.refresh();
- }
/**
*The methods below are duplicates from the com.sun.enterprise.appclient.jws.Util class.
diff --git a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/jws/boot/LaunchSecurityHelper.java b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/jws/boot/LaunchSecurityHelper.java
index d72b6074845..859cd8d6626 100644
--- a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/jws/boot/LaunchSecurityHelper.java
+++ b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/client/jws/boot/LaunchSecurityHelper.java
@@ -21,8 +21,6 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
-import java.net.URI;
-import java.security.Policy;
import org.glassfish.appclient.client.acc.AppClientContainer;
import org.glassfish.appclient.client.acc.Util;
@@ -37,25 +35,6 @@ public class LaunchSecurityHelper {
private static final String SYSTEM_CODEBASE_PROPERTY = "appclient.system.codebase";
private static final int BUFFER_SIZE = 1024;
- public static void setPermissions() {
- try {
- /*
- * Get the permissions template and write it to a temporary file.
- */
- final String permissionsTemplate = loadResource(LaunchSecurityHelper.class, PERMISSIONS_TEMPLATE_NAME);
-
- /*
- * The Java security logic will process property references in
- * the policy file template automatically.
- */
- boolean retainTempFiles = Boolean.getBoolean(AppClientContainer.APPCLIENT_RETAIN_TEMP_FILES_PROPERTYNAME);
- File policyFile = Util.writeTextToTempFile(permissionsTemplate, "jwsacc", ".policy", retainTempFiles);
- refreshPolicy(policyFile);
-
- } catch (IOException ioe) {
- throw new RuntimeException("Error loading permissions template", ioe);
- }
- }
/**
* Retrieves a resource as a String.
@@ -115,11 +94,5 @@ private static int firstFreePolicyIndex() {
* as additional policy.
* @param policyFile the file containing additional policy
*/
- private static void refreshPolicy(File policyFile) {
- int idx = firstFreePolicyIndex();
- URI policyFileURI = policyFile.toURI();
- java.security.Security.setProperty("policy.url." + idx, policyFileURI.toASCIIString());
- Policy p = Policy.getPolicy();
- p.refresh();
- }
+
}
diff --git a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/common/ClientClassLoaderDelegate.java b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/common/ClientClassLoaderDelegate.java
index ed04f73c3ac..50fd7d22190 100644
--- a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/common/ClientClassLoaderDelegate.java
+++ b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/common/ClientClassLoaderDelegate.java
@@ -33,31 +33,6 @@ public class ClientClassLoaderDelegate {
public ClientClassLoaderDelegate(URLClassLoader cl) {
this.cl = cl;
- loadPemissions();
- }
-
- private void loadPemissions() {
- try {
- processDeclaredPermissions();
- } catch (IOException e) {
- throw new RuntimeException(e);
- }
- }
-
- private void processDeclaredPermissions() throws IOException {
- if (System.getSecurityManager() == null) {
- return;
- }
-
- PermissionCollection declaredPermissionCollection = PermissionsUtil.getClientDeclaredPermissions(cl);
-
- PermissionCollection eePc = PermissionsUtil.getClientEEPolicy(cl);
- PermissionCollection eeRestriction = PermissionsUtil.getClientRestrictPolicy(cl);
-
- SMGlobalPolicyUtil.checkRestriction(eePc, eeRestriction);
- SMGlobalPolicyUtil.checkRestriction(declaredPermissionCollection, eeRestriction);
-
- permHolder = new PermsHolder(eePc, declaredPermissionCollection, eeRestriction);
}
public PermissionCollection getCachedPerms(CodeSource codesource) {
diff --git a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/common/PermissionsUtil.java b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/common/PermissionsUtil.java
index 9f58dba1457..07a06f19f99 100644
--- a/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/common/PermissionsUtil.java
+++ b/appserver/appclient/client/acc/src/main/java/org/glassfish/appclient/common/PermissionsUtil.java
@@ -17,22 +17,13 @@
import com.sun.enterprise.security.ee.perms.XMLPermissionsHandler;
-import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URISyntaxException;
import java.net.URL;
-import java.security.CodeSource;
-import java.security.NoSuchAlgorithmException;
import java.security.PermissionCollection;
-import java.security.Policy;
-import java.security.URIParameter;
-import java.security.cert.Certificate;
import javax.xml.stream.XMLStreamException;
-import static com.sun.enterprise.security.ee.perms.SMGlobalPolicyUtil.CLIENT_TYPE_CODESOURCE;
import static com.sun.enterprise.security.ee.perms.SMGlobalPolicyUtil.CommponentType.car;
public class PermissionsUtil {
@@ -63,64 +54,4 @@ public static PermissionCollection getClientDeclaredPermissions(ClassLoader clas
}
}
- // get the permissions configured inside the javaee.client.policy,
- // which might be packaged inside the client jar,
- // or from the installed folder lib/appclient
- // result could be null if either of the above is found
- public static PermissionCollection getClientEEPolicy(ClassLoader classLoader) throws IOException {
- return getClientPolicy(classLoader, CLIENT_EE_PERMS_PKG, CLIENT_EE_PERMS_FILE);
- }
-
- // get the permissions configured inside the javaee.client.policy,
- // which might be packaged inside the client jar,
- // or from the installed folder lib/appclient
- // result could be null if either of the above is found
- public static PermissionCollection getClientRestrictPolicy(ClassLoader classLoader) throws IOException {
- return getClientPolicy(classLoader, CLIENT_RESTRICT_PERMS_PKG, CLIENT_RESTRICT_PERMS_FILE);
- }
-
- private static PermissionCollection getClientPolicy(ClassLoader classLoader, String pkgedFile, String policyFileName) throws IOException {
-
- // 1st try to find from the packaged client jar
- URL eeClientUrl = classLoader.getResource(pkgedFile);
- if (eeClientUrl != null)
- return getEEPolicyPermissions(eeClientUrl);
-
- // 2nd try to find from client's installation at lib/appclient folder
- String clientPolicyClocation = getClientInstalledPath();
- if (clientPolicyClocation != null) {
- return getPolicyPermissions(clientPolicyClocation + policyFileName);
- }
-
- return null;
-
- }
-
- private static PermissionCollection getPolicyPermissions(String policyFilename) throws IOException {
- if (!new File(policyFilename).exists()) {
- return null;
- }
-
- return getEEPolicyPermissions(new URL("file:" + policyFilename));
- }
-
- private static PermissionCollection getEEPolicyPermissions(URL fileUrl) throws IOException {
- try {
- return
- Policy.getInstance("JavaPolicy", new URIParameter(fileUrl.toURI()))
- .getPermissions(new CodeSource(new URL(CLIENT_TYPE_CODESOURCE), (Certificate[]) null));
- } catch (NoSuchAlgorithmException | MalformedURLException | URISyntaxException e) {
- throw new IllegalStateException(e);
- }
- }
-
- private static String getClientInstalledPath() {
- String policyPath = System.getProperty("java.security.policy");
- if (policyPath == null) {
- return null;
- }
-
- return new File(policyPath).getParent() + File.separator;
- }
-
}
diff --git a/appserver/appclient/client/appclient-scripts/src/main/resources/glassfish/bin/appclient.js b/appserver/appclient/client/appclient-scripts/src/main/resources/glassfish/bin/appclient.js
index 8facac7be60..25186598ba4 100644
--- a/appserver/appclient/client/appclient-scripts/src/main/resources/glassfish/bin/appclient.js
+++ b/appserver/appclient/client/appclient-scripts/src/main/resources/glassfish/bin/appclient.js
@@ -43,7 +43,6 @@ var appcPath = envVars("APPCPATH");
var accJar=quoteStringIfNeeded(AS_INSTALL + "\\lib\\gf-client.jar");
var jvmArgs="-Dcom.sun.aas.installRoot=" + quoteStringIfNeeded(AS_INSTALL) +
- " -Djava.security.policy=" + quoteStringIfNeeded(AS_INSTALL + "\\lib\\appclient\\client.policy") +
" -Djava.system.class.loader=org.glassfish.appclient.client.acc.agent.ACCAgentClassLoader" +
" -Djava.security.auth.login.config=" + quoteStringIfNeeded(AS_INSTALL + "\\lib\\appclient\\appclientlogin.conf");
var VMARGS = envVars("VMARGS");
diff --git a/appserver/connectors/admin/src/test/resources/DomainTest.xml b/appserver/connectors/admin/src/test/resources/DomainTest.xml
index e3cb9792a5c..517178c0ce5 100644
--- a/appserver/connectors/admin/src/test/resources/DomainTest.xml
+++ b/appserver/connectors/admin/src/test/resources/DomainTest.xml
@@ -134,7 +134,7 @@
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
+
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dsun.rmi.dgc.server.gcInterval=3600000
diff --git a/appserver/connectors/connectors-internal-api/src/test/resources/DomainTest.xml b/appserver/connectors/connectors-internal-api/src/test/resources/DomainTest.xml
index 733999eb277..90d095c39c2 100644
--- a/appserver/connectors/connectors-internal-api/src/test/resources/DomainTest.xml
+++ b/appserver/connectors/connectors-internal-api/src/test/resources/DomainTest.xml
@@ -128,7 +128,7 @@
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
+
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dsun.rmi.dgc.server.gcInterval=3600000
diff --git a/appserver/connectors/connectors-internal-api/src/test/resources/PasswordAliasTest.xml b/appserver/connectors/connectors-internal-api/src/test/resources/PasswordAliasTest.xml
index 04085641b58..45f1f4551be 100644
--- a/appserver/connectors/connectors-internal-api/src/test/resources/PasswordAliasTest.xml
+++ b/appserver/connectors/connectors-internal-api/src/test/resources/PasswordAliasTest.xml
@@ -137,7 +137,7 @@
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
+
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as
-Xmx512m
diff --git a/appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/ConnectorRuntime.java b/appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/ConnectorRuntime.java
index de15b84887b..ff08e61528c 100755
--- a/appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/ConnectorRuntime.java
+++ b/appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/ConnectorRuntime.java
@@ -651,12 +651,12 @@ public String[] getSystemConnectorsAllowingPoolCreation() {
@Override
public String[] getConnectionDefinitionNames(String rarName) throws ConnectorRuntimeException {
- return configParserAdmService.getConnectionDefinitionNames(rarName);
+ return null;
}
@Override
public String getSecurityPermissionSpec(String moduleName) throws ConnectorRuntimeException {
- return configParserAdmService.getSecurityPermissionSpec(moduleName);
+ return null;
}
@Override
diff --git a/appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/service/ConnectorConfigurationParserServiceImpl.java b/appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/service/ConnectorConfigurationParserServiceImpl.java
index 661165264bd..bc4d65553ec 100755
--- a/appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/service/ConnectorConfigurationParserServiceImpl.java
+++ b/appserver/connectors/connectors-runtime/src/main/java/com/sun/enterprise/connectors/service/ConnectorConfigurationParserServiceImpl.java
@@ -21,18 +21,10 @@
import com.sun.enterprise.connectors.util.AdminObjectConfigParser;
import com.sun.enterprise.connectors.util.ConnectorConfigParser;
import com.sun.enterprise.connectors.util.ConnectorConfigParserFactory;
-import com.sun.enterprise.connectors.util.MCFConfigParser;
import com.sun.enterprise.connectors.util.MessageListenerConfigParser;
import com.sun.enterprise.deployment.ConnectorDescriptor;
-import com.sun.enterprise.deployment.SecurityPermission;
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileReader;
-import java.util.Iterator;
import java.util.Properties;
-import java.util.Set;
-import java.util.logging.Level;
/**
@@ -48,106 +40,6 @@ public class ConnectorConfigurationParserServiceImpl extends ConnectorService {
public ConnectorConfigurationParserServiceImpl() {
}
- /**
- * Obtains the Permission string that needs to be added to the
- * to the security policy files. These are the security permissions needed
- * by the resource adapter implementation classes.
- * These strings are obtained by parsing the ra.xml
- *
- * @param moduleName rar module Name
- * @return Required policy permissions in server.policy file
- * @throws ConnectorRuntimeException If rar.xml parsing fails.
- */
- public String getSecurityPermissionSpec(String moduleName)
- throws ConnectorRuntimeException {
-
- if (moduleName == null) {
- return null;
- }
- String policyString = null;
-
- //check whether the policy file already has required permissions.
- String fileName = System.getProperty("java.security.policy");
- if (fileName != null) {
- File policyFile = new File(fileName);
- String policyContent = getFileContent(policyFile);
-
- ConnectorDescriptor connectorDescriptor = getConnectorDescriptor(moduleName);
- Set securityPermissions = connectorDescriptor.getSecurityPermissions();
- Iterator it = securityPermissions.iterator();
- SecurityPermission secPerm = null;
- String permissionString = null;
-
- while (it.hasNext()) {
- secPerm = (SecurityPermission) it.next();
- permissionString = secPerm.getPermission();
- if(permissionString != null) {
- int intIndex = policyContent.indexOf(permissionString);
- if (intIndex == -1) {
- if (policyString != null) {
- policyString = policyString + "\n \n" + permissionString;
- } else {
- policyString = "\n\n" + permissionString;
- }
- }
- }
- }
-
- //print the missing permissions
- if (policyString != null) {
- policyString = CAUTION_MESSAGE + policyString;
- }
- }
- return policyString;
- }
-
- /**
- * Obtain the content of server.policy file
- *
- * @param file File server.policy file
- * @return String content of server.policy file
- */
- public String getFileContent(File file) {
- StringBuilder contents = new StringBuilder();
- BufferedReader input = null;
- try {
- input = new BufferedReader(new FileReader(file));
- try {
- String line = null;
- while ((line = input.readLine()) != null) {
- contents.append(line);
- contents.append(System.getProperty("line.separator"));
- }
- } finally {
- input.close();
- }
- }
- catch (Exception ex) {
- _logger.log(Level.WARNING, "Exception while performing resource-adapter's " +
- "security permission check : ", ex);
- }
- return contents.toString();
- }
-
- /** Obtains all the Connection definition names of a rar
- * @param rarName rar moduleName
- * @return Array of connection definition names.
- */
- public String[] getConnectionDefinitionNames(String rarName)
- throws ConnectorRuntimeException
- {
-
- String[] result = new String[0];
- ConnectorDescriptor desc = getConnectorDescriptor(rarName);
- if(desc != null) {
- MCFConfigParser mcfConfigParser = (MCFConfigParser)
- ConnectorConfigParserFactory.getParser(ConnectorConfigParser.MCF);
- return mcfConfigParser.getConnectionDefinitionNames(desc);
- } else {
- return result;
- }
- }
-
/**
* Retrieves the Resource adapter javabean properties with default values.
* The default values will the values present in the ra.xml. If the
diff --git a/appserver/ejb/ejb-container/src/main/java/org/glassfish/ejb/security/application/EJBSecurityManager.java b/appserver/ejb/ejb-container/src/main/java/org/glassfish/ejb/security/application/EJBSecurityManager.java
index 975213665d9..fee1ea13ba8 100644
--- a/appserver/ejb/ejb-container/src/main/java/org/glassfish/ejb/security/application/EJBSecurityManager.java
+++ b/appserver/ejb/ejb-container/src/main/java/org/glassfish/ejb/security/application/EJBSecurityManager.java
@@ -26,13 +26,11 @@
import com.sun.enterprise.security.common.AppservAccessController;
import com.sun.enterprise.security.ee.SecurityUtil;
import com.sun.enterprise.security.ee.audit.AppServerAuditManager;
-import com.sun.enterprise.security.ee.authorize.PolicyContextHandlerImpl;
import com.sun.enterprise.security.ee.authorize.cache.PermissionCache;
import com.sun.enterprise.security.ee.authorize.cache.PermissionCacheFactory;
import com.sun.logging.LogDomains;
import jakarta.security.jacc.EJBMethodPermission;
-import jakarta.security.jacc.PolicyContext;
import java.lang.reflect.Method;
import java.net.MalformedURLException;
@@ -68,7 +66,6 @@
import org.glassfish.external.probe.provider.StatsProviderManager;
import org.glassfish.security.common.Role;
-import static java.lang.System.getSecurityManager;
import static java.util.Collections.synchronizedMap;
import static java.util.logging.Level.FINE;
import static java.util.logging.Level.SEVERE;
@@ -91,8 +88,6 @@ public final class EJBSecurityManager implements SecurityManager {
private static final Logger _logger = LogDomains.getLogger(EJBSecurityManager.class, LogDomains.EJB_LOGGER);
- private static final PolicyContextHandlerImpl pcHandlerImpl = PolicyContextHandlerImpl.getInstance();
-
// We use two protection domain caches until we decide how to
// set the applicationCodeSource in the protection domain of system apps.
//
@@ -200,7 +195,6 @@ public boolean authorize(ComponentInvocation componentInvocation) {
return ejbInvocation.getAuth().booleanValue();
}
- pcHandlerImpl.getHandlerData().setInvocation(ejbInvocation);
SecurityContext securityContext = SecurityContext.getCurrent();
@@ -293,7 +287,7 @@ public Object invoke(Method beanClassMethod, boolean isLocal, Object bean, Objec
// System Security Manager is disabled.
// Still need to execute it within the target bean's policy context.
// see CR 6331550
- if ((isLocal && getUsesCallerIdentity()) || getSecurityManager() == null) {
+ if ((isLocal && getUsesCallerIdentity())) {
return authorizationService.invokeBeanMethod(bean, beanClassMethod, methodParameters);
}
@@ -550,25 +544,7 @@ public Object run() {
@Override
public void resetPolicyContext() {
- if (System.getSecurityManager() == null) {
- PolicyContextHandlerImpl.getInstance().reset();
- PolicyContext.setContextID(null);
- return;
- }
- try {
- AppservAccessController.doPrivileged(new PrivilegedExceptionAction<>() {
- @Override
- public Object run() throws Exception {
- PolicyContextHandlerImpl.getInstance().reset();
- PolicyContext.setContextID(null);
- return null;
- }
- });
- } catch (PrivilegedActionException pae) {
- _logger.log(SEVERE, "Unexpected exception manipulating policy context", pae);
- throw new RuntimeException(pae);
- }
}
private SecurityContext getSecurityContext() {
diff --git a/appserver/jdbc/admin/src/test/resources/DomainTest.xml b/appserver/jdbc/admin/src/test/resources/DomainTest.xml
index 8160668d34a..af628c4d859 100644
--- a/appserver/jdbc/admin/src/test/resources/DomainTest.xml
+++ b/appserver/jdbc/admin/src/test/resources/DomainTest.xml
@@ -119,7 +119,7 @@
-client
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
+
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dsun.rmi.dgc.server.gcInterval=3600000
-Dsun.rmi.dgc.client.gcInterval=3600000
diff --git a/appserver/jdbc/jdbc-runtime/src/test/resources/DomainTest.xml b/appserver/jdbc/jdbc-runtime/src/test/resources/DomainTest.xml
index 67defe4336a..779f9cc064b 100644
--- a/appserver/jdbc/jdbc-runtime/src/test/resources/DomainTest.xml
+++ b/appserver/jdbc/jdbc-runtime/src/test/resources/DomainTest.xml
@@ -142,7 +142,7 @@
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
+
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dsun.rmi.dgc.server.gcInterval=3600000
diff --git a/appserver/orb/orb-connector/src/test/resources/DomainTest.xml b/appserver/orb/orb-connector/src/test/resources/DomainTest.xml
index 87460ecffe0..24435e9f9be 100644
--- a/appserver/orb/orb-connector/src/test/resources/DomainTest.xml
+++ b/appserver/orb/orb-connector/src/test/resources/DomainTest.xml
@@ -128,7 +128,7 @@
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
+
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dsun.rmi.dgc.server.gcInterval=3600000
diff --git a/appserver/resources/mail/mail-connector/src/test/resources/DomainTest.xml b/appserver/resources/mail/mail-connector/src/test/resources/DomainTest.xml
index e3cb9792a5c..517178c0ce5 100644
--- a/appserver/resources/mail/mail-connector/src/test/resources/DomainTest.xml
+++ b/appserver/resources/mail/mail-connector/src/test/resources/DomainTest.xml
@@ -134,7 +134,7 @@
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=${com.sun.aas.instanceRoot}/logs/jvm.log
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
+
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dsun.rmi.dgc.server.gcInterval=3600000
diff --git a/appserver/resources/resources-connector/src/test/resources/DomainTest.xml b/appserver/resources/resources-connector/src/test/resources/DomainTest.xml
index e32bdf6f3b1..27f89949f6a 100644
--- a/appserver/resources/resources-connector/src/test/resources/DomainTest.xml
+++ b/appserver/resources/resources-connector/src/test/resources/DomainTest.xml
@@ -125,7 +125,7 @@
-Djavax.xml.accessExternalSchema=all
-Djavax.management.builder.initial=com.sun.enterprise.v3.admin.AppServerMBeanServerBuilder
-XX:+UnlockDiagnosticVMOptions
- -Djava.security.policy=${com.sun.aas.instanceRoot}/config/server.policy
+
-Djava.security.auth.login.config=${com.sun.aas.instanceRoot}/config/login.conf
-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as
-Xmx512m
diff --git a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/JavaEESecurityLifecycle.java b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/JavaEESecurityLifecycle.java
index febbf218778..1c5f5c7cf2b 100644
--- a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/JavaEESecurityLifecycle.java
+++ b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/JavaEESecurityLifecycle.java
@@ -61,19 +61,6 @@ public void postConstruct() {
@Override
public void onInitialization() {
- java.lang.SecurityManager securityManager = System.getSecurityManager();
-
- // TODO: need someway to not override the SecMgr if the EmbeddedServer was
- // run with a different non-default SM.
- // right now there seems no way to find out if the SM is the VM's default SM.
- if (securityManager != null && !J2EESecurityManager.class.equals(securityManager.getClass())) {
- try {
- System.setSecurityManager(new J2EESecurityManager());
- } catch (SecurityException ex) {
- LOG.log(WARNING, "Could not override SecurityManager");
- }
- }
-
initializeJakartaAuthentication();
}
diff --git a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/SecurityUtil.java b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/SecurityUtil.java
index 54914c5a576..3b24991f09b 100644
--- a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/SecurityUtil.java
+++ b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/SecurityUtil.java
@@ -28,7 +28,6 @@
import jakarta.security.jacc.PolicyConfigurationFactory;
import jakarta.security.jacc.PolicyContextException;
-import java.security.Policy;
import java.util.Collection;
import java.util.logging.Logger;
@@ -106,10 +105,7 @@ public static void removePolicy(String contextId) throws IASSecurityException {
// find the PolicyConfig and delete it.
PolicyConfiguration pc = PolicyConfigurationFactory.getPolicyConfigurationFactory().getPolicyConfiguration(contextId, false);
pc.delete();
- // Only do refresh policy if the deleted context was in service
- if (wasInService) {
- Policy.getPolicy().refresh();
- }
+
} catch (ClassNotFoundException cnfe) {
String msg = localStrings.getLocalString("enterprise.security.securityutil.classnotfound",
diff --git a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/HandlerData.java b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/HandlerData.java
index 27dc99273d7..a1b63f64545 100644
--- a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/HandlerData.java
+++ b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/HandlerData.java
@@ -54,34 +54,6 @@ public void setInvocation(ComponentInvocation inv) {
this.inv = inv;
}
- public Object get(String key) {
- if (PolicyContextHandlerImpl.HTTP_SERVLET_REQUEST.equalsIgnoreCase(key)) {
- return httpReq;
- }
- if (PolicyContextHandlerImpl.SUBJECT.equalsIgnoreCase(key)) {
- return SecurityContext.getCurrent().getSubject();
- }
- if (PolicyContextHandlerImpl.REUSE.equalsIgnoreCase(key)) {
- PermissionCacheFactory.resetCaches();
- return Integer.valueOf(0);
- }
-
- if (inv == null) {
- return null;
- }
-
- if (PolicyContextHandlerImpl.SOAP_MESSAGE.equalsIgnoreCase(key)) {
- return ejbDelegate != null ? ejbDelegate.getSOAPMessage(inv) : null;
- }
- if (PolicyContextHandlerImpl.ENTERPRISE_BEAN.equalsIgnoreCase(key)) {
- return ejbDelegate != null ? ejbDelegate.getEnterpriseBean(inv) : null;
- }
- if (PolicyContextHandlerImpl.EJB_ARGUMENTS.equalsIgnoreCase(key)) {
- return ejbDelegate != null ? ejbDelegate.getEJbArguments(inv) : null;
- }
- return null;
- }
-
void reset() {
httpReq = null;
inv = null;
diff --git a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/PolicyContextHandlerImpl.java b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/PolicyContextHandlerImpl.java
index 5510d6e71a6..d9362c42bf4 100644
--- a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/PolicyContextHandlerImpl.java
+++ b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/PolicyContextHandlerImpl.java
@@ -34,15 +34,11 @@ public class PolicyContextHandlerImpl implements PolicyContextHandler {
public static final String ENTERPRISE_BEAN = "jakarta.ejb.EnterpriseBean";
public static final String EJB_ARGUMENTS = "jakarta.ejb.arguments";
public static final String SUBJECT = "javax.security.auth.Subject.container";
- public static final String REUSE = "java.security.Policy.supportsReuse";
private static PolicyContextHandlerImpl pchimpl = null;
private ThreadLocal thisHandlerData = new ThreadLocal();
- private PolicyContextHandlerImpl() {
- }
-
private synchronized static PolicyContextHandlerImpl _getInstance() {
if (pchimpl == null) {
pchimpl = new PolicyContextHandlerImpl();
@@ -50,15 +46,6 @@ private synchronized static PolicyContextHandlerImpl _getInstance() {
return pchimpl;
}
- public static PolicyContextHandlerImpl getInstance() {
- SecurityManager sm = System.getSecurityManager();
- if (sm != null) {
- sm.checkPermission(new SecurityPermission("setPolicy"));
- }
-
- return _getInstance();
- }
-
@Override
public boolean supports(String key) {
String[] s = getKeys();
@@ -72,14 +59,13 @@ public boolean supports(String key) {
@Override
public String[] getKeys() {
- String[] s = { HTTP_SERVLET_REQUEST, SOAP_MESSAGE, ENTERPRISE_BEAN, SUBJECT, EJB_ARGUMENTS, REUSE };
+ String[] s = { HTTP_SERVLET_REQUEST, SOAP_MESSAGE, ENTERPRISE_BEAN, SUBJECT, EJB_ARGUMENTS };
return s;
}
@Override
public Object getContext(String key, Object data) {
- // ignore data Object
- return getHandlerData().get(key);
+ return null;
}
public HandlerData getHandlerData() {
diff --git a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/cache/PermissionCache.java b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/cache/PermissionCache.java
index 10334d755e8..510b86f8a74 100644
--- a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/cache/PermissionCache.java
+++ b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/cache/PermissionCache.java
@@ -28,7 +28,6 @@
import java.security.Permission;
import java.security.PermissionCollection;
import java.security.Permissions;
-import java.security.Policy;
import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
import java.util.Enumeration;
@@ -47,7 +46,6 @@
public class PermissionCache extends Object {
private static final Logger LOG = LogDomains.getLogger(PermissionCache.class, LogDomains.SECURITY_LOGGER, false);
- private static Policy policy = Policy.getPolicy();
private static AllPermission allPermission = new AllPermission();
private Permissions cache;
@@ -231,7 +229,6 @@ private boolean checkCache(Permission p, Epoch e) {
setPolicyContextID(this.pcID);
}
- pc = policy.getPermissions(this.codesource);
} catch (Exception ex) {
LOG.log(Level.SEVERE, "JACC: Unexpected security exception on access decision", ex);
return false;
diff --git a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/cache/PermissionCacheFactory.java b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/cache/PermissionCacheFactory.java
index 573cd7ab312..cd55764d402 100644
--- a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/cache/PermissionCacheFactory.java
+++ b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/authorize/cache/PermissionCacheFactory.java
@@ -16,11 +16,8 @@
package com.sun.enterprise.security.ee.authorize.cache;
-import com.sun.enterprise.security.ee.J2EESecurityManager;
-
import java.security.CodeSource;
import java.security.Permission;
-import java.security.Policy;
import java.util.Hashtable;
import java.util.Iterator;
@@ -41,16 +38,7 @@ public class PermissionCacheFactory {
private static PermissionCache securityManagerCache = createSecurityManagerCache();
static {
- try {
- // make a call to policy.refresh() to see if the provider
- // calls the supportsReuse callback (see resetCaches below).
- // which will set supportsReuse to true (to enable caching).
- Policy policy = Policy.getPolicy();
- if (policy != null) {
- policy.refresh();
- }
- } catch (Exception pe) {
- }
+
}
/**
@@ -164,13 +152,6 @@ public static synchronized void resetCaches() {
supportsReuse = true;
- java.lang.SecurityManager sm = System.getSecurityManager();
- if (sm != null && sm instanceof J2EESecurityManager) {
- if (!((J2EESecurityManager) sm).cacheEnabled()) {
- ((J2EESecurityManager) sm).enablePermissionCache(securityManagerCache);
- }
- }
-
Iterator iter = cacheMap.values().iterator();
while (iter.hasNext()) {
Object cache = iter.next();
diff --git a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/perms/PermsArchiveDelegate.java b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/perms/PermsArchiveDelegate.java
index 73d9c3f391b..f42600038e6 100644
--- a/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/perms/PermsArchiveDelegate.java
+++ b/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/ee/perms/PermsArchiveDelegate.java
@@ -86,8 +86,6 @@ public static PermissionCollection processEEPermissions(SMGlobalPolicyUtil.Commp
public static void processModuleDeclaredAndEEPemirssions(SMGlobalPolicyUtil.CommponentType type, DeploymentContext context,
ClassLoader classloader) throws SecurityException {
- if (System.getSecurityManager() != null) {
-
if (!(classloader instanceof DDPermissionsLoader)) {
return;
}
@@ -107,7 +105,7 @@ public static void processModuleDeclaredAndEEPemirssions(SMGlobalPolicyUtil.Comm
PermissionCollection eePc = processEEPermissions(type, context);
ddcl.addEEPermissions(eePc);
- }
+
}
public static class SetPermissionsAction implements PrivilegedExceptionAction