Is that a limitation of wss4j ?
I see spring-ws can do it (or i suppose, see
https://src.springframework.org/svn/spring-ws/tags/spring-ws-1.0.0/security/src/main/java/org/springframework/ws/soap/security/xwss/callback/jaas/JaasCertificateValidationCallbackHandler.java
).
Maybe they reimplemented the whole thing ...

Anyway, if that's a limitation of wss4j, I would suggest re-doing the
certificate validation in jaas (and implement correct certificate login
modules) until this can be made pluggable in wss4j.


On Thu, Mar 7, 2013 at 10:48 AM, Christian Schneider <
ch...@die-schneider.net> wrote:

> In certificate based authentication this will be connecting the
> certificate to a certain user identity.
> This is also an open point in our project. We currently map the subject DN
> of the user cert 1:1 to the DN of the user in LDAP but in general
> I think we will need to provide a mapping here.
>
> So I think the process is like that:
> 1. User sends certificate + proof of possession to STS
> 2. WS-Security validates the certificate and the proof of possesion. The
> result is an authenticated Prinicipal that contains the subjectDN of the
> cert
> 3. We then have to map the subjectDN to a ldap search to find the user
> 4. Then we retrieve the roles of the user
>
> Honestly I would prefer  to do steps 2-4 in JAAS but the way cert based
> auth in STS currently works step 2 is done by WS-Security before we have
> the chance to
> tap into it using jaas.
>
> Christian
>
>
> On 07.03.2013 10:33, Guillaume Nodet wrote:
>
>> I think there are two different things, verifying the crendentials
>> validity
>> and authenticating the user.
>> The first one can be done by ws-security but the second one should be done
>> by jaas.
>> Though it can be just verifying the mapping between the given credential
>> and the user.
>>
>> For public key authentication used by SSH, that's what we do.  The key is
>> verified by SSH, and once the public key is verified, we simply
>> authenticate the user by verifying that the public key has been configured
>> for the user.
>>
>> I wonder if we could do the same for WS-security.  The ws-sec layer would
>> verify the crendentials (checking trust), and delegate to jaas the
>> association of the crendential with the user (and retrieve associated
>> roles
>> at the same time).
>> So I think, what we need is a new LDAPLoginModule (and maybe another one
>> for non ldap env) that could verifiy that the given crendential is
>> associated with the user.
>>
>>
>>
> --
> Christian Schneider
> http://www.liquid-reality.de
>
> Open Source Architect
> http://www.talend.com
>
>


-- 
------------------------
Guillaume Nodet
------------------------
Red Hat, Open Source Integration

Email: gno...@redhat.com
Web: http://fusesource.com
Blog: http://gnodet.blogspot.com/

Reply via email to