In this Blog post I'll show you how to use Username/Password authentication with a Talend ESB WebService (based on CXF) running inside a Karaf runtime. First with a UsernameToken inside the SOAP Header and second by using BasicAuthentication.
This blog focuses on technical solutions around security and application integration tasks
Showing posts with label CXF. Show all posts
Showing posts with label CXF. Show all posts
13 March 2017
14 December 2015
Fediz with OpenID Connect Support and WS-Federation Bridge (2/2)
Setup a Demonstrator
In this article I'll explain how to setup a demonstrator for the use case described in my previous post.Setup Fediz IDP & OIDC
First you need to setup the Fediz IDP as usual. To get the OIDC Service working you also need to do the following:- Install Fediz Plugin for the Fediz IDP Server (usually you would do this for the client application only)
For thefediz_config.xmlyou can use the sample provided with the OIDC Service. - Download or build the OIDC service and then deploy the
fediz-oidc.warfile to your webapps folder (same place where you deployed STS & IDP)
Labels:
CXF,
Fediz,
JWT,
OpenID Connect,
REST,
SAML,
Security,
SSO,
STS,
WS-Federation
09 December 2015
Fediz with OpenID Connect Support and WS-Federation Bridge (1/2)
I'm currently engaged for a big company to provide a solution that allows this company to offer various (REST) services to their partners while these services are hosted and maintained by the company but users can login to these services with accounts managed within their own partner network.
This solution should work for Web-Portals, Mobile Apps & Desktop Applications.
First I was skeptical if it will be possible to find one solution fitting all theses different use cases. But I think I actually did find a very interesting solution. In this post I'll explain the overall architecture of this solution. In my next posts I'll tell you how to get a Liferay Web-Portal integrated as well as a mobile App based on Android.
WS-Federation normally uses SAML Tokens for user authentication. This is fine for container based security solutions, when the user wants to login to a web-portal. But modern web applications (e.g. AJAX based) tend to be executed primarily in the Browser, invoking REST backend services directly from within the Browser.
Handling XML based tokens (incl. XML signature validation) is just a too heavy burden for this type of applications. Also handling lifetime issues with SAML Token could require a Token exchange with an STS. But an STS only provides a SOAP interface according to WS-Trust. It is not feasible for a AJAX Web Application to handle SOAP communication including XML security. Browser based applications should be light-weight and thus they prefer talking to REST services.
This solution should work for Web-Portals, Mobile Apps & Desktop Applications.
First I was skeptical if it will be possible to find one solution fitting all theses different use cases. But I think I actually did find a very interesting solution. In this post I'll explain the overall architecture of this solution. In my next posts I'll tell you how to get a Liferay Web-Portal integrated as well as a mobile App based on Android.
WS-Federation normally uses SAML Tokens for user authentication. This is fine for container based security solutions, when the user wants to login to a web-portal. But modern web applications (e.g. AJAX based) tend to be executed primarily in the Browser, invoking REST backend services directly from within the Browser.
Handling XML based tokens (incl. XML signature validation) is just a too heavy burden for this type of applications. Also handling lifetime issues with SAML Token could require a Token exchange with an STS. But an STS only provides a SOAP interface according to WS-Trust. It is not feasible for a AJAX Web Application to handle SOAP communication including XML security. Browser based applications should be light-weight and thus they prefer talking to REST services.
Labels:
CXF,
Fediz,
JWT,
OpenID Connect,
REST,
SAML,
Security,
SSO,
STS,
WS-Federation
01 October 2014
STS Claim Mappings using JEXL Scripts
Before CXF version 2.7.13 it was quite difficult to use claim mappings in the STS, because CXF did not provide any generic claim mapping solution but instead required custom Java code for each claim mapping. Beginning of version 2.7.13 (not yet released) CXF comes with a JexlClaimsMapper which allows to define claim mappings at configuration time with Java Expression Language (JEXL).
Also a new feature in CXF which goes hand in hand with the JexlCaimsMapper is a special ClaimUtils class providing methods for common claim handling tasks.
In this blog I'll write about:
Also a new feature in CXF which goes hand in hand with the JexlCaimsMapper is a special ClaimUtils class providing methods for common claim handling tasks.
In this blog I'll write about:
- How to setup claim mappings in the STS
- Basic JEXL Claim Handling
- Several JEXL Claim Mapping Samples
29 September 2014
SSO with Fediz IDP and Kerberos
- Prepare your Active Directory
- Installing the Fediz Demo Application
- Installing Fediz IDP and a Kerberos enabled STS
- Enable Kerberos for your Browser
22 September 2014
REST Security - SAML Authentication & XACML Authorization
REST is very successful because it is simple and efficient. SOAP on the other hand usually comes with a high overhead but is also well standardized. In respect to security SOAP provides many well defined ways to exchange security token, whereas REST leaves everything up to the service owner/caller.
This becomes a problem regarding interoperability, if every vendor provides its own custom solution. The same is true for CXF. CXF provides three different ways to exchange a SAML token within a REST call, none of them are standardized. The only standard I could find related to REST Services was the SAML ECP Profile, which is not yet implemented for CXF.
In this post, I'm going to write how to setup a demo application to enable SAML user authentication and XACML user authorization. Both can be used best with Talend STS & PDP.
This becomes a problem regarding interoperability, if every vendor provides its own custom solution. The same is true for CXF. CXF provides three different ways to exchange a SAML token within a REST call, none of them are standardized. The only standard I could find related to REST Services was the SAML ECP Profile, which is not yet implemented for CXF.
In this post, I'm going to write how to setup a demo application to enable SAML user authentication and XACML user authorization. Both can be used best with Talend STS & PDP.
Subscribe to:
Posts (Atom)
