Bonsoir à tous,
Je cherche depuis plus d'un mois -sans succès- à me servir du SecurityManager de Java pour "sandboxer" des plugins (threadés) lancé depuis une application principale sur laquelle je ne veux pas de SecurityManager (seulement sur les plugins)
Actuellement voilà mon schéma:
PluginSecurityManager.java
Plugin.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
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
SubPlugin.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
PotentiallyHarmfulPlugin.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
(L'héritage Plugin/SubPlugin vient des contraintes de mon projet et n'est à priori pas lié au problème)
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
Le souci avec ce schéma là qui me parait le plus "proche" techniquement de ce que je veux faire (j'ai testé plein de maniéres différentes, sans plus de succés), c'est que le SecurityManager n'est pas "restreint" au thread, et interdit donc par la suite tout appel de fonction dans le programme principale. Ce qui se constate par le fait également que quand je lance plusieurs plugins, après le premier, pour les autres le SecurityManager indique ne pas avoir d'accès aux permissions suivantes:
ce qui parait "logique" dans le sens ou je veux pas qu'on puisse changer de SecurityManager depuis un plugin (même si de toute façon actuellement, *rien* n'est autorisé depuis les plugins, voir code ci-dessus), mais me montre bien qu'il essaye de réactiver un SecurityManager alors que l'autre n'est pas desactivé. (donc en gros, ça marche pô.)("java.lang.RuntimePermission" "createSecurityManager")
("java.lang.RuntimePermission" "setSecurityManager")
("java.lang.RuntimePermission" "getProtectionDomain")
Suis-je loin de ce que je voudrais faire, est il possible de restreindre l'activation du SecurityManager à des threads spécifiques ?
En vous remerciant par avance,

 

 
		
		 
        

 
			
			
 
   


 SecurityManager "limité" à des threads pour système de plugins
 SecurityManager "limité" à des threads pour système de plugins
				 Répondre avec citation
  Répondre avec citation

 
  
 
 
			 
  
 
 
  
			 
   
				 Envoyé par adiGuba
 Envoyé par adiGuba
					


Partager