IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Services Web Java Discussion :

[JAX-WS][Jboss 5] via https !


Sujet :

Services Web Java

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2008
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 197
    Par défaut [JAX-WS][Jboss 5] via https !
    Bonjour, j'ai un webService JAX-WS déployée sur Jboss 5 via http, je voudrai faire l'appel à ce web service avec une requête sécurisé via https,
    Comment je procède ?

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2008
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 197
    Par défaut
    J'ai arrivé à tourné mon application déployé dans Jboss 5 via le protocole HTTPS,mais ce que j'ai pas compris c'est que le fichier qui m'a été fourni a l'extension .jks par contre j'ai trouvé des tutos qui disaient que le clé doit être d'extension .keystore :
    keystoreFile="${jboss.server.home.dir}/conf/server.keystore"
    C'est quoi la différence entre les deux ? se sont-ils de même type ??

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2008
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 197
    Par défaut
    J'ai trouvé la réponse, c'est un format de keyStore propriétaire de SUN.

  4. #4
    Membre éclairé Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404
    Par défaut
    Salut

    je voudrai faire l'appel à ce web service avec une requête sécurisé via https,
    Comment je procède ?
    Attention, si c'est une authentification réciproque, il te faut également un truststore. (cacerts).

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2008
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 197
    Par défaut
    Effectivement, lors de l'appel du webService dans le code Java il y a une exception de type sun.security.validator.ValidatorException sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target.

    Je ne suis pas sûr si c'est à cause que le keystore est non valide (il faut payer), mais après une première recherche il se peut qu'il me manque un truststore, mais comment générer un tel type de fichier et est ce qu'il y a d'autre config à faire ou code à ajouter ??

    Merci d'avance.

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2008
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 197
    Par défaut
    J'ai ajouté ces deux ligne dans mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    System.setProperty("javax.net.ssl.trustStore", "/conf/keystore.jks");
    System.setProperty("javax.net.ssl.trustStorePassword", "password");
    l'exception a changé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    javax.xml.ws.WebServiceException: Failed to access the WSDL at: https://pc121:1443/Sipa-ws/SipaWS?wsdl. It failed with: 
            java.security.cert.CertificateException: No name matching pc121 found.
            at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.tryWithMex(RuntimeWSDLParser.java:151)
    ...
    Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No name matching pc121 found
    Il se peut que c'est un pb liée à l'authentification ! je vais chercher de plus.

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2008
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 197
    Par défaut
    J'ai ajouté ce morceaux de code lors de l'appel de mon web service:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
        static {
            //for localhost testing only
            javax.net.ssl.HttpsURLConnection.setDefaultHostnameVerifier(
                    new javax.net.ssl.HostnameVerifier() {
     
                        public boolean verify(String hostname,
                                javax.net.ssl.SSLSession sslSession) {
                            if (hostname.equals("localhost")) {
                                return true;
                            }
                            return false;
                        }
                    });
        }
    Et ça marche il n'y a plus un message d'erreur, mais dans le browser il m'affiche une erreur http: Etat HTTP 401 - Access refused
    Est ce qu'il y a d'autres configs à faire !? Et merci.

  8. #8
    Membre éclairé Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404
    Par défaut
    ça doit être un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    String keystoreFile   = "C:\\Documents and Settings\\...\\keystore.jks";
    String trustStore = "C:\\Documents and Settings\\...\\cacerts";
     
    System.setProperty("javax.net.ssl.keyStore", keystoreFile);
    System.setProperty("javax.net.ssl.keyStorePassword", "changeit");
     
     
    System.setProperty("javax.net.ssl.trustStore", trustStore );
    System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
    System.setProperty("javax.net.ssl.trustStoreType", "JKS");

    Mais le trustStore n'est pas forcement nécessaire.

    Un peu d'aide.

  9. #9
    Membre éclairé Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404

  10. #10
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2008
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 197
    Par défaut
    Merci Rockley enfin ça marche, mais juste je veux savoir est ce que avec cette config mon web service sera sécurisé à 100% (bon je sais bien qu'il n'y a pas de pourcentage soit sécurisé soit non ), mais je veux dire est ce que je garantie qu'il n'y a plus d'appels avec des requêtes http.

    Merci.

  11. #11
    Membre éclairé Avatar de rockley
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    404
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 404
    Par défaut
    Je te dis ce que j'ai compris ( à savoir que je ne connaissais rien y'a 3 mois ).


    HTTPS: c'est HTTP+SSL,
    Vu que t'a mis en place une communication SSL avec des certificats, tes appels se feront en HTTPS.

    Après, rien n'est sûr à 100%

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mise en place d'un Web Service via HTTPS avec JBoss AS7
    Par scandinave dans le forum Services Web
    Réponses: 5
    Dernier message: 13/08/2013, 18h42
  2. [JAX-WS][Jboss][mod_jk] via https !
    Par sal.gass dans le forum Services Web
    Réponses: 4
    Dernier message: 22/03/2011, 09h53
  3. Comment afficher une image à la volée via http ?
    Par reg11 dans le forum Web & réseau
    Réponses: 4
    Dernier message: 30/06/2005, 09h44
  4. IOR via http?
    Par Spoutnik dans le forum CORBA
    Réponses: 4
    Dernier message: 31/01/2005, 17h44
  5. [web] rapatrier un document via HTTP
    Par ddhia dans le forum Web
    Réponses: 2
    Dernier message: 08/04/2003, 11h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo