Comment puis-je accorder un site applet AllPermission privilège?

J'aimerais préciser certains applets de courir avec java.security.AllPermission sur mon ordinateur (pour le débogage et les tests de sécurité). Cependant, je ne veux pas activer tous applets que je cours pour avoir cette autorisation. Ainsi, l'édition de mon utilisateur Java politique de fichier (dont j'ai assuré est le bon fichier de stratégie par le biais de tests), j'ai essayer de mettre cette valeur:

grant codeBase "http://host_where_applet_lives/-" {
 permission java.security.AllPermission;
};

Cette valeur échoue lorsque l'applet essaie de faire quelque chose de puissant (créer un nouveau Fil de discussion, dans mon cas). Cependant, quand j'ai mis la valeur suivante:

grant {
 permission java.security.AllPermission;
};

L'applet est en mesure d'effectuer la puissante opération. La seule différence est l'absence d'un codeBase attribut.

Une réponse à une question similaire posée ici [1], semble suggérer (mais ne jamais montrer ou prouver) que AccessController.doPrivileged() appels peuvent être nécessaires. Pour moi, cela sonne faux, comme je n'ai pas besoin que l'appel quand je accorder les autorisations pour tous les applets (le deuxième exemple que j'ai montré). Même si c'est une solution, qui jonchent les applets, je lance avec AccessController.doPrivileged() appels n'est pas facile ni forcément possible. Pour couronner le tout, mes tests montrent que cela ne fonctionne tout simplement pas de toute façon. Mais je suis heureux d'entendre plus d'idées autour d'elle.

[1] Ne pouvez pas obtenir AllPermission configuré pour l'intranet de l'applet. Quelqu'un peut-il aider?

  • Le doPrivileged dans ce commentaire fait référence à une applet d'être appelé par le code JavaScript via LiveConnect. Être extrêmement prudent avec doPrivileged, et avec le code de confiance en général.
  • Oui, mais il indique que doPrivileged() ne -rien - spécial lors de l'exécution sous AllPermission, dont j'affirme qu'il ne devrait pas.
InformationsquelleAutor nahsra | 2010-05-13