IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Applets Java Discussion :

Applet bloqué par Java


Sujet :

Applets Java

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut Applet bloqué par Java
    Bonjour,

    J'ai un applet signé (non officiellement) qui marchait très bien jusqu'alors. Mais aujourd'hui j'ai un message d'erreur de Java "Les paramètres de sécurité Java ont empêchés le lancement de l'application" avec le journal d'erreur suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    com.sun.deploy.security.BlockedException: Les paramètres de sécurité Java ont empêché l'exécution de cette application. Vous pouvez modifier ce comportement dans le panneau de configuration Java.
    	at com.sun.deploy.security.SandboxSecurity.showBlockedDialog(Unknown Source)
    	at com.sun.deploy.security.TrustDecider.isAllPermissionGranted(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.isTrustedByTrustDecider(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.getTrustedCodeSources(Unknown Source)
    	at com.sun.deploy.security.CPCallbackHandler$ParentCallback.strategy(Unknown Source)
    	at com.sun.deploy.security.CPCallbackHandler$ParentCallback.openClassPathElement(Unknown Source)
    	at com.sun.deploy.security.DeployURLClassPath$JarLoader.getJarFile(Unknown Source)
    	at com.sun.deploy.security.DeployURLClassPath$JarLoader.access$1000(Unknown Source)
    	at com.sun.deploy.security.DeployURLClassPath$JarLoader$1.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at com.sun.deploy.security.DeployURLClassPath$JarLoader.ensureOpen(Unknown Source)
    	at com.sun.deploy.security.DeployURLClassPath$JarLoader.<init>(Unknown Source)
    	at com.sun.deploy.security.DeployURLClassPath$3.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
    	at com.sun.deploy.security.DeployURLClassPath.getLoader(Unknown Source)
    	at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper(Unknown Source)
    	at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    	at java.lang.ClassLoader.loadClass(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
    	at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown Source)
    	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)
    Caused by: java.lang.SecurityException: JAR manifest codebase mismatch for http://vps37508.ovh.net/modules/spyprices/applet/applet.jar
    	at com.sun.deploy.security.DeployManifestChecker.verify(Unknown Source)
    	at com.sun.deploy.security.DeployManifestChecker.verify(Unknown Source)
    	... 30 more
    Je souhaiterais que ce message n'apparaisse plus sans avoir à toucher à la config de JAVA

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Salut,

    depuis java 7 u25, tu dois inclure le codebase et les permissions demandées dans ton Manifest.MF:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Permissions: all-permissions (ou sandbox si t'as pas besoin de permissions particulières)
    Codebase: http://vps37508.ovh.net (le serveur où ser déployé ton applet)

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut
    Ah ça c'est vraiment emerdant. Mon applet est sensé pouvoir se gréffer sur une plateforme ecommerce Prestashop. Donc le nom du site change à chaque fois. Est ce que je peux demander à mes utilisateurs de régler quelque chose dans la config Java pour que Java soit permissif sur le nom de domaine?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut
    N'est-il pas possible de faire une espèce de script pour que mes utilisateurs puissent autosigner les jar (il y en a un principal et des librairies).
    Par exemple on joint au dossier fourni les exe keytools et jarsigner et on lance un script qui demande le nom de domaine et qui signe correctement tout ça ?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut
    Mieux encore, n'y aurait-il pas un petit certificat qui traine quelque part pour régler ce soucis ?

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Le truc, c'est que ça a été mis en place pour éviter que des gens réutilisent de manière détournée un applet sécurisée en la lancant avec d'autres paramètres.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut
    Oui je comprends mais c'est bien gentil tout ça. Moi mon applet c'est le webmaster du site qui le lance pour faire une récolte d'informations sur son disque et d'autres sites et les intégrer dans son site. Donc ça n'est pas une application sensible car elle est que dans le backoffice et que le visiteur n'y a pas accès.

    Mes utilisateurs s'en fiche de la sécurité, ils veulent juste que le script fasse ce qu'il a à faire. Mais il faut trouver un moyen impérativement pour que ça marche avec tous les domaines sinon je peux jeter 3 mois de boulot pour une vraie bêtise. Une bidouille m'irait très bien

  8. #8
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par Ceubex Voir le message
    Donc ça n'est pas une application sensible car elle est que dans le backoffice et que le visiteur n'y a pas accès.
    Ce qui est sensible, c'est qu'elle à accès à un disque dur. Et Java, avec tous les problèmes de sécurité récent, n'aime pas ça. Le problème n'est pas tes utilisateurs, mais toi, moi, mon voisin. Si ton applet a un trou de sécurité, qu'elle est signée par "food and co megacorp" et que quelqu'un peux se contenter de récupérer son jar, de le mettre sur www.bellimagesdefemmes.com pour aspirer ton disque, ça pose un soucis à la réputation de ta société, à oracle et à l'utilisateur

    Bref, c'est la mise en contexte pour t'expliquer pourquoi les applets deviennent chiantes et pourquoi c'est pas près de s'améliorer dans le futur

    En termes de bidouille, tu peux déjà essayer ça:

    Codebase: *

    mais je gage que dans 1 an ou deux, oracle ne tolérera plus ça non plus

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut
    Super merci, c'est déjà ça.
    Moi ça ne me gène pas qu'un avertissement soit mis mais il faut quand même qu'on parvienne à l’exécuter. Pour la réputation de la société, c'est un applet autosigné pour un domaine vraiment restreint alors on s'en fiche un peu aussi .

  10. #10
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2004
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 98
    Par défaut
    Bonjour.

    @tchize:
    Es-tu en train d'annoncer la mort des applets à moyen terme ???
    Si non par qui et comment peut-on faire signer une applet de sorte qu'elle soit exécutée ?

  11. #11
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    non je dis juste que oracle a commencé à serieusement revoir sa politique de sécurité, et ça ne m'étonnerais pas que, dans le futur, ils restreignent encore plus pour éviter les débordements. Là on a une restriction sur le domaine de l'applet, et un option dans le META-INF pour lever cette restriction. Ca sent l'option temporaire le temps que tout le monde s'adapte

  12. #12
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2004
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 98
    Par défaut
    Bonsoir.

    J'ai un peu de mal à comprendre le rôle des option du fichier MANIFEST. Pour mes applets, j'ai mis comme permissions "sandbox" et comme codebase le nom de nom de mon serveur ... Or même en local, Java bloque mes applets.

    Que dois-je corriger pour que les gens qui se connectent à mon site puisse exécuter mes applets ?

  13. #13
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut
    sandbox c'est pour qu'il y ai de fortes restriction. Change pour all-permissions

  14. #14
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    Enfin, dans tous les cas, on change les règles complètement sans se soucier de l'existant, je trouve ça vraiment limite de la part d'Oracle
    Je pense pour ma part que c'est la fin des applets avec autant de contraintes, et c'est bien dommage
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  15. #15
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2004
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 98
    Par défaut
    Citation Envoyé par Ceubex Voir le message
    sandbox c'est pour qu'il y ai de fortes restriction. Change pour all-permissions
    Bonjour.

    Je pense au contraire qu'une applet "sabdbox" a plus de chances de passer vu qu'elle a besoin de moins de liberté pour tourner. De plus mes applets n'ont réellement besoin que du 'sandbox" ...

  16. #16
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par amauryxiv Voir le message
    Or même en local, Java bloque mes applets.
    En sandbox, ça ne devrais pas. Tu peux nous donner tes logs?

    @OButterlin: je te comprends, mais dans le cas présent, se soucier de l'existant et continuer à assurer son fonctionnement ça veux dire continuer à assurer le fonctionnement de tous les trous de sécurité. Oracle a fortement remanié pour réduire les permissions et les trous. Maintenant faut pas non plus cirer au loup. J'ai une applet, développée il y a plus de 5 ans, qui nécessite des droit étendu puisqu'elle charge une librairie native et accès à un lecteur de smartcard. Elle tourne toujours sous ma java 1.7.0_45. Le path rajouté dans l'applet ici, en l'occurence, c'est une option supplémentaire, pour éviter de te faire tripatouiller ton applet en ton nom sans ton autorisation. Ce n'est pas une obligation.

  17. #17
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2004
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 98
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    En sandbox, ça ne devrais pas. Tu peux nous donner tes logs?
    Bonjour tchize_.

    Je n'arrive pas à savoir e quels logs tu parles ...

    A défaut, voici ce qu'affiche la console:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Ignored exception: com.sun.deploy.security.BlockedException: Vos paramètres de sécurité ont bloqué l'exécution d'une application sandbox auto-signée
    Je précise que le seule danger potentiel de mon applet réside dans des connexions HTTP avec mon serveur; il n'y a pas d'accès aux disques durs du client, et aucun socket TCP ouvert.

    Pour finir, je rencontre la même difficulté quand je tente de passer par Java Web Start ...

  18. #18
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    retire la signature de l'applet et regarde si ça passe

    Effectivement, sandbox ou pas, si tu configure java trop haut en sécurité, il refuse les certificats auto signés sans rien regarder d'autre avant

    Si tu reste en sandbox, t'as pas besoin d'être signé. Mieux vaut pas de signature qu'une auto signature.

    PS: pour éviter le déclenchement d'erreurs en mode sandbox, vérifie aussi que tu passe bien par les méthodes de Applet pour faire tes connexions http.

  19. #19
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2004
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 98
    Par défaut
    Bonsoir.

    J'ai enlevé la signature, il se passe exactement la même chose ...

    Quant au niveau de sécurité de Java, j'ai laissé celui qui est mis par défaut à l'installation, donc le même, sauf erreur de ma part, que tous les clients potentiels de mes applets ...

  20. #20
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    tu peux nous donner le message que tu as sans signer? Parce que tu ne peux pas avoir

    Vos paramètres de sécurité ont bloqué l'exécution d'une application sandbox auto-signée
    puisqu'elle est pas auto signée

Discussions similaires

  1. Site internet bloqué par Java
    Par jevany dans le forum Général Java
    Réponses: 3
    Dernier message: 24/02/2014, 12h54
  2. Rapport bloqué par le processus java.exe
    Par methodman225 dans le forum Jasper
    Réponses: 1
    Dernier message: 07/02/2011, 09h33
  3. [Applet]Horloge avec Java
    Par tachag dans le forum Applets
    Réponses: 2
    Dernier message: 28/12/2004, 16h12
  4. [Applet] Savoir si Java est installé ?
    Par MagicManu dans le forum Applets
    Réponses: 5
    Dernier message: 18/06/2004, 15h56
  5. Accentuation - pages html générées par Java
    Par phoebe dans le forum Linux
    Réponses: 4
    Dernier message: 28/05/2004, 12h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo