OVH Cloud OVH Cloud

problème de droit - rmi - policy

3 réponses
Avatar
marc26
salut

lors de la compilation d'un server rmi avec eclipse j'obtient:

ServerImpl err: access denied (java.net.SocketPermission 127.0.0.1:1099
connect,resolve)
java.security.AccessControlException: access denied
(java.net.SocketPermission 127.0.0.1:1099 connect,resolve)

pourtant le fichier policy contient:

grant {
// Allow everything for now
permission java.security.AllPermission;
};

dans mon build.xml j'ai

<target name="repository" description="Run the repository only">
<java classname="RepositoryApp" fork="true" dir=".">
<jvmarg value="-Djava.security.policy=policy"/>
</java>
</target>

<target name="server" description="Run the server only">
<java classname="ServerApp" fork="true" dir=".">
<jvmarg value="-Djava.security.policy=policy"/>
</java>
</target>

aucune erreur à la compilation...

une idée?

merci

3 réponses

Avatar
S.B
"marc26" a écrit dans le message de news:
oRAwf.35731$
salut

lors de la compilation d'un server rmi avec eclipse j'obtient:

ServerImpl err: access denied (java.net.SocketPermission 127.0.0.1:1099
connect,resolve)
java.security.AccessControlException: access denied
(java.net.SocketPermission 127.0.0.1:1099 connect,resolve)

pourtant le fichier policy contient:

grant {
// Allow everything for now
permission java.security.AllPermission;
};

dans mon build.xml j'ai

<target name="repository" description="Run the repository only">
<java classname="RepositoryApp" fork="true" dir=".">
<jvmarg value="-Djava.security.policy=policy"/>
</java>
</target>

<target name="server" description="Run the server only">
<java classname="ServerApp" fork="true" dir=".">
<jvmarg value="-Djava.security.policy=policy"/>
</java>
</target>

aucune erreur à la compilation...

une idée?


1) Vérifier l'emplacement du fichier de police.

2) Essayer le bout de code ci-dessous (a) avec le même type de build que
votre projet et (b) via la ligne de commande
'java -Djava.security.policy=policy -cp . SecurityTest':

public class SecurityTest {

public static void main(String[] pArgs) {
System.setSecurityManager(new SecurityManager());

System.getSecurityManager().checkAccept("localhost",1099);
}
}

Avatar
alexandre cartapanis
marc26 wrote:
salut

lors de la compilation d'un server rmi avec eclipse j'obtient:

ServerImpl err: access denied (java.net.SocketPermission 127.0.0.1:1099
connect,resolve)
java.security.AccessControlException: access denied
(java.net.SocketPermission 127.0.0.1:1099 connect,resolve)

pourtant le fichier policy contient:

grant {
// Allow everything for now
permission java.security.AllPermission;
};

dans mon build.xml j'ai

<target name="repository" description="Run the repository only">
<java classname="RepositoryApp" fork="true" dir=".">
<jvmarg value="-Djava.security.policy=policy"/>
</java>
</target>

<target name="server" description="Run the server only">
<java classname="ServerApp" fork="true" dir=".">
<jvmarg value="-Djava.security.policy=policy"/>
</java>
</target>

aucune erreur à la compilation...

une idée?

merci


Si vous travaillez sous linux/unix, peut etre verifier les droits...
Je sais que par exemple sous linux, seul root peut ouvrir des ports de
numero inferieur a 1000.

--
Alexandre CARTAPANIS - Responsable Système et Réseau
Email
Gsm. 06 72 07 51 55

Macymed SARL - 9 bvd Kraëmer 13014 Marseille France
Tél. 04 91 48 31 58 - Fax. 04 91 02 36 47
Web http://www.macymed.fr - Email

Avatar
collinm
j'ai décidé de rependre

j'ai tenté de suivre le tutoriel de sun dispo à l'adresse

http://java.sun.com/docs/books/tutorial/rmi/index.html

j'ai donc fait:

export
CLASSPATH=/home/collinm/public_html/classes:/home/collinm/public_html/cla sses/compute.jar

java -Djava.rmi.server.codebase=http://localhost/~collinm/classes/
-Djava.rmi.server.hostname=localhost -Djava.security.policy=java.policy
engine.ComputeEngine


j'obtient l'erreur:

ComputeEngine exception: Unknown host: host; nested exception is:
java.net.UnknownHostException: host
java.rmi.UnknownHostException: Unknown host: host; nested exception is:
java.net.UnknownHostException: host
at
sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:572)
at
sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:185)
at
sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:171)

pourtant apache fonctionne
et
http://localhost/~collinm/classes/

fonctionne très bien dans un browser...

j'ai essayé en étant root... et idem..