[JAVA] Applet signée, confirm accept certif.

[Résolu/Fermé]
Signaler
Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
-
Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
-
Bonjour,

J'ai une applet signée afin d'effectuer un upload depuis le poste client sur mon serveur. Elle est bien intégrée, etc... et tout fonctionne. Seulement j'ai constaté que lorsque le client n'acceptais pas le certificat lors de la demande, mon applet se lance et émet une exception de sécurité (forcément puisqu'il n'a pas les droits pour le coup...)

Je voulais savoir s'il y avait moyen de savoir dans ma classe d'applet si le certificat a bien été accepté ou non ?
Si ce n'est pas possible, comment faire pour ne pas lancer mon applet si l'utilisateur n'accepte pas le certificat ?

Merci à vous.

4 réponses

Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 601
mmm... un try/catch approprié sur une action nécessitant les autorisation de sécurité devrait te permettre de choper ça, non ?

(Je n'ai pas testé, hein, c'est une supposition).
Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
852
Tout a fait d'accord avec toi, et c'est ce que j'ai fait en premier pour corriger le bug.
Mais je trouve ca un peu crado...

Je voulais savoir s'il n'y avait pas un autre moyen plus "propre" de connaitre l'action de l'utilisateur lors de l'acceptation du certificat.
Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 601
Je pense que tu dois pouvoir interroger le gestionnaire de sécurité au tout début de ton applet.
ça devrait te permettre d'afficher un message signalant que l'acception de l'applet est nécessaire pour continuer.
Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
852
Merci du bon conseil :)

Effectivement, c'est la même chose, mais en un peu plus propre peut etre.


Voilà le code au cas ou certains s'y intéressent à l'avenir :

// --- Check if the user had accept the cerfiticate :
SecurityManager mySecurity = System.getSecurityManager();
 if (mySecurity != null) { 
     try{
	   mySecurity.checkWrite( /*chemin acces au fichier (String) */ );
    }catch( SecurityException se ){
       // --- A security error occurs so the user hadn't accept the    
       // --- certificate
       // --- TRAITEMENT DE L'ERREUR ICI
       return;
    }
}


Merci à toi Sebsauvage :)

Messages postés
32844
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 601
Merci de partager le code !