Excellente question. Ironiquement, cette fonctionnalité a été exposée dans l'ancienne JVM de Microsoft (il y a 10 ans).
Contrôle de Java dans Internet Explorer
https://blogs.msdn.com/b/ieinternals/archive/2011/05/15/controlling-java-in-internet-explorer.aspx
Récemment, la façon de contrôler l'utilisation de Java dans Internet Explorer a suscité un certain intérêt. Java est une forme d'extensibilité unique car elle peut être invoquée de deux manières:
- Utilisation d'un élément APPLET
- Utilisation d'un élément OBJECT avec un CLSID d'une JVM
Ces deux méthodes d'appel sont soumises à des contrôles de sécurité différents, que je décrirai dans l'article d'aujourd'hui.
Contrôle des balises d'applet
Lorsque Internet Explorer rencontre une balise APPLET, il vérifie la valeur URLACTION_JAVA_PERMISSIONS pour déterminer si l'APPLET doit être chargé. Si la valeur est URL_POLICY_JAVA_PROHIBIT, la balise APPLET ne peut pas charger la JVM. Dans les versions antérieures d'Internet Explorer, lorsqu'une machine virtuelle Java Microsoft était disponible, cette URLAction était exposée dans la boîte de dialogue Outils> Options Internet> Sécurité> Personnalisé…, mais elle a depuis été supprimée.
Vous pouvez utiliser l'Éditeur de stratégie de groupe pour contrôler l'URLAction sous le nœud \ Modèles d'administration \ Composants Windows \ Internet Explorer \ Panneau de configuration Internet \ Page de sécurité \ ZoneID:
Vous pouvez également effectuer un petit ajustement du registre pour ajouter de nouveau les options JVM au panneau de configuration Internet:
Le script de registre tire parti du fait que l'interface utilisateur du Panneau de configuration Internet est extensible via le registre; il crée simplement un nouvel élément qui ajuste les valeurs de l'URLAction URLACTION_JAVA_PERMISSIONS.
Si vous ajustez les paramètres de la zone Internet de «Haute sécurité» à Désactiver (URL_POLICY_JAVA_PROHIBIT), tout site tentant d'utiliser une balise APPLET constatera que l'applet ne se charge pas et une notification s'affiche:
Contrôle des balises d'objet
Malheureusement, lorsqu'un site utilise une balise OBJECT pour charger Java, un chemin de code entièrement différent est exécuté. Dans le cas de la balise OBJECT, l'URLAction JAVA_PERMISSIONS n'est pas consultée, car en ce qui concerne Internet Explorer, il peut s'agir de tout type d'objet. Au lieu de cela, les fonctionnalités de contrôle ActiveX traditionnelles sont consultées (par exemple, filtrage ActiveX, ActiveX par site, gestion des modules complémentaires, etc.). Vous pouvez utiliser la fonctionnalité Outils> Gérer les modules complémentaires d'IE pour examiner ou ajuster l'état de l'objet plug-in Java:
Remarque: On me dit que l'objet d'aide du navigateur d'assistance du plug-in Java SSV ne doit pas être désactivé, car il garantit que les sites Web ne peuvent pas tenter de charger des versions plus anciennes (non sécurisées) de la machine virtuelle Java que vous avez peut-être installée. Cependant, vous remarquerez que vous payez une pénalité de performance au démarrage de l'onglet pour charger ce BHO — c'est l'une des nombreuses raisons pour lesquelles je n'installe pas Java sur mes PC.
Si vous sélectionnez le plug-in Java, vous pouvez cliquer sur le bouton Désactiver pour empêcher Java d'être chargé par une balise OBJECT. Alternativement, si vous cliquez sur le lien Plus d'informations , vous pouvez effacer le * de la liste des sites sur lesquels le plug-in Java peut s'exécuter:
Si vous visitez par la suite un site qui tente d'appeler Java en tant que balise OBJECT, vous verrez une barre de notification vous invitant à autoriser l'exécution de Java sur le site actuel.
Donc, si vous souhaitez autoriser Java à s'exécuter uniquement dans les zones Intranet et Sites de confiance:
- Ajustez l'URLAction pour la zone Internet à désactiver
- Supprimer le * de la liste par site du contrôle ActiveX
L'étape 1 garantira que seuls les sites de la zone intranet et de la zone de confiance peuvent charger Java pour les balises APPLET. L'étape 2 garantira que le plug-in Java ne se chargera pas en tant qu'OBJET sur les sites de la zone Internet; une notification sera affichée à la place. Étant donné que l'intranet et les sites de confiance ignorent la liste ActiveX par site, vous ne verrez aucun avertissement supplémentaire sur ces sites.