Quelle permissions.......... - Java - Programmation
Marsh Posté le 05-12-2003 à 20:14:20
un soft standalone? pour qu'il marche? accorder des perms AU SOFT? par qui/quoi les accorder?
Marsh Posté le 05-12-2003 à 20:24:27
the real moins moins a écrit : un soft standalone? pour qu'il marche? accorder des perms AU SOFT? par qui/quoi les accorder? |
Par permissions, j'entendais le contenu du policy file qu'on passe au security manager / access controller...
Marsh Posté le 05-12-2003 à 20:27:37
y'a un truc qui m'échappe: soit ton appli utilise pas le security manager (enfin, si mais celui par defaut quoi) et donc t'as pas de policy file à utiliser... soit y'a effectivement qqch, mais ds ce cas ça devrait etre documenté par ton appli non ?
par defaut une appli standalone elle peut tout faire
Marsh Posté le 05-12-2003 à 20:27:42
ReplyMarsh Posté le 05-12-2003 à 20:31:12
y a pas moyen comme en python de définir un environnement sécurisé : en gros un objet avec des méthodes d'accès au ressources, et cet objet fait le proxy avec l'appli et barre l'accès si nécessaire. après, avec on lance n'importe quel code... c'est pas la panacée mais ça sert des fois.
http://www.python.org/doc/current/lib/restricted.html
Marsh Posté le 05-12-2003 à 20:33:36
ben si, c'est ça le SecurityManager, et tu lui file les contraintes avec le fichier dont question ci-dessus.
mais par defaut y'a pas de restrictions, donc c pour ça que je vois pas ou il veut en venir
Marsh Posté le 05-12-2003 à 20:37:16
mais tu n'a pas moyen que créer un manager et de faire tourner dessus ce que tu veux, comme dans un bac à sable ?
parce que sinon c'est assez restreint comme emploi
Marsh Posté le 05-12-2003 à 20:38:48
ben si, c'est ce qui se passe pour les applets par exemple, elles sont lancées dans une sandbox gerée par un securityManager qui restreint plein de trucs
Marsh Posté le 05-12-2003 à 20:47:01
the real moins moins a écrit : ben si, c'est ça le SecurityManager, et tu lui file les contraintes avec le fichier dont question ci-dessus. |
t'as raison, y'a pas de restriction par défaut. en fait si tu ne spécifie pas de security manager, les applics (pas les applets) n'utilisent pas de sécurity manager (pour tester, y'a ka essayer l'appel de la méthode System.getSecurityManager().
Par contre, si on lance l'application avec un security manager, alors il faut donner un ensemble de permissions. dans ce cas, y'a aussi moyen de donner comme permission java.security.AllPermission qui permet aussi de contourner le programme. Mais cet exemple ne représente pas l'ensemble *minimal*. Ce que je cherche, c'est de savoir quelles sont les permissions absolument nécessaire pour que le logiciel fonctionne.
Autre aspect du même problème : quand on utilise une classe fournie par un tiers. je n'ai jamais vu dans la doc les permissions utilisées. y'a bien les exceptions, mais pas les permissions...... Bon ok ça fait un peu masturbation neuronale, mais "c'est tellement plus beau quand c'est inutile" non ?
merci d'avoir lu tout ça
Marsh Posté le 05-12-2003 à 20:50:19
haaaa ça y est j'ai compris
ben en fait je sais pas
Marsh Posté le 05-12-2003 à 20:00:08
Bonsoir
je suis toujours en train de jouer avec les differents outils de sécurité de Java. Je me suis posé la question suivante. Si je reçois un logiciel Java dont je n'ai pas les sources, y a-t-il un moyen fiable de trouver quel est l'ensemble minimal de permissions que je doit lui accorder pour qu'il marche... Y'a bien la méthode des essais et des erreurs, mais ça me semble peu sérieux comme méthodologie
merci et bonne soirée