web-dev-qa-db-fra.com

SecurityException lors de l'exécution du fichier jnlp (attribut Manquant d'autorisations requises dans le fichier jar principal)

Système d'exploitation: Windows 7 64 bits

Java: jdk1.7.0_51

J'ai un fichier JNLP. Lorsque je double-clique dessus, une exception se produit comme suit:

Application Error: Unable to launch the application
Exception: Java.lang.SecurityException: Missing required Permissions manifest attribute in main jar
31
Ripon Al Wasim

Attributs du fichier manifeste JAR pour la sécurité

Le manifeste du fichier JAR contient des informations sur le contenu du fichier JAR, y compris des informations de sécurité et de configuration.

Ajoutez les attributs au manifeste avant la signature du fichier JAR.
Voir Modification d’un fichier manifeste dans le Java Tutoriel pour obtenir des informations sur l’ajout d’attributs au fichier manifeste JAR.

Attribut d'autorisations

L'attribut Autorisations permet de vérifier que le niveau d'autorisation demandé par le RIA lors de son exécution correspond au niveau d'autorisation défini lors de la création du fichier JAR.

Utilisez cet attribut pour empêcher quelqu'un de redéployer une application signée avec votre certificat et de l'exécuter à un niveau de privilège différent. Définissez cet attribut sur l'une des valeurs suivantes:

  • sandbox - s'exécute dans le sandbox de sécurité et ne nécessite aucune autorisation supplémentaire.

  • all-permissions - requiert l'accès aux ressources système de l'utilisateur.

Modifications du curseur de sécurité:

Les modifications suivantes apportées au curseur de sécurité ont été incluses dans cette version (7u51):

  • Bloquer les applets auto-signées et non signées avec un paramètre de sécurité élevé
  • Attribut Autorisations requises pour le paramètre de haute sécurité
  • Avertir les utilisateurs d'attributs d'autorisations manquants pour le paramètre de sécurité moyenne

Pour plus d'informations, voir Panneau de configuration Java documentation.

enter image description here

échantillon MANIFEST.MF

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.3
Created-By: 1.7.0_51-b13 (Oracle Corporation)
Trusted-Only: true
Class-Path: lib/plugin.jar
Permissions: sandbox
Codebase: http://myweb.de http://www.myweb.de
Application-Name: summary-applet

49
moskito-x

Si vous souhaitez définir ceci globalement pour tous les utilisateurs d'une machine, vous pouvez créer les structures de répertoire et de fichier suivantes:

mkdir %windir%\Sun\Java\Deployment

Créez un fichier deployment.config avec le contenu:

deployment.system.config=file:///c:/windows/Sun/Java/Deployment/deployment.properties
deployment.system.config.mandatory=TRUE

Créer un fichier deployment.properties

deployment.user.security.exception.sites=C\:/WINDOWS/Sun/Java/Deployment/exception.sites

Créer un fichier exception.sites

http://example1.com
http://example2.com/path/to/specific/directory/

Référence https://blogs.Oracle.com/Java-platform-group/entry/upcoming_exception_site_list_in

4
bcjenkins