Re: Appliquer une Authentification Kerberos sur mes WebServices, de manière non intrusive ?
Olivier Lamy <[email protected]> Tue, 30 Aug 2011 16:45:25 +0200
| Newsgroups | gmane.comp.java.french.general |
|---|---|
| Message-ID | <CAPoyBqSA32BCc6TXcPoVqfkSacPCug7daPR6P-gQHU3GYp7KGQ@mail.gmail.com> |
Hello, Perso pour impl=E9menter une probl=E9matique de s=E9curit=E9 avec cxf j'ai plus utilis=E9 des interceptors cxf. Bon dans un contexte jax-rs (REST) et en ajoutant une annotation maison (petite intrusion dans le code) contenant les param=EAtres d'authz et karma n=E9cessaires sur la m=E9thode appel=E9e. (voir les source= s redback [2] doc [3]) HTH, --=20 Olivier Lamy Talend : http://talend.com http://twitter.com/olamy | http://linkedin.com/in/olamy [1] http://cxf.apache.org/docs/interceptors.html [2] http://svn.codehaus.org/redback/redback/trunk/redback-rest/ [3] http://redback.codehaus.org/integration/rest.html PS: si maintenant tu cherches =E0 avoir plus de d=E9tails sur WS-Security, WS-Policy, ... Je peux te mettre en relation avec Colm O Heigeartaigh qui travaille dans la m=EAme boite que moi et qui s'occupe de l'impl=E9mentation de tout ce qui est s=E9curit=E9 dans cxf. Le 30 ao=FBt 2011 16:14, Sylvain RICHET <[email protected]> a =E9crit : > Bonjour =E0 Tous, > > Ma probl=E8matique : > Appliquer une Authentification Kerberos sur ma 10aine de Web Services > publi=E9s, de mani=E8re non intrusive au niveau du code. > > Mon environnement Serveur > - JONAS 5.1.5 > - stack WS : JAX-WS, avec une impl=E9mentation CXF sous-jacente > - mes WS sont d=E9velopp=E9s sous forme d'EJB > > Les questions que je me pose : > - Puis-je faire cela de mani=E8re non intrusive, c.a.d sans avoir =E0 ajo= uter de > code dans mes WS tant au niveau serveur, qu'au niveau client ? > - Si oui, comment ? Avec WS-Security ? Avec WS-Policy ? En enrichissant l= a > WSDL de mes WS ? > - Qui joue le r=F4le de SPN Kerberos ? Comment le d=E9clarer ? > > Bien entendu, j'ai pas mal brows=E9. Peut-=EAtre mal ? > > 1) Il semblerait que je puisse configurer CXF pour faire du Kerberos, Ici > =A0=A0=A0 (... mais rien de bien d=E9taill=E9). > > 2) Ici, il y a cette petite phrase qui dit : >> >> In some cases it also possible to achieve the same end by extending your >> wsdl contract: you can add CXF specific extension elements to the wsdl:p= ort >> element and in that way fine tune the behaviour of the specified transpo= rt > > Aurais-je donc la possibilit=E9 de poser de l'Auth Kerberos rien qu'en > enrichissant mes WSDL ? > C'est sans doute en rapport avec : > - WS-Security / WS-Policy > - WS Kerberos Token Profile > > 3) Apache CXF s'appuie sur WSS4J comme impl=E9mentation de WS-Security. > CXF s'appuie sur Spring pour tout ce qui est configuration, et probableme= nt > celle li=E9 =E0 la s=E9curit=E9. > Mais ici, il y a cette aussi cette phrase qui dit : >> >> CXF provides two main options for adding UsernameToken security headers, >> both of which will be covered below: standard WSS4J interceptors and >> WS-SecurityPolicy. >> The latter, which relies on a WS-Policy element defined within the WSDL, >> offers a more automated approach to using security and is the preferred >> approach if you have this element defined. >> Use WSS4J interceptors when security is not defined in the WSDL or you >> need more customized control of the security header construction. >> > Il semblerait donc qu'on ne soit pas oblig=E9 d'utiliser WSS4J... > > > Bref, vous l'aurez compris : > - je suis un peu (beaucoup) paum=E9 dans tout =E7a, glurps > - je recherche un retour d'exp=E9rience > > > Je connais bien kerberos en dehors du contexte des WS. > Je veux dire par l=E0 que je sais impl=E9menter/administrer une Authentif= ication > Kerberos sur, par ex., une webapp tournant sous Apache > (avec un KDC sous Linux ou sous Windows), d=E9clarer le SPN, r=E9cup=E9re= r le > KEYTAB, etc. etc....ok. > > En revanche, je ne connais pas du tout WS-Security, WS-Policy, ... > C'est pr=E9cis=E9ment l=E0 que =E7a p=EAche ! > > > Merci d'avance =E0 tous ceux qui prendront le temps de me r=E9pondre. > :-) > >