Fediz ArchitecturePage edited by Oliver WulffChanges (5)
Full ContentFediz ArchitectureThis page describes the security architecture for WS-Federation and the message flow between the components in detail. WS-Federation DesignThe following picture illustrates the main components of a Web Single Sign On (SSO) solution based on WS-Federation (Passive Requestor Profile). The Web Application is part of the Relying Party (RP) side whereas the Identity Provider (IDP/STS) is the central security server that is responsible to authenticate clients and issue security tokens based on the requirements by the RP. Fediz provides the following components to implement Web SSO based on WS-Federation (red background):
WS-Federation Message flowThis section describes and illustrates the message flow between the browser and the application and IDP in more detail. The browser accesses the web application (1). It is then redirected to IDP/STS if no token or cookie is supplied in the request (2). This redirection process may require prompting the user (3) to authenticate himself (4). The IDP/STS issues a signed SAML 2.0 security token (WS-Federation doesn’t mandate SAML). The IDP "redirects" (5/6) the user to the application server including the SAML token. The application server verifies the signature of the SAML token. There is a trust relationship between the application server and the IDP/STS which doesn't require network connectivity between the application server and the IDP/STS (Cloud!). After successful validation, a session is created and the corresponding cookie is set on the browser (7). Finally, the request is dispatched to the application. As an extension to the description above, step 2 might contain specific claims requested by the application such as role, username, full name, email address, sales organization, etc. which are gathered by the STS. Requirements of the Web Application are described in the WS-Federation Metadata document. ComponentsWS-Trust Security Token Service (STS)The WS-Trust OASIS standard specifies a runtime component called Security Token Service. A service consumer requests a security token from the STS which is sent to the service provider. Either the service provider can validate the security token on its own or sends a request to the STS for validation. This pattern is based on an indirect trust relationship between the service provider and the STS instead of a direct trust between the service provider and service consumer. As long as the service consumer is in the possession of a security token issued by a trusted STS, the service provider accepts this security token. A key benefit of the STS is the reduced complexity for applications. A web service consumer doesn't have to know how to create the various types of security tokens its service providers require. Instead, it sends a request to the STS containing the requirements of the client and the service provider and attaches the returned security token to the outgoing SOAP message to the service provider. Identity provider (IDP)The security model of the STS builds on the foundation established by WS-Security and WS-Trust. The primary issue for Web browsers is that there is no easy way to directly send web service (SOAP) requests. Consequently, the processing must be performed within the confines of the base HTTP 1.1 functionality (GET, POST, redirects, and cookies) and conform as closely as possible to the WS-Trust protocols for token acquisition. Claims based Access ControlA claim is a statement made about a client. The concept of claim is described in the WS-Trust specification. Claims information of an authenticated subject can ba carried in a Attribute Statement of a SAML token even WS-Trust doesn't mandate the usage of SAML token to carry this information. Resource and Requestor IDPtbd
Change Notification Preferences
View Online
|
View Changes
|
Add Comment
|
- [CONF] Apache CXF > Fediz Architecture confluence
- [CONF] Apache CXF > Fediz Architecture confluence
- [CONF] Apache CXF > Fediz Architecture confluence
- [CONF] Apache CXF > Fediz Architecture confluence
- [CONF] Apache CXF > Fediz Architecture confluence
