Hallo,
ich habe im deployment.properties File folgende Policies für ein signiertes Browser-Applet definiert:
deployment.security.trusted.policy=file://$SYSTEM_HOME/security/trusted.policy
deployment.system.security.policy=file://$SYSTEM_HOME/security/untrusted.policy
deployment.user.security.policy=file://$USER_HOME/security/java.policy
das signierte Applet schreibt unter C:\tmp\applets\ die Datei TrustedApplet.
Der Inhalt der Policy Dateien untrusted.policy und java.policy ist leer.
Der Inhalt der Policy trusted.policy ist:
/* AUTOMATICALLY GENERATED ON Fri Jul 13 14:41:06 CEST 2007*/
/* DO NOT EDIT */
grant {
permission java.lang.RuntimePermission "usePolicy";
permission java.security.AllPermission;
};
Ferner habe ich die in der Java.security folgende Policyfiles auskommentiert, da diese ausschliesslich durch die deployment.properties Datei definiert werden sollen:
#policy.url.1=file:C:/WINXP/Sun/Java/Deployment/security/untrusted.policy
#policy.url.2=file:${user.home}/Application Data/Sun/Java/Deployment/security/java.policy
#policy.url.3=file:C:/WINXP/Sun/Java/Deployment/security/trusted.policy
...eigentlich sollte es so sein, das diese Applet ohne Prüfung des Zertifikats ausgeführt wird, genau das geschieht jedoch nicht. Ich erhalt den Sicherheits-Hinweis: Zertifikat nicht verifiziert (Code wird als nicht signiert behandelt). Beim drücke der OK Taste erscheint daher natürlich die AccessControlException: access denied....
Was mache ich falsch - weiss jemand Rat?
*Die Ausgabe der Java-Console:
java.security.cert.CertificateException: Ihre Sicherheitskonfiguration lässt die Erteilung von Berechtigungen an neue Zertifikate nicht zu
at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(Unknown Source)
at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(Unknown Source)
at sun.plugin.security.PluginClassLoader.getPermissions(Unknown Source)
at java.security.SecureClassLoader.getProtectionDomain(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
ich habe im deployment.properties File folgende Policies für ein signiertes Browser-Applet definiert:
deployment.security.trusted.policy=file://$SYSTEM_HOME/security/trusted.policy
deployment.system.security.policy=file://$SYSTEM_HOME/security/untrusted.policy
deployment.user.security.policy=file://$USER_HOME/security/java.policy
das signierte Applet schreibt unter C:\tmp\applets\ die Datei TrustedApplet.
Der Inhalt der Policy Dateien untrusted.policy und java.policy ist leer.
Der Inhalt der Policy trusted.policy ist:
/* AUTOMATICALLY GENERATED ON Fri Jul 13 14:41:06 CEST 2007*/
/* DO NOT EDIT */
grant {
permission java.lang.RuntimePermission "usePolicy";
permission java.security.AllPermission;
};
Ferner habe ich die in der Java.security folgende Policyfiles auskommentiert, da diese ausschliesslich durch die deployment.properties Datei definiert werden sollen:
#policy.url.1=file:C:/WINXP/Sun/Java/Deployment/security/untrusted.policy
#policy.url.2=file:${user.home}/Application Data/Sun/Java/Deployment/security/java.policy
#policy.url.3=file:C:/WINXP/Sun/Java/Deployment/security/trusted.policy
...eigentlich sollte es so sein, das diese Applet ohne Prüfung des Zertifikats ausgeführt wird, genau das geschieht jedoch nicht. Ich erhalt den Sicherheits-Hinweis: Zertifikat nicht verifiziert (Code wird als nicht signiert behandelt). Beim drücke der OK Taste erscheint daher natürlich die AccessControlException: access denied....
Was mache ich falsch - weiss jemand Rat?
*Die Ausgabe der Java-Console:
java.security.cert.CertificateException: Ihre Sicherheitskonfiguration lässt die Erteilung von Berechtigungen an neue Zertifikate nicht zu
at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(Unknown Source)
at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(Unknown Source)
at sun.plugin.security.PluginClassLoader.getPermissions(Unknown Source)
at java.security.SecureClassLoader.getProtectionDomain(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)