Je travaille sur un projet depuis 6 mois. Pour ce projet, j'ai une instance de serveur de verre de verre dans lequel un service Web est déployé. À la clientèle, j'utilise JavaFX2.2 qui demande des demandes de repos avec Jersey (demandes / réponses XML, sans Json) avec authentification de base.
Lorsque l'utilisateur démarre le programme (JWS / JnLP), ils entrent normalement leurs informations d'identification dans une fenêtre de connexion définie propre, appuyez sur la touche de connexion et commencez à fonctionner. Depuis 7 mars21, j'ai eu une pop-up supplémentaire "authentification requise" Java pour une raison quelconque (probablement en raison de la sécurité modifiée en 7U21). P>
p>
Pour être sûr, il n'avait rien à voir avec les problèmes de compatibilité entre les versions Java, j'ai mis à jour le serveur également à 7U21, donc : p>
Si je frappe le bouton Annuler dans la fenêtre "Authentification requise" ci-dessus ci-dessus, le programme démarre-t-il, mais il ne fonctionne pas stable lors de la demande: P>
security: Trust for: http://<url>/lib/jersey-core-1.17.jar has ended: Thu Jan 01 01:00:00 CET 1970 security: Validate the certificate chain using CertPath API security: SHA-256 finger print: <bunch of chars> security: The certificate hasnt been expired, no need to check timestamping info security: The CRL support is disabled security: The OCSP support is disabled security: This OCSP End Entity validation is disabled security: Start comparing to jurisdiction list with this certificate basic: Plugin2ClassLoader.getPermissions CeilingPolicy allPerms security: JAVAWS AppPolicy Permission requested for: http://<url>/lib/jersey-core-1.17.jar
3 Réponses :
La réponse est ici: p>
Java Web Start permet de vous authentifier P>
Je ne sais pas pourquoi vous n'avez pas expérimenté ce comportement auparavant. Il peut avoir été un problème de sécurité dans les versions précédentes de Java Web Démarrer ou des versions précédentes de votre navigateur. P>
Je ne pense pas que l'erreur IO est liée. p>
Ce n'est pas vraiment la même chose parce que je n'ai pas à passer l'authentification du site (il n'y en a pas) à Java. Toute l'authentification se produit dans le programme lui-même. Ainsi, l'utilisateur clique simplement sur un lien hypertexte vers le fichier JNLP, le programme est lancé via JWS et l'utilisateur pour voir la fenêtre de connexion (propre faite). Il ou elle entre dans les références et continue de fonctionner. Je n'ai jamais eu une fenêtre d'authentification supplémentaire Java avant, c'est pourquoi je suis tout confondu :)
Plus de tests semble souligner que cela a quelque chose à voir avec 7U21. Les versions précédentes de Java n'ont pas ce problème, il semble ... des idées?
Pas sûr, mais cela peut être lié à votre problème: oracle.com/technetwork/java/javase/tech/... (7U21 semble introduire des modifications liées à la sécurité).
Merci d'avoir souligné cela, mais je n'ai pas d'indice pour résoudre ce problème. Ajouté des résultats supplémentaires au premier post. Tout doit-il être signé par des CA de confiance?
Nouvelles conclusions ajoutées, 6 juin 2013.
Ma réponse à votre Question de suivi devrait également répondre à cette question. < / p>
En bref: Java Web Start Caches Réponses HTTP par défaut dans JDK7 et vous devez définir l'en-tête de contrôle de cache sur "No-cache, no-store" sur la demande de votre client et sur les réponses du service de repos de maillot. p>
Ces types de problèmes peuvent souvent être résolus par Paramètres du navigateur em> strong>: p>
Si vous êtes dans un environnement d'entreprise géré transmet le problème à votre personnel de sécurité Internet, car ce type de paramètres sont généralement désactivés pour les PLEBS. P>
comme expliqué pour IE: strong> p>
Si l'accès à partir d'un plugin est demandé à l'extérieur de la zone "intranet", il est automatiquement considéré comme suffisamment sécurisé pour transmettre des informations de nom d'utilisateur / mot de passe au domaine demandeur. D'où la connexion contextuelle pour lui fournir les informations d'identification du client. L'ajout du domaine à la zone "intranet" résoudra ce problème dans la plupart des cas. P>
Avez-vous résolu cela? J'ai essayé de suivre les conseils de la réponse acceptée par Dennis-the-menace en vain. Avez-vous changé quelque chose de côté serveur en ce qui concerne le contrôle du cache?
Salut Aioobe, vous pouvez trouver la réponse ici: Stackoverflow.com / Questions / 17278303 / ...