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 :

[Webservice]Sécuriser un service web


Sujet :

Services Web Java

  1. #1
    Membre habitué

    Inscrit en
    Mai 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 60
    Points : 171
    Points
    171
    Par défaut [Webservice]Sécuriser un service web
    Bonjour,

    J'ai developpé recemment quelques services web avec attachement. Malheureusement , je ne sais pas comment les sécuriser :
    Les fichier wsdl sont accecibles pour peu de trouver l'url et grace a l'attachement il est alors simple de passer n'importe quel fichier qui pourrait permettre de pirater le serveur qui les propose.

    Est ce que quelqu'un connais un façon simple de "cacher" un fichier wsdl ou bien d'obliger l'utilisateur des fonctions proposé par le wsdl de s'authentifier ?

    Merci



    [Modéré par Didier] : ajout de tag dans le titre - Les règles du forum Java

  2. #2
    Membre habitué
    Inscrit en
    Décembre 2002
    Messages
    186
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 186
    Points : 130
    Points
    130
    Par défaut
    une facon simple est de rajouter dans la signature des méthodes (c un peu intrusif!) OU dans l'entete soap, un couple login/mdp. Dans le meme style, tu prefera peut etre une methode login(...) qui te retourne un SessionID que le client doit rajouter à chaque appel.
    Dans ces 3 cas, tu dois gérer toi meme les authorisations.

    Tu peux également utiliser la sécurité au niveau du conteneur (tomcat, un AS, ...) sans trop de programmation (ou meme pas du tout)

    Tu as aussi la possibilité de protéger le wsdl par son URL

  3. #3
    Membre habitué

    Inscrit en
    Mai 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 60
    Points : 171
    Points
    171
    Par défaut
    Merci collègue Dijonnais, je vais essayer sa

  4. #4
    Membre habitué

    Inscrit en
    Mai 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 60
    Points : 171
    Points
    171
    Par défaut
    Don ccomme conseillé , j''ai utilisé une protection du type login/mdp , une authentification de type http BASIC que l'on trouve un peu partout.

    Malheureusement , apres avoir fait tout ce qu'il fallais (création du login/mdp)
    modification du fichier web.xml pour y inserer le type d'auth etc etc j'ai tenté d'acceder a mon fichier wsdl ...

    Au debut tout va bien , apparition d'un prompt qui me demande mon login , mdp , je me dit "chouette sa marche" et malheureusement une fois rentrée le
    bon login/mdp , je tombe sur cette erreur

    Etat HTTP 403 - L'accès à la ressource demandée a été interdit

    J'ai essayé de rentrer un mdp bidon voir si sa venais aps de sa , et non , si le login/mdp ets bidon , le prompt réapparait.

    Si quelqu'un voit d'ou sa peut venir , moi sa fait une bonne journée et demi que je suis dessus et j'ai toujours pas trouvé

  5. #5
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 78
    Points : 73
    Points
    73
    Par défaut
    il y a un truc que je ne comprend pas. lorsque tu as créé le client de ton service web à l'aide de ton fichier wsdl, tu n'as plus besoin de de ce fichier normalement ?

  6. #6
    Membre habitué

    Inscrit en
    Mai 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 60
    Points : 171
    Points
    171
    Par défaut
    En effet , mais le fichier wsdl est censé rester disponible même s'il est sécurisé.
    C'est bien le but de la manoeuvre : Sécuriser le Web service et donc par la meme le wsdl afin que les personnes privilégié puisse créer un client a partir de ce wsdl et non les autres.

    Et d'ailleurs même le client une fois crée , il ne parvient pas a utiliser le web service correctement du a la meme erreur , ce qui signifie que le endpoitn n'est pas disponible.

  7. #7
    Membre habitué
    Inscrit en
    Décembre 2002
    Messages
    186
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 186
    Points : 130
    Points
    130
    Par défaut
    - quel outils utilises tu pour génerer le stub?
    - tu n'a pas oublié de spécifier les login/mdp avant l'appel (dans le stub)?
    - tu es sur de ta configuration (realm, fichiers annexes avec les role/user...)?

  8. #8
    Membre habitué

    Inscrit en
    Mai 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 60
    Points : 171
    Points
    171
    Par défaut
    Citation Envoyé par mauvais_karma
    - quel outils utilises tu pour génerer le stub?
    wscompile

    Citation Envoyé par mauvais_karma
    - tu n'a pas oublié de spécifier les login/mdp avant l'appel (dans le stub)?
    Non

    Citation Envoyé par mauvais_karma
    - tu es sur de ta configuration (realm, fichiers annexes avec les role/user...)?
    Oui

    Ce qui me confirme cela d'ailleurs c'est ce que j'ai expliqué , si je tente d'acceder a mon fichiers wsdl avec un movais login/mdp , le prompt se réaffiche , me le demandant a nouveau , si je met les bon Login/mdp sa passe.

    J'ai vérifié les Realm role/user , bref je ne comprend pas.

  9. #9
    Membre habitué
    Inscrit en
    Décembre 2002
    Messages
    186
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 186
    Points : 130
    Points
    130
    Par défaut
    tu as quel erreur quand tu appuye sur annuler du prompt?

  10. #10
    Membre habitué

    Inscrit en
    Mai 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 60
    Points : 171
    Points
    171
    Par défaut
    Etat HTTP 401 -
    description : La requete necessite une authentification HTTP ().

    [Edit] Petite precision , je travaille sur Sun Application Server , pas Tomcat , mais le systeme est le même et je me sui bien sur renseigné pour savoir comment definir les role/user/realm[/edit]

  11. #11
    Membre habitué
    Inscrit en
    Décembre 2002
    Messages
    186
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 186
    Points : 130
    Points
    130
    Par défaut
    tu viens de dire que ca passe si tu rentre le bon login/mdp??? >> j'avais pas vu!!!
    je pense que tomcat t'as identifié mais tu n'as pas accès à l'url demandé. Jette un coup d'oeil du coté de <url-patern>

    Si tu pouvais mettre qq fichiers, ca ptete serait plus rapide

  12. #12
    Membre habitué

    Inscrit en
    Mai 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 60
    Points : 171
    Points
    171
    Par défaut
    J'ai bien regardé du coté Url pattern...

    Mon application s'appelle HiWS , mon web service aussi , il se lance sous une Servlet qui s'appelle WSServet_HiWS avec un Alias : HiWS

    L'url pour acceder a mon wsdl donne sa.

    http://localhost:8080/HiWS/HiWS?wsdl

    dans mon <url pattern> j'ai donc mis /HiWS/* , j'accede donc bien a ma page jsp qu'il y a au niveau de mon application web et sa me demande le mdp des que je v sur ma servlet.

    J'ai testé en mettant /* dans url pattern , je n'ai de façon logique plus acces ma page jsp a cet url http://localhost:8080/HiWS sans login/mdp , et donc de nouveau le meme probleme.

  13. #13
    Membre habitué

    Inscrit en
    Mai 2005
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 60
    Points : 171
    Points
    171
    Par défaut
    Bon , sa y est j'ai trouvé l'erreur.

    Pour un serveur d'application Sun , il y a un fichier en plus a renseigner afin de definir les roles pour une application ( sun-web.xml ) . Une fois fichier remplis tout marche tres bien

    merci a tous pour l'aide fournie !

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

Discussions similaires

  1. Comment Sécuriser un service web Axis ?
    Par zino developer dans le forum Services Web
    Réponses: 1
    Dernier message: 22/05/2012, 11h40
  2. Réponses: 9
    Dernier message: 11/01/2007, 21h23
  3. [WebService] Appel générique d'un service web
    Par chang_koukaii dans le forum Services Web
    Réponses: 7
    Dernier message: 17/12/2005, 00h05
  4. [WebService]Eclipse et les Web Services
    Par LESOLEIL dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 23/08/2005, 11h28
  5. [WebServices] consommer des services web ?
    Par Nycos62 dans le forum Services Web
    Réponses: 3
    Dernier message: 12/04/2005, 13h13

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