Fujitsu mPollux
SAML Security Option
White Paper
Fujitsu mPollux Version 2.1
February 2009
This document is provided to your organization on the understanding that its content is and remains the intellectual property of Fujitsu Finland Oy. The document is provided on the understanding that its use is confined to the people in your organization who are responsible for evaluating its content and that there is an obligation on your organization and such people within your organization to keep its content in confidence. This document may not, without the prior written authority of Fujitsu Finland Oy, be copied or shown in whole or in part to any third party. When no longer required for the agreed purpose, the document is to be returned to Fujitsu Finland Oy.
Fujitsu Finland Oy endeavors to ensure that the information in this document is correct and fairly stated but does not accept liability for any error or omission.
The development of Fujitsu Finland Oy products and services is continuous and published information may not be up to date. It is important to check the current position with Fujitsu Finland Oy. This document is not part of a contract or license save insofar as may be expressly agreed.
Fujitsu and the Fujitsu logo are registered trademarks of Fujitsu Limited. PalmSecure and the PalmSecure logo are registered trademarks of Fujitsu Limited. The Possibilities are Infinite is a trademark of Fujitsu Limited. mPollux, mPollux security options are trademarks or registered trademarks of Fujitsu Finland Oy and Fujitsu Limited. Other product and company names mentioned herein may be trademarks or trade names of their respective owners.
Page 3 (10)
Copyright Fujitsu Finland Oy
Table of Contents
1 INTRODUCTION ... 4
2 MPOLLUX SAML FUNCTIONALITY ... 5
2.1 Web Browser SSO ... 6
2.2 Single Logout ... 6
2.3 Attribute Query ... 6
2.4 Identity Provider ... 6
2.5 Service Provider ... 6
3 MPOLLUX SAML ARCHITECTURE ... 7
3.1 mPollux™ Server ... 8
3.2 mPollux™ Login Application ... 8
4 EXAMPLES OF MPOLLUX SAML USE CASES ... 9
4.1 Case 1: mPollux as SAML Identity Provider ... 9
1 INTRODUCTION
In the context of e-business, the need for security functions is of ever growing importance. Several dif-ferent schemes exist for the authentication of the involved parties and communicated messages, or for the insurance of transaction confidentiality and non-repudiation. The problem currently is that as a rule these schemes build on special secure devices and complex infrastructure such as PKI. While the secu-rity achieved by such means is high, the threshold for applying such an infrastructure for smaller scale business cases can be high as well.
mPollux™ Security Server provides a range of security solutions from conventional user id –
pass-word authentication, telephone call authentication to full-scale PKI based security. mPollux™ SAML provides web-based single sign-on functionality for the mPollux authentication service.
Page 5 (10)
Copyright Fujitsu Finland Oy
2 MPOLLUX SAML FUNCTIONALITY
The mPollux™ SAML implements SAML 2.0 specification’s Web Browser SSO Profile and Single Logout Profile. These profiles are used to provide web-bases single sign-on functionality between se-curity domains.
The Security Assertion Markup Language (SAML) standard defines an XML-based framework for de-scribing and exchanging security information between an identity provider and a service provider. This security information is expressed in the form of portable SAML assertions that applications working across security domain boundaries can trust. The SAML standard defines precise syntax and rules for requesting, creating, communicating, and using these SAML assertions.
More information about SAML standard:
http://www.oasis-open.org/specs/
http://www.projectliberty.org/liberty/specifications__1
There are both identity provider and service provider roles. An identity provider is responsible for management of identities, authenticating user and producing assertions. A service provider redirects user to authenticate when necessary and consumes assertions produced by identity provider.
Figure 1 mPollux™ SAML provider roles
About the SAML profiles, the supported features are,
Web Browser SSO, profile to provide web-bases cross-domain single sign-on func-tionality.
Single Logout, profile to terminate own session with all session participants. Attribute Query, profile is for requesting attributes for specified subject.
Network
Network
Service
Provider
Web
Application
Browser
Service
Identity
Database
2.1 W
EBB
ROWSERSSO
Web Browser SSO profile provides web-bases cross-domain single sign-on functionality. A service provider issues an authentication request to an identity provider. The identity provider authenticates the user (or has already authenticated), and then provides an authentication assertion to the service provider.
This above is performed using profile of the SAML Authentication Request protocol.
2.2 S
INGLEL
OGOUTSingle Logout profile is used to terminate user session with all session participants. After Web Brows-er SSO profile is used, usBrows-er’s sessions exist in the identity providBrows-er and sBrows-ervice providBrows-ers, which are used during that session. When user or session authority wants to terminate user’s global session, Sin-gle Logout request is sent to all session participants. Asynchronous front-channel binding is required when user session exists in a user agent in the form of cookie.
2.3 A
TTRIBUTEQ
UERYAttribute Query messages from Assertion Query/Request profile is used for requesting attributes for specified subject. This profile uses synchronous SAML SOAP binding and is performed using back-channel after user is authenticated.
2.4 I
DENTITYP
ROVIDERIdentity provider is SAML participant role that is defined to support Multi-Domain Single Sign-On. An identity provider is responsible for management of identities, authenticating user and producing as-sertions.
2.5 S
ERVICEP
ROVIDERService provider is SAML participant role that is defined to support Multi-Domain Single Sign-On. A service provider redirects user to authenticate when necessary and consumes assertions produced by identity provider.
Page 7 (10)
Copyright Fujitsu Finland Oy
3 MPOLLUX SAML ARCHITECTURE
For an overview of the overall architecture of the mPollux™ Security Server, see the mPollux™ Secu-rity Server White Paper. Figure 1 shows the architecture of the mPollux™ SecuSecu-rity Server with SAML.
Figure 2 The Architecture of mPollux™ Security Server with SAML
As figure 1 shows, the main components of mPollux™ Security Server with SAML are
mPollux™ API and mPollux™ Base, which are the common components
for all mPollux™ Security Options, and
mPollux™ Login Application, which provides user interface, External SAML Provider, a service provider or an identity provider Service requests from applications using mPollux™ Security Server are transmitted from mPollux™ API in an XML message over a secure (if required) TCP/IP socket connection to mPollux™ Base. mPollux™ Base determines which Security Option instance has been called (there may be several in-stances of different or the same Security Options running in a mPollux™ installation) and forwards the service call to the right receiver. The called Security Option – in this case DigiSign – executes the ser-vice call and returns result via mPollux™ Base to the application. This is in brief the way mPollux™ Security Server operates.
Java Application Server
Network Network Database mPolluxBase DigiSign SecurityOption mPollux Login Application mPolluxAPI
mPolluxSecurityServer External SAML
Provider
Because of the architecture, mPollux™ Security Server functionality can be run either on the Applica-tion or Web server platform or on a separate server.
3.1
MP
OLLUX™
S
ERVERmPollux Server uses mPollux Bases for the basic function like logging, DB con-nection etc… please see “mPollux Service Description”.
mPollux Server itself manages the SignXML, SignPKCS1, CheckXMLSignature and CheckPKCS1Signature based on Client request.
mPollux Server with utilizing mPollux Bases, provides the features as follows, Data connections, mPollux Base provides connections for fetching data
from common SQL DB and LDAP directory.
SignXML/SignPKCS1/CheckXMLSignature/CheckPKCS1Signature, mPollux Server proceed signing/checking utilizing mPollux Bases func-tions.
Authentication methods:
mPollux CallSign™, mPollux PalmSign™.
mPollux DigiSign™, mPollux MobiSign™, mPollux Classic™ and
mPollux SMS™.
Transaction Log, mPollux Server provides the simple transaction log of client/server communication.
3.2
MP
OLLUX™
L
OGINA
PPLICATIONmPollux™ Login Application provides identity provider and service provider
functionality with mPollux Server integration. Its functionality and user interface is configurable and it can be used in multi customer environments. The application runs on Java Application Server as web application.
When mPollux™ Login is used as service provider, Login component acts as an access controller to the actual application server where user is about to enter. When mPollux™ Login is used as identity provider, Login component authenti-cates users using authentication methods that mPollux™ Server provides.
Page 9 (10)
Copyright Fujitsu Finland Oy
4 EXAMPLES OF MPOLLUX SAML USE CASES
4.1 C
ASE1:
MP
OLLUX ASSAML
I
DENTITYP
ROVIDERWhen you need to offer authentication services for web applications, mPollux as SAML identity pro-vider provides solution.
Figure 3 mPollux™ as SAML Identity Provider
The Service Provider provides the necessary mechanism to request Identi-ty Provider for authenticate user.
The mPollux™ Login Application as Identity Provider The mPollux™ Server
The sample access sequence proceeds as follows
1. When user browses to page that requires authentication, the service pro-vider forward user to Login application to authenticate.
2. mPollux Login Application authenticates user and calls mPollux Server. 3. Then mPollux Server verify the user’s credentials and return the result to
mPollux Login Application.
4. According to the result, mPollux Login Application sends the necessary in-formation to the service provider.
Network
Network
Service
Provider
mPollux
Server
Database
mPollux
Login
Application
Web
Browser
as IdP
4.2 C
ASE2:
MP
OLLUX ASSAML
S
ERVICEP
ROVIDERWhen you want to secure your web applications with access control, authenticate users using external SAML identity provider and offer Single Sign-On service to web applications, mPollux as Service Provider provides solution.
Figure 4 mPollux™ as SAML Service Provider
The sample access sequence proceeds as follows
1. User open a web application with a browser
2. The web application redirects to mPollux™ Login Application, when user does not yet login.
3. mPollux™ Login Application forwards user to Identity Provider to authen-ticate
4. Identity Provider authenticates user
5. According to the result, Identity Provider sends the necessary information to the service provider (mPollux Login Application).
6. According to the result, mPollux Login Application sends the necessary in-formation to the web application