On 06/02/14 09:42, Colm O hEigeartaigh wrote:
As far as I know, all of this functionality is already available. Take a
look at the TransformationTest here:

http://svn.apache.org/viewvc/cxf/trunk/services/sts/systests/advanced/src/test/java/org/apache/cxf/systest/sts/transformation/TransformationTest.java?view=markup

This uses the STSTokenValidator to transform a UsernameToken into a SAML
Assertion. Note the configuration of the service, you can just manually
configure an STSClient Object to send whatever Claims etc. you want:

http://svn.apache.org/viewvc/cxf/trunk/services/sts/systests/advanced/src/test/resources/org/apache/cxf/systest/sts/transformation/cxf-service.xml?view=markup

As far as I understand this is not what Oli is asking about. The context is we have an RS endpoint, and the client using Basic Auth. Next we have an RS interceptor which transform this Basic Auth and uses STSTokenValidator to validate it with STS and get a SAML assertion back representing the authenticated user.

This is documented here:
https://cwiki.apache.org/confluence/display/CXF20DOC/Secure+JAX-RS+Services#SecureJAX-RSServices-ValidatingBasicAuthcredentialswithSTS

and the configuration of STSClient and STSTokenValidtor was probably copied from the configuration example you linked to above.

My understanding is, the SAML assertion returned from STSTokenValidator has the limited information, example, it has no claims attached to it, etc.

Oli, is it right ?

So I think, fundamentally, this kind of the extra metadata such as the extra claims, etc, can only come from STS, not from the STSTokenValidator itself which is a mere link between WS/RS endpoints and STS.

Oli, may be indeed we should optionally get STS issue the assertion given Basic Auth ? If not then I'd say the validation response should have the extra bits

Thanks, Sergey



Colm.


On Wed, Feb 5, 2014 at 9:13 PM, Sergey Beryozkin <[email protected]>wrote:

Hi Oli

On 05/02/14 19:42, Oliver Wulff wrote:

Hi there

The STSTokenValidator is used to validate incoming credentials (ex.
username/password) against the STS. The STSTokenValidator can be used for
authentication for web services as well a REST services.

REST security is already very enhanced to support claims based access
control which requires that the service provider knows the user claims like
from a SAML token. This could also be achieved for incoming
username/passwords by issuing a SAML token with a configurable list of
claims.

The STSTokenValidator uses the STS validate binding which doesn't support
to validate a token and provide additional claims in the returned SAML
token.

There are two options:

1) Make the binding configurable in the STSTokenValidator
(validate/issue) and configure the list of claims, appliesto element,
lifetime etc. for the issue use case

2) Enhance the validate binding use case on the STS and in the
STSTokenValidator to configure the list of claims, appliesto element,
lifetime etc.

WDYT?

  It appears to me that STS is where the extra metadata like claims can be
attached so I guess I'm more for the 2nd case, I looked at the code and
apparently STSTokenValidator supports the case of STS transforming a token.
Look forward to Colm commenting on it

Thanks, Sergey


  Thanks
Oli



------

Oliver Wulff

Blog: http://owulff.blogspot.com<http://owulff.blogspot.com/>
Solution Architect
http://coders.talend.com

<http://coders.talend.com>Talend Application Integration Division
http://www.talend.com






--
Sergey Beryozkin

Talend Community Coders
http://coders.talend.com/

Blog: http://sberyozkin.blogspot.com

Reply via email to