Spring Security SAML Extension
|
|
|
- Blaze Summers
- 10 years ago
- Views:
Transcription
1 Reference Documentation RC2 Vladimír Schäfer Copyright Vladimír Schäfer
2 Table of Contents I. Getting Started Introduction What this manual covers When to use Spring Security SAML Extension Features and supported profiles Requirements Source code Builds License Support Glossary Quick start guide Pre-requisites Installation steps... 6 Compilation of the module... 6 Configuration of IDP metadata... 6 Generation of SP metadata... 7 Deployment... 7 Uploading of SP metadata to the IDP Testing single sign-on and single logout... 8 II. Configuring SSO with SAML Configuration and integration Overview Integration to applications Maven dependency Bean definitions Spring Security integration Metadata configuration Service provider metadata Automatic metadata generation Pre-configured metadata Downloading metadata Identity provider metadata File-based metadata provider HTTP-based metadata provider Signature verification Extended metadata Entity alias Key management Sample keystore Generating and importing private keys Importing public keys Loading SSL/TLS certificates Security profiles Metadata interoperability profile (MetaIOP) PKIX profile Custom profile RC2 Spring Security SAML Extension ii
3 4.7. Single sign-on process IDP selection Logout process Authentication object Authentication log Context provider Validity intervals Load balancing Administration user interface IDP integration guide Active Directory Federation Services 2.0 (ADFS) Initialize IDP metadata Initialize SP metadata Test SSO Troubleshooting Logging Common problems A. Configuration reference A.1. Extended metadata RC2 Spring Security SAML Extension iii
4 Part I. Getting Started This chapter provides essential information needed to enable your application to act as a service provider and interact with identity providers using SAML 2.0 protocol. Later in this guide you can find information about detailed configuration options and additional use-cases enabled by this component.
5 1. Introduction 1.1 What this manual covers This manual describes Spring Security SAML Extension component, it's uses, installation, configuration, design and tested environments. 1.2 When to use Spring Security SAML Extension Component enables both new and existing applications to act as a Service Provider in federations based on SAML 2.0 protocol and enable Web Single Sign-On. Spring Security Extension allows seamless combination of SAML 2.0 and other authentication and federation mechanisms in a single application. All products supporting SAML 2.0 in Identity Provider mode (e.g. ADFS 2.0, Shibboleth, OpenAM/ OpenSSO, RM5 IdM or Ping Federate) can be used to connect with Spring Security SAML Extension. Extension be used in applications which are not primarily secured using Spring Security. It can be adapted for both single and multi-tenant environments. Spring Security SAML Extension can be either embedded inside application and work along other authentication or single sign-on mechanisms or it can be deployed separately and convey authentication information to applications using a custom mechanism. Spring Security Extension is probably the most complete open-source SAML 2.0 SP implementation with the widest feature-set and configuration possibilities. Other Java open-source alternatives are e.g. native SAML service providers integrating with IIS or Apache from Shibboleth (SAML processing is done on the web server and not on the application level) or OpenAM Fedlet. 1.3 Features and supported profiles Current implementation should be conformant to SAML SP Lite and SAML egovernment profile. The following profiles, bindings and features are supported as part of the product: Web single sign-on profile Web single sign-on holder-of-key profile IDP and SP initialized single sign-on Single logout profile Enhanced client/proxy profile Identity provider discovery profile and IDP selection Metadata interoperability and PKIX trust management Automatic service provider metadata generation Metadata loading from files, URLs, file-backed URLs Processing and automatic reloading of metadata with many identity providers Support for authentication contexts Logging for authentication events Customization of both SP and IDP metadata Processing of SAML attributes and user data using UserDetails interface Support for HTTP-POST, HTTP-Redirect, SOAP, PAOS and Artifact bindings Easy integration with applications using Spring Security Sample application with an user interface for quick configuration Internal processing of SAML messages, marshalling and unmarshalling is handled by OpenSAML RC2 Spring Security SAML Extension 2
6 You can use the following supported standards as a reference: SAML 2.0 basic profiles SAML 2.0 additional profiles egovernment profile profile-2.0.pdf 1.4 Requirements Spring Security SAML Extension requires as minimum Java 1.6. TODO Apache Tomcat, Jetty, Oracle Weblogic, Source code Source code for the project is maintained on Github. 1.6 Builds Snapshot builds of the project are available in the SpringSource repository 1.7 License Source code of the module is licensed under the Apache License, Version 2.0. You may obtain copy of the license at Support Issue tracking for the module can be found at Spring Security Extensions Jira. Feel free to submit bugs, patches and feature requests. For community support please use Spring Security forum. For additional support you can reach me at vladimir.schafer at gmail.com RC2 Spring Security SAML Extension 3
7 2. Glossary Table 2.1. Definitions of terms used within this manual. Term Assertion Artifact Binding Discovery Metadata Profile Protocol Identity provider (IDP) Service provider (SP) Single Sign-On (SSO) Definition A part of SAML message (an XML document) which provides facts about subject of the assertion (typically about the authenticated user). Assertions can contain information about authentication, associated attributes or authorization decisions. Identifier which can be used to retrieve a complete SAML message from identity or service provider using a back-channel binding. Mechanism used to deliver SAML message. Bindings are divided to front-channel bindings which use web-browser of the user for message delivery (e.g. HTTP-POST or HTTP-Redirect) and back-channel bindings where identity provider and service provider communicate directly (e.g. using SOAP calls in Artifact binding). Mechanism used to determine which identity provider should be used to authenticate user currently interacting with the service provider. Document describing one or multiple identity and service providers. Metadata typically includes entity identifier, public keys, endopoint URLs, supported bindings and profiles, and other capabilities or requirements. Exchange of metadata between identity and service providers is typically the first step for establishment of federation. Standardized combination of protocols, assertions, bindings and processing instructions used to achieve a particular use-case such as single sign-on, single logout, discovery, artifact resolution. Definition of format (schema) for SAML messages used to achieve particular functionality such as requesting authentication from IDP, performing single logout or requesting attributes from IDP. Entity which knows how to authenticate users and provides information about their identity to service providers/relaying parties using federation protocols. Your application which communicates with the identity provider in order to obtain information about the user it interacts with. User information such as authentication state and user attributes is provided in form of security assertions. Process enabling access to multiple web sites without need to repeatedly present credentials necessary for authentication. Various federation protocols such as SAML, WS-Federation, OpenID or OAuth can be used to achieve SSO use-cases. Information such as means of authentication, user attributes, authorization decisions or security tokens are typically provided to the service provider as part of single sign-on RC2 Spring Security SAML Extension 4
8 Term Single Logout (SLO) Definition Process terminating authenticated sessions at all resources which were accessed using single sign-on. Techniques such as redirecting user to each of the SSO participants or sending a logout SOAP messages are typically used RC2 Spring Security SAML Extension 5
9 3. Quick start guide This chapter will guide you through steps required to easily integrate Spring Security SAML Extension with SSO Circle IDP service using SAML 2.0 protocol. When done you will have a working example of Web SSO against a single Identity Provider. The steps will guide you through deployment of the module, configuration of IDP metadata (XML document describing how to connect to the IDP server using SAML 2.0 protocol) and SP metadata (XML document describing your own service) and testing of web single sign-on and single logout. 3.1 Pre-requisites Please make sure the following items are available before starting the installation: Supported application server or container Spring Security SAML Extension Java 1.6+ SDK SAML Extension relies on XML processing capabilities of JAXP. Some older versions of JRE might require updating of the embedded JAXP libraries. In case you encounter XML processing exceptions please create folder jdk/jre/lib/endorsed in your JDK installation and include files in lib/endorsed from the latest OpenSAML archive available at The location of the endorsed folder may differ based on your application server or container. Due to US export limitations Java JDK comes with a limited set of cryptography capabilities. Usage of the SAML Extension might require installation of the Unlimited Strength Jurisdiction Policy Files which removes these limitations. 3.2 Installation steps Compilation of the module When building from sources compile whole project using: gradlew build Command will create file spring-security-saml2-sample.war in directory saml2-sample/build/libs/. When using the release zip compile the sample application available in the sample directory using: mvn package We will be customizing content of the application in the following steps. Configuration of IDP metadata Modify file WEB-INF/classes/security/securityContext.xml inside the war archive and replace metadata bean as follows: RC2 Spring Security SAML Extension 6
10 <bean id="metadata" class="org.springframework.security.saml.metadata.cachingmetadatamanager"> <list> <bean class="org.opensaml.saml2.metadata.provider.httpmetadataprovider"> <value type="java.lang.string"> <value type="int">5000</value> <property name="parserpool" ref="parserpool"/> </list> The settings tell system to download IDP metadata from the given URL with timeout of 5 seconds. In production system metadata should be either stored as a local file or be downloaded from a source using SSL/TLS with configured trust or which provides digitally signed metadata. Generation of SP metadata Modify file WEB-INF/classes/security/securityContext.xml inside the war archive and replace metadatageneratorfilter bean as follows and make sure to replace the entityid value with a string which is unique within the SSO Circle service (e.g. urn:test:yourname:yourcity): <bean id="metadatageneratorfilter" class="org.springframework.security.saml.metadata.metadatageneratorfilter"> <bean class="org.springframework.security.saml.metadata.metadatagenerator"> <property name="entityid" value="replacewithuniqueidentifier"/> <property name="signmetadata" value="false"/> Deployment Deploy the updated war archive to your application server or container. After deployment the SP module will be available at e.g. Uploading of SP metadata to the IDP Download current SP metadata: Open web browser at the URL of the deployed application. Select Metadata information. Select first item from category Service providers, e.g. sample/saml/metadata/alias/defaultalias Copy content of the Metadata textarea to your clipboard. Upload SP metadata to the IDP: Register yourself at and login to the service. Select Metadata manager and click Add new Service Provider. Enter entityid configured in the section called Generation of SP metadata to the FQDN field. Paste content of clipboard to the metadata information textarea RC2 Spring Security SAML Extension 7
11 Store metadata by pressing the Submit button. Logout from the SSOCircle service. 3.3 Testing single sign-on and single logout Open the front page of your SP application, select IDP and press login. System will generate new authentication request using SAML 2.0 protocol, digitally sign it and send it to the IDP. After authentication at IDP with your account you will be redirected back to your application and automatically signed-in. Pressing local logout will destroy local session and logout the user. Session is still active at the IDP and an attempt to reauthenticate will proceed without need to enter credentials. Pressing global logout will destroy both local session and session at IDP RC2 Spring Security SAML Extension 8
12 Part II. Configuring SSO with SAML This chapter provides information about configuration and customization options of the SAML extension. It will guide you throught typical scenarios including problems you migth encounter during integration with identity providers.
13 4. Configuration and integration This chapter will discuss aspects of configuring and using the library in target applications. 4.1 Overview Spring Security SAML 2.0 library comprises three modules: saml2-core contains implementation of the WebSSO profiles of the SAML 2.0 protocol and is required for integration to target systems. saml2-sample contains example of Spring configuration used for integration to target systems. It also contains user interface for generation and management of metadata. saml2-doc contains this documentation. Configuration of library is done using Spring context XML. An example of configuration can be found undersaml2-sample/src/main/resources/security/securitycontext.xml. Setting up of the library typically involves these steps: integration to application using Spring XML configuration configuration of signature, encryption and trust keys configuration of security profiles import, generation and customization of SP and IDP metadata configuration of IDP selection configuration of single sign-on process configuration of logout process configuration of authentication object Additional steps such as configuration of authentication logging, customization of SAML 2.0 bindings, configuration of artifact resolution or configuration of time skews might be needed. 4.2 Integration to applications SAML module can be directly embedded into new of existing Spring applications. In this case application itself includes the SAML library in WEB-INF/lib directory of the war archive and processes all SAML interactions. The other option of using the SAML library is deploying it as a stand-alone module which transfers information about the authenticated user to the target application using a custom mechanism. This chapter only discusses the first option. Maven dependency In order to include the library and all it's dependencies add the following dependency to your pom.xml file: <dependency> <groupid>org.springframework.security.extensions</groupid> <artifactid>spring-security-saml2-core</artifactid> <version>${version}</version> </dependency> The current version of SAML Extension has been tested to work with Spring 3.1.2, Spring Security and OpenSAML Later versions of these libraries are likely to be compatible without modifications RC2 Spring Security SAML Extension 10
14 Bean definitions Configuration of the SAML library requires beans definitions included in the saml2-sample/src/main/ resources/security/securitycontext.xml configuration file. Include copy of the file in your own Spring application, either directly or with an inclusion. Configuration steps in the following chapters will be customizing beans included in the default context. Beans of the SAML library are using auto-wiring and annotation-based configuration by default. Make sure that your Spring configuration contains e.g. the following settings in order to enable support for these features: <context:annotation-config/> <context:component-scan base-package="org.springframework.security.saml"/> Spring Security integration Filters of the SAML module need to be enabled as part of the Spring Security settings. In case SAML authentication should be the default authentication mechanism of the application set bean samlentrypoint as the default entry point. Make sure that filter samlfilter is included as one of the custom filters. In case SP metadata should be generated automatically during first request to the application include also filter metadatageneratorfilter. The configuration directive may for example look as follows: <security:http entry-point-ref="samlentrypoint"> <security:custom-filter before="first" ref="metadatageneratorfilter"/> <security:custom-filter after="basic_auth_filter" ref="samlfilter"/> </security:http> 4.3 Metadata configuration SAML metadata is an XML document which contains information necessary for interaction with SAMLenabled identity or service providers. Document contains e.g. URLs of endpoints, information about supported bindings, identifiers and public keys. Typically one metadata document will be generated for your own service provider and sent to all identity providers you want to enable single sign-on with. Similarly, each identity provider will make it's own metadata available for you to import into your service provider application. Each metadata document can contain definition for one or many identity or service providers and optionally can be digitally signed. Metadata can be customized either by direct modifications to the XML document, or using extended metadata. Extended metadata is added directly to the Spring configuration file and can contain additional options which are unavailable in the basic metadata document. Service provider metadata Service provider metadata contains keys, services and URLs defining SAML endpoints of your application. Metadata can be either generated automatically upon first request to the service, or it can be pre-created (see Chapter 5, Administration user interface). Once created metadata needs to be provided to the identity providers with whom we want to establish trust. Automatic metadata generation Automatic metadata generation is enabled by including the following filter in the Spring Security configuration: <security:custom-filter before="first" ref="metadatageneratorfilter"/> RC2 Spring Security SAML Extension 11
15 Filter is automatically invoked as part of the first request to a URL processed by Spring Security. In case there is no service provider metadata already specified (meaning property hostedspname of the metadata bean is empty) filter will generate a new one. By default metadata will be generated with the following values which can be customized by setting properties of the metadatagenerator bean: Table 4.1. Metadata generator settings Property Description Default value entitybaseurl entityalias entityid requestsigned wantassertionsigned signingkey encryptionkey tlskey signmetadata bindingssso Base URL to construct SAML endpoints from, needs to be a URL with protocol, server, port and context path. Local alias for the entityid which can be part of a simple URL path and contains only alphanum characters. See Section 4.4, Entity alias. Unique identifier of the service provider. Flag indicating whether this service signs authentication requests. Flag indicating whether this service requires signed assertions. Key to include with usage "signing" in the metadata. Value will be set in ExtendedMetadata as signingkey. Key to include with usage "encryption" in the metadata. Value will be set in ExtendedMetadata as encryptionkey. Key to include with usage "unspecified" in the metadata. Value will be set in ExtendedMetadata as tlskey. When true generated metadata will be signed using XML Signature using certificate with alias of signingkey. Bindings to be included in the metadata for WebSSO profile. Supported values are: POST, Values from the request in format: scheme://server:port/contextpath defaultalias <entitybaseurl>/saml/ metadata/ alias/<entityalias> true true Default private key from the KeyManager Default private key from the KeyManager By default not included. Key is only included in metadata when it's different from signing and encryption keys. true Artifact, POST, PAOS RC2 Spring Security SAML Extension 12
16 Property Description Default value Artifact and PAOS. Order of bindings in the property determines order of endpoints in the generated metadata. bindingshoksso bindingsslo Bindings to be included in the metadata for WebSSO Holderof-Key profile. Supported values are: POST and Artifact. Order of bindings in the property determines order of endpoints in the generated metadata. Bindings to be included in the metadata for Single Logout profile. Supported values are: POST and Redirect. Order of bindings in the property determines order of endpoints in the generated metadata. Artifact, POST POST, Redirect assertionconsumerindex Index of assertion consumer point to be marked as default. 0 includediscovery customdiscoveryurl When true system will initialize discovery process during attempt to initialize single sign-on without pre-selected IDP. When includediscovery is true value overrides default discovery request URL. true generated value for internal discovery service customdiscoveryresponseurl When includediscoveryextension is true value overrides default discovery response URL. includediscoveryextension When true generated metadata will contain extension indicating that it's able to consume response from an IDP Discovery service. generated value for entry point response URL false nameid Name identifiers to be included in the metadata. Supported values are: , TRANSIENT, PERSISTENT, UNSPECIFIED and X509_SUBJECT. Order of NameIDs in the property determines order of NameIDs in the generated metadata. , TRANSIENT, PERSISTENT, UNSPECIFIED, X509_SUBJECT RC2 Spring Security SAML Extension 13
17 Property entitybaseurl is automatically generated based on values in the first HTTP request, unless explictly specified in the MetadataGenerator. Generated value can be normalized to exclude standard 80/443 ports for http/https schemes by setting property normalizebaseurl of the MetadataGeneratorFilter to true. Providing an empty collection or null value to properties bindingssso, bindingshoksso and bindingsslo will disable and remove the given profile. For example the following setting removes the holder-of-key profile from the generated metadata, forces artifact binding for single sign-on and redirect binding for single logout: <bean class="org.springframework.security.saml.metadata.metadatagenerator"> <property name="bindingssso"><list><value>artifact</value></list></property> <property name="bindingsslo"><list><value>redirect</value></list></property> <property name="bindingshoksso"><list/></property> By default generated metadata will be digitally signed using the default credential specified in KeyManager (see Section 4.5, Key management for details). Digital signature can be disabled using property signmetadata of the metadatageneratorfilter bean. In case application is deployed behind a reverse-proxy or other mechanism which makes the URL at the application server different from the URL seen by client at least property entitybaseurl should be set to a value e.g. For details about load balancing see Section 4.14, Load balancing. Pre-configured metadata In some situations it is beneficial to provide static version of the metadata document instead of the automatic generation. Need for manual changes in the metadata or fixing of production settings are some of those. Custom metadata document describing local SP application can be added by updating the metadata bean with correct ExtendedMetadata. Please follow these steps in order to do so: Generate and download metadata, e.g. using the Metadata information -> Generate new service provider metadata option in the sample application's administration UI or using instructions in the section called Automatic metadata generation. Store the metadata file as part of your project classpath, e.g. in WEB-INF/classes/security/ localhost_sp.xml. Disable the automatic metadata generator by removing the following custom filter from the securitycontext.xml: <security:custom-filter before="first" ref="metadatageneratorfilter"/> Include the SP metadata in the metadata bean and mark the entity as local in the extended metadata. Make sure to specify the alias property in case it was used during metadata generation. It is recommended to use the administration UI which also generates all the Spring declarations ready for inclusion in your securitycontext.xml RC2 Spring Security SAML Extension 14
18 <bean class="org.springframework.security.saml.metadata.extendedmetadatadelegate"> <bean class="org.opensaml.saml2.metadata.provider.filesystemmetadataprovider"> <value type="java.io.file">classpath:security/localhost_sp.xml</value> <property name="parserpool" ref="parserpool"/> <bean class="org.springframework.security.saml.metadata.extendedmetadata"> <property name="local" value="true"/> <property name="alias" value="default"/> <property name="securityprofile" value="metaiop"/> <property name="sslsecurityprofile" value="pkix"/> <property name="signingkey" value="apollo"/> <property name="encryptionkey" value="apollo"/> <property name="requireartifactresolvesigned" value="false"/> <property name="requirelogoutrequestsigned" value="false"/> <property name="requirelogoutresponsesigned" value="false"/> <property name="idpdiscoveryenabled" value="true"/> <property name="idpdiscoveryurl" value=" <property name="idpdiscoveryresponseurl" value=" Same instance of your application can include multiple statically declared local service providers each differentiated with it's own unique alias and entity ID. Each service provider can e.g. process a different domain or have different security key settings. This feature makes it possible to create multi-tenant applications with individual SAML settings for each of the tenants. In case multiple local SPs are declared, property hostedspname of the metadata bean should be set to the entity ID of the default one. For details about available settings of the ExtendedMetadata see Section A.1, Extended metadata. Downloading metadata Metadata describing the default local application can be downloaded from URL: In case application is configured to contain multiple service providers metadata for each can be loaded by adding the alias: URL for metadata download can be disabled by removing filter metadatadisplayfilter from the securitycontext.xml. Metadata is also available in the sample application's administration UI under Metadata information - > selected SP. Identity provider metadata Metadata for identity providers is imported to the metadatamanager in a similar way as pre-configured SP metadata. Metadata containing one or many identity providers can be added by providing an URL or RC2 Spring Security SAML Extension 15
19 a file. Processing of metadata and processing of SAML messages can be customized using properties of ExtendedMetadataDelegate and ExtendedMetadata. File-based metadata provider File-based provider loads metadata from a file available in the filesystem or classpath. <bean class="org.springframework.security.saml.metadata.extendedmetadatadelegate"> <bean class="org.opensaml.saml2.metadata.provider.filesystemmetadataprovider"> <value type="java.io.file">classpath:security/idp.xml</value> <property name="parserpool" ref="parserpool"/> <bean class="org.springframework.security.saml.metadata.extendedmetadata"/> Metadata is automatically refreshed in intervals specified by properties minrefreshdelay and maxrefreshdelay of the MetadataProvider bean. HTTP-based metadata provider HTTP-based provider loads metadata from an URL. <bean class="org.springframework.security.saml.metadata.extendedmetadatadelegate"> <bean class="org.opensaml.saml2.metadata.provider.httpmetadataprovider"> <value type="java.lang.string"> <!-- Timeout for metadata loading in ms --> <value type="int">5000</value> <property name="parserpool" ref="parserpool"/> <bean class="org.springframework.security.saml.metadata.extendedmetadata"/> Metadata is automatically refreshed in intervals specified by properties minrefreshdelay and maxrefreshdelay of the MetadataProvider bean. Alternatively class org.opensaml.saml2.metadata.provider.filebackedhttpmetadataprovider can be used to provide a backup in case URL is temporarily unavailable. File to use as backup is specified as third argument in the MetadataProvider bean constructor. Signature verification Importing of digitally signed metadata requires verification of signature's validity and trust. Metadata is not required to be signed by default. When present, signature is verified with PKIX algorithm and uses all public keys present in the configured keymanager as trust anchors. Make sure to include root CA RC2 Spring Security SAML Extension 16
20 certificate and intermediary CA certificates of the signature in your keystore. For details see the section called Importing public keys. You can limit certificates used to peform the verification by setting property metadatatrustedkeys of the ExtendedMetadataDelegate bean. The provided collection should contain aliases of keys to be used as trust anchors. Signature verification can be disabled by setting property metadatatrustcheck to false in the ExtendedMetadataDelegate bean. Setting metadatarequiresignature to true will reject metadata unless it's digitally signed. Extended metadata Additional processing instructions related to SAML exchanges with the IDP can be defined in ExtendedMetadata bean. In case your metadata document contains multiple identity providers (in multiple EntityDescriptor elements) extended metadata can be set separately for each of them using a map with entity ids as keys, e.g.: <bean class="org.springframework.security.saml.metadata.extendedmetadatadelegate"> metadata provider bean <!-- Default extended metadata for entities not specified in the map --> <bean class="org.springframework.security.saml.metadata.extendedmetadata"/> <!-- Extended metadata for specific IDPs --> <map> <entry key=" <bean class="org.springframework.security.saml.metadata.extendedmetadata"/> </entry> </map> For details about available settings of the ExtendedMetadata see Section A.1, Extended metadata. 4.4 Entity alias TODO 4.5 Key management SAML exchanges involve usage of cryptography for signing and encryption of data. All interaction with cryptographic keys is done through interface org.springframework.security.saml.key.keymanager. Default implementation relies on a single JKS key store which contains all private and public keys. KeyManager must contain at least one private key which should be marked as default by using the alias of the private key as part of the KeyManager constructor. Make sure that your configuration of SAML module contains bean keymanager with your custom key store and passwords RC2 Spring Security SAML Extension 17
21 Sample keystore Sample application contains a default key store with a sample private certificate usable for test purposes. The key store is defined as: <bean id="keymanager" class="org.springframework.security.saml.key.jkskeymanager"> <constructor-arg value="classpath:security/samlkeystore.jks"/> <constructor-arg type="java.lang.string" value="nalle123"/> <map> <entry key="apollo" value="nalle123"/> </map> <constructor-arg type="java.lang.string" value="apollo"/> The first argument points to the used key store file, second contains password for the keystore, third then map with passwords for private keys with alias-password value pairs. Alias of the default certificate is the last parameter. Generating and importing private keys Private keys (with either self-signed or CA signed certificates) are used to digitally sign SAML messages, encrypt their content and in some cases for SSL/TLS Client authentication of your service provider application. SAML Extension ships with a default private key in the samlkeystore.jks with alias apollo which can be used for initial testing, but for security reason should be replaced with your own key in early development stages. In case your IDP doesn't require keys signed by a specific certification authority you can generate your own self-signed key using the Java utility keytool, e.g. with: keytool -genkeypair -alias some-alias -keypass changeit -keystore samlkeystore.jks The keystore will now contain additional PrivateKeyEntry with alias mykey which can be imported to the keymanager in your securitycontext.xml. Keys signed by certification authorities are typically provided in.p12/.pfx format (or can be converted to such using OpenSSL) and imported to Java keystore with, e.g.: keytool -importkeystore -srckeystore key.p12 -srcstoretype PKCS12 -srcstorepass password \ -alias some-alias -destkeystore samlkeystore.jks -destalias some-alias -destkeypass changeit The following command can be used to determine available alias in the p12 file: keytool -list -keystore key.p12 -storetype pkcs12 Importing public keys Cryptographic material used to decrypt incoming data and verify trust of signatures in SAML messages and metadata is stored either in metadata of remote entities or in the keymanager. In order to import additional trusted key to the keystore run, e.g.: keytool -importcert -alias some-alias -file key.cer -keystore samlkeystore.jks RC2 Spring Security SAML Extension 18
22 Imported keys can be referenced in ExtendedMetadataDelegate and ExtenedMetadata beans, for details see the section called Signature verification and Section 4.6, Security profiles. Loading SSL/TLS certificates Direct SSL/TLS connections (used with HTTP-Artifact binding) require verification of the public key presented by the server. The SSL Extractor utility can be used to extract certificates presented by an SSL/TLS endpoint, e.g. with: java -jar sslextractor-0.9.jar The certificates are stored as.cer files and can be imported to the keystore as a usual public key. For details about configuring of trust for SSL/TLS connections see Section 4.6, Security profiles. 4.6 Security profiles Exchanges of messages between identity providers and service providers with SAML protocol involves usage of digital signatures. Signatures are typically constructed using means of asymetric cryptography and public key infrastructure with public and private keys signed by trusted certification authorities. Signatures are either applied directly to parts of XML representation of SAML messages using XML Signature or are part of the transport layer used to deliver the message like SSL/TLS. Verification of signatures is executed in two phases. Signature is first checked for validity by comparing digital hash included as part of the signature with value calculated from the content. Subsequently it is verified whether party who created the signature is trusted by the recipient. Module provides two mechanisms for defining which signatures should be accepted - metadata interoperability mode and PKIX mode. Security profiles are defined in Extended Metadata of your local SP. Profile can be defined separately for XML Signatures using property securityprofile and for SSL/TLS Signatures using propertysslsecurityprofile. Value of both properties can be either metaiop or pkix. For details about using Extended Metadata see Section 4.3, Metadata configuration, for reference of allowed values see Section A.1, Extended metadata. Metadata interoperability profile (MetaIOP) With MetaIOP mode certificates are not checked for expiration or revocation and certificate paths are not verified. This means that it does not matter which certification authority issued the certificate, as the fact whether the certificate is trusted or not is conveyed using other mechanisms (e.g. by secure metadata exchange or digital signature of metadata itself). Signature is deemed trusted when the certificate used to create it is included in one of the following places: Key with usage of signing or unspecified in entity metadata of a remote entity Signing key specified in property signingkey of extended metadata of a remote entity MetaIOP is the default profile for verification of XML signatures. For details about this profile see the specification. PKIX profile With PKIX profile trust of signature certificates is verified based on a certificate path between trusted CA certificates and the certificate in question. Certificate is trusted when it's possible to construct path RC2 Spring Security SAML Extension 19
23 from a trusted certificate to the validated one. With this profile certificate expiration and revocation can be checked. Trusted keys (anchors) for PKIX verification of signatures are combined from the following places: Key with usage of signing or unspecified in entity metadata of a remote entity Signing key specified in property signingkey of extended metadata of a remote entity All keys specified in trustedkeys set of extended metadata of a remote entity Custom profile Engine used to verify trust of signatures for given combination of SP/IDP is created in methods populatetrustengine and populatessltrustengine of interface org.springframework.security.saml.context.samlcontextprovider and can be overriden with custom implementation. See Section 4.12, Context provider for details on context customization. 4.7 Single sign-on process SP initialized SSO process can be started in two ways: User accesses a resource protected by Spring Security which initializes SAMLEntryPoint User is redirected to the SSO page at e.g. defaultalias After identification of IDP to use (for details see Section 4.8, IDP selection ) SAML Extension creates an AuthnRequest SAML message and sends it to the selected IDP. Both construction of the AuthnRequest and binding used to send it can be customized using WebSSOProfileOptions object. SAMLEntryPoint determines WebSSOProfileOptions configuration to use by calling method getprofileoptions. Default implementation returns value specified in property defaultoptions. Method can be overriden to provide custom logic for SSO initialization. The following SSO parameters can be customized using the WebSSOProfileOptions object: Table 4.2. org.springframework.security.saml.websso.webssoprofileoptions parameters Property Value Description relaystate Value is sent to IDP and provided back to SP as part of the authentication response. Default settings for WebSSOProfileOptions can be specified in bean samlentrypoint of your securitycontext.xml, e.g.: <bean id="samlentrypoint" class="org.springframework.security.saml.samlentrypoint"> <property name="defaultprofileoptions"> <bean class="org.springframework.security.saml.websso.webssoprofileoptions"> <property name="binding" value="urn:oasis:names:tc:saml:2.0:bindings:http-post"/> <property name="includescoping" value="false"/> </property> 4.8 IDP selection TODO RC2 Spring Security SAML Extension 20
24 4.9 Logout process TODO 4.10 Authentication object Successful authentication using SAML token results in creation of an Authentication object by the SAMLAuthenticationProvider. By default instance of org.springframework.security.providers.expiringusernameauthenticationtoken is created. Content of the resulting object can be customized by setting properties of the samlauthenticationprovider bean in the securitycontext.xml. Instance of org.springframework.security.saml.userdetails.samluserdetailsservice can be provided to supply application specific information about the authenticated user. Property forceprincipalasstring can be used to force String value of the principal property. The Authentication object is available in pages secured with Spring Security using SecurityContextHolder.getContext().getAuthentication() and is populated with the following values: Table 4.3. ExpiringUsernameAuthenticationToken values. Property Principal Principal Principal Credentials Authorities Expiration Value When forceprincipalasstring = false AND userdetail = null (default) - NameID object included in the SAML Assertion (credential.getnameid() of type org.opensaml.saml2.core.nameid) When forceprincipalasstring = true - String value of NameID included in the SAML Assertion (credential.getnameid().getvalue() of type java.lang.string) When forceprincipalasstring = false AND userdetail!= null - UserDetail object returned from the SAMLUserDetailsService SAML authentication object including entity ID of local and remote entity, name ID, assertion and relay state (org.springframework.security.saml.samlcredential) Result of getauthorities() call on the UserDetails object returned from SAMLUserDetailsService, empty list when there's no UserDetail object available. Value of SessionNotOnOrAfter in the SAML Assertion when avaialble, null otherwise. Authentication object will start returning false on the isauthenticated() after the expiration time. Custom implementation of the SAMLUserDetailsService can be provided as property userdetails of the SAMLAuthenticationProvider. Implementation can perform operation such as parsing of attributes present in the SAML Assertion, e.g.: RC2 Spring Security SAML Extension 21
25 package fi.schafer.test.saml; import org.opensaml.saml2.core.attribute; import org.opensaml.xml.xmlobject; import org.springframework.security.core.userdetails.usernamenotfoundexception; import org.springframework.security.saml.samlcredential; import org.springframework.security.saml.userdetails.samluserdetailsservice; public class TestUserDetails implements SAMLUserDetailsService public Object loaduserbysaml(samlcredential credential) throws UsernameNotFoundException { Attribute accountid = credential.getattributebyname("accountid"); if (accountid == null accountid.getattributevalues() == null accountid.getattributevalues().size() == 0) { return null; } XMLObject attributevalue = accountid.getattributevalues().iterator().next(); return attributevalue.getdom().gettextcontent(); } } Population of the authentication object can be further customized by overriding of the getuserdetails, getprincipal, getentitlements and getexpirationdate methods in the SAMLAuthenticationProvider Authentication log Key events such as single sign-on and single logout initialization, success or failure can be logged for creation of an audit trail. A custom logger can be created by implementing interface org.springframework.security.saml.log.samllogger and including it's bean in the securitycontext.xml, e.g.: <bean id="samllogger" class="org.springframework.security.saml.log.samldefaultlogger"/> Two basic implementations are provided by default: org.springframework.security.saml.log.samlemptylogger Doesn't perform any logging, simply ignores all events. org.springframework.security.saml.log.samldefaultlogger Logs events as INFO level messages to the standard log configurable as described in Section 7.1, Logging. Setting property logmessages to true will include content of the SAML messages as part of the log. Logging of exceptions can be disalbed by setting logerrors to false Context provider Context provider populates information about the local service provider (your application) such as entityid, role, metadata, security keys, SSL credetials and trust engines for verification of signatures and SSL/TLS connections. Once populated context is made available to all components participating in processing of the incoming or outgoing SAML messages. ContextProvider can customized to alter behavior of the SAML Extension. The default implementation RC2 Spring Security SAML Extension 22
26 org.springframework.security.saml.context.samlcontextproviderimpl relies on information available in the ExtendedMetadata and performs the followign steps for creation of the context: Locate entityid of the local SP by parsing part of the URL after /alias/ (e.g. myalias in and match it with property alias specified in the ExtendedMetadata. In case URL doesn't contain any alias part the default service provider configured with property hostedspname on the metadata bean is used. Populate credential used to decrypt data sent to this service provider. In case ExtendedMetadata specifies property encryptionkey it will be used as an alias to lookup a private key from the keymanager bean. Otherwise defaultkey of the keymanager bean will be used. Populate credential used for SSL/TLS client authentication. In case ExtendedMetadata specifies property tlskey it will be used as an alias to lookup key from keymanager bean. Otherwise no credential will be provided for client authentication. Populate trust engine for verification of signatures. Depending on securityprofile setting in the ExtendedMetadata trust engine based on either the section called Metadata interoperability profile (MetaIOP) or the section called PKIX profile is created. Populate trust engine for verification of SSL/TLS connections. Depending on sslsecurityprofile setting in the ExtendedMetadata trust engine based on either the section called Metadata interoperability profile (MetaIOP) or the section called PKIX profile is created. During initialization of SSO ContextProvider is also requested to provide metadata of the peer IDP. System performs these steps to locate peer IDP to use: Load parameter idp of the HttpRequest object and try to locate peer IDP by the entityid. When there's no idp parameter provided system will either start IDP discovery process (when enabled in the ExtendedMetadata of the local SP) or use the default IDP specified in the metadata bean Validity intervals For security reasons system limits the time window enabling processing of SAML messages and assertions. The time window parameters can be customized with the following settings. Validity of assertions processed during the signle sign-on process is limited to 3000 seconds. Value can be customized with property maxassertiontime of the WebSSOProfileConsumerImpl bean. System allows users to single sign-on for up to 7200 seconds since their initial authentication with the IDP (based on value AuthInstance of the Authentication statement). Some IDPs allow users to stay authenticated for longer periods than this and you might need to change the default value by setting maxauthenticationage of the WebSSOProfileConsumerImpl bean. As clocks between IDP and SP machines may not be perfectly synchronized a tolerance of 60 seconds is applied for time comparisons. The tolerance value (time skew) can be customized by settings property responseskew in beans WebSSOProfileConsumerImpl and SingleLogoutProfileImpl Load balancing SAML Extension can be deployed in scenarios where mutliple back-end servers process SAML requests forwarded by a reverse-proxy or a load balancer. SSL termination proxies which communicate using an RC2 Spring Security SAML Extension 23
27 unencrypted channel between the proxy and back-end servers are also supported. In order to confugure SAML Extension for deployment behing a load balancer or a reverse-proxy please follow these steps: Make sure that your reverse-proxy or load-balancer is configured to use sticky sessions. Information about e.g. sent requests is stored within user's HTTP session and sending of response to another back-end node would make the original request data unavailable and fail the validation. Sticky session are not necessary in case only IDP-initialized SSO is used. Provide information about front-end URL to the back-end servers by changing the contextprovider bean implementation in your securitycontex.xml to class org.springframework.security.saml.context.samlcontextproviderlb: <bean id="contextprovider" class="org.springframework.security.saml.context.samlcontextproviderlb"> <property name="scheme" value="https"/> <property name="servername" value=" <property name="serverport" value="443"/> <property name="includeserverportinrequesturl" value="false"/> <property name="contextpath" value="/spring-security-saml2-sample"/> This setting enables extension to correctly form all generated URLs and verify endpoints of the incoming SAML messages. In case you use automatically generated metadata make sure to configure entitybaseurl matching the front-end URL in your metadatageneratorfilter bean: <bean id="metadatageneratorfilter" class="org.springframework.security.saml.metadata.metadatageneratorfilter"> <bean class="org.springframework.security.saml.metadata.metadatagenerator"> <property name="entitybaseurl" value=" sample"/> RC2 Spring Security SAML Extension 24
28 5. Administration user interface TODO RC2 Spring Security SAML Extension 25
29 6. IDP integration guide This chapter provides step-by-step guides for basic configuration of SAML Extension with specific IDP products. Integration can be further configured with settings discussed in previous chapters. 6.1 Active Directory Federation Services 2.0 (ADFS) ADFS 2.0 supports SAML 2.0 in IDP mode and can be easily integrated with SAML Extension for both SSO and SLO. Before starting with the configuration make sure that the following pre-requisites are satisfied: Install AD FS 2.0 ( Run AD FS 2.0 Federation Server Configuration Wizard in the AD FS 2.0 Management Console Make sure that DNS name of your Windows Server is available at your SP and vice-versa Install a Java container (e.g. Tomcat) for deployment of the SAML 2 Extension Configure your container to use HTTPS, this is required by AD FS ( tomcat-6.0-doc/ssl-howto.html) Initialize IDP metadata Download AD FS 2.0 metadata from FederationMetadata.xml Store the downloaded content to saml2-sample/web-inf/src/main/resources/security/ FederationMetadata.xml Modify bean metadata in securitycontext.xml and replace classpath:security/idp.xml with classpath:security/federationmetadata.xml and add property metadatatrustcheck to false to skip signature validation: <bean class="org.springframework.security.saml.metadata.extendedmetadatadelegate"> <bean class="org.opensaml.saml2.metadata.provider.filesystemmetadataprovider"> <value type="java.io.file">classpath:security/federationmetadata.xml</value> <property name="parserpool" ref="parserpool"/> <bean class="org.springframework.security.saml.metadata.extendedmetadata"/> <property name="metadatatrustcheck" value="false"/> Initialize SP metadata Deploy SAML 2 Extension war archive from saml2-sample/target/spring-security-saml2-sample.war Open browser at e.g. make sure to use HTTPS protocol, system will automatically generate metadata document Click Metadata information, select item with your server name in the Service providers list Store content of the Metadata field to a document metadata.xml and upload it to the AD FS server In AD FS 2.0 Management Console select "Add Relying Party Trust" Select "Import data about the relying party from a file" and select file created earlier, select Next RC2 Spring Security SAML Extension 26
30 System may complain that some content of metadata is not supported, you can safely ignore this warning Continue with the wizard, on the "Ready to Add Trust" make sure that tab endpoints contains multiple endpoing values, if not verify that your metadata was generated with https protocol in their URLs Leave "Open the Edit Claim Rules dialog" checkbox checked and finish the wizard Select "Add Rule", choose "Send LDAP Attributes as Claims" and press Next Add NameID as "Claim rule name", choose "Active Directory" as Attribute store, choose "SAM- Account-Name" as LDAP Attribute and "Name ID" as "Outgoing claim type", finish the wizard and confirm the claim rules window Open the provider by double-clicking it, select tab Advanced and change "Secure hash algorithm" to SHA-1 Test SSO Open SAML Extension at select your AD FS server and press login. In case Artifact binding is used and SSL/TLS certificate of your AD FS is not already trusted you have to import it to your samlkeystore.jks by following instructions in the error report RC2 Spring Security SAML Extension 27
31 7. Troubleshooting 7.1 Logging SAML Extension uses SLF4J framework for logging. The same applies to the underlaying OpenSAML library. The sample application by default uses log4j version 1.2 binding for SLF4J. You can enable debug logging by modifying file saml2-sample/src/main/resources/log4j.properties and adding: log4j.logger.org.springframework.security.saml=debug log4j.logger.org.opensaml=debug For details about using other logging frameworks please consult the SLF4J manual. 7.2 Common problems Time synchronization Processing of SAML messages and assertions is often limited to a specific time window which e.g. prevents possibilities of replay attacks. Validation of messages can fail when internal clocks of the IDP and SP machines are not synchronized. Make sure to use a time synchronization service on all systems in the federation RC2 Spring Security SAML Extension 28
32 Appendix A. Configuration reference This chapter provides reference for settings available in configuration beans of the SAML module. A.1 Extended metadata Extended metadata provides additional settings for customization of IDP and SP behavior. Bean can be found in package org.springframework.security.saml.metadata.extendedmetadata. For details on setting up metadata please consultsection 4.3, Metadata configuration. Table A.1. Extended metadata settings Property Default Entities Description local false both alias local idpdiscoveryenabled false local idpdiscoveryurl local idpdiscoveryresponseurl local ecpenabled false local securityprofile metaiop local sslsecurityprofile pkix local signingkey both encryptionkey both tlskey both trustedkeys both requirelogoutrequestsigned both requirelogoutresponsesigned both requireartifactresolvesigned both RC2 Spring Security SAML Extension 29
Spring Security SAML Extension
Reference Documentation 1.0.2.BUILD-SNAPSHOT Vladimír Schäfer Copyright 2009-2014 Vladimír Schäfer Table of Contents I. Getting Started... 1 1. Introduction... 2 1.1. What this manual covers... 2 1.2.
Spring Security SAML module
Spring Security SAML module Author: Vladimir Schäfer E-mail: [email protected] Copyright 2009 The package contains the implementation of SAML v2.0 support for Spring Security framework. Following
This chapter describes how to use the Junos Pulse Secure Access Service in a SAML single sign-on deployment. It includes the following sections:
CHAPTER 1 SAML Single Sign-On This chapter describes how to use the Junos Pulse Secure Access Service in a SAML single sign-on deployment. It includes the following sections: Junos Pulse Secure Access
Implementation Guide SAP NetWeaver Identity Management Identity Provider
Implementation Guide SAP NetWeaver Identity Management Identity Provider Target Audience Technology Consultants System Administrators PUBLIC Document version: 1.10 2011-07-18 Document History CAUTION Before
Using SAML for Single Sign-On in the SOA Software Platform
Using SAML for Single Sign-On in the SOA Software Platform SOA Software Community Manager: Using SAML on the Platform 1 Policy Manager / Community Manager Using SAML for Single Sign-On in the SOA Software
PingFederate. Salesforce Connector. Quick Connection Guide. Version 4.1
PingFederate Salesforce Connector Version 4.1 Quick Connection Guide 2011 Ping Identity Corporation. All rights reserved. PingFederate Salesforce Quick Connection Guide Version 4.1 June, 2011 Ping Identity
Enabling SSL and Client Certificates on the SAP J2EE Engine
Enabling SSL and Client Certificates on the SAP J2EE Engine Angel Dichev RIG, SAP Labs SAP AG 1 Learning Objectives As a result of this session, you will be able to: Understand the different SAP J2EE Engine
Configuring Secure Socket Layer and Client-Certificate Authentication on SAS 9.3 Enterprise BI Server Systems That Use Oracle WebLogic 10.
Configuring Secure Socket Layer and Client-Certificate Authentication on SAS 9.3 Enterprise BI Server Systems That Use Oracle WebLogic 10.3 Table of Contents Overview... 1 Configuring One-Way Secure Socket
CA Nimsoft Service Desk
CA Nimsoft Service Desk Single Sign-On Configuration Guide 6.2.6 This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as the Documentation
ADFS Integration Guidelines
ADFS Integration Guidelines Version 1.6 updated March 13 th 2014 Table of contents About This Guide 3 Requirements 3 Part 1 Configure Marcombox in the ADFS Environment 4 Part 2 Add Relying Party in ADFS
How To Use Saml 2.0 Single Sign On With Qualysguard
QualysGuard SAML 2.0 Single Sign-On Technical Brief Introduction Qualys provides its customer the option to use SAML 2.0 Single Sign On (SSO) authentication with their QualysGuard subscription. When implemented,
SSL Configuration on Weblogic Oracle FLEXCUBE Universal Banking Release 12.0.87.01.0 [August] [2014]
SSL Configuration on Weblogic Oracle FLEXCUBE Universal Banking Release 12.0.87.01.0 [August] [2014] Table of Contents 1. CONFIGURING SSL ON ORACLE WEBLOGIC... 1-1 1.1 INTRODUCTION... 1-1 1.2 SETTING UP
Test Plan for Liberty Alliance SAML Test Event Test Criteria SAML 2.0
1 2 3 4 5 6 7 8 9 10 11 Test Plan for Liberty Alliance SAML Test Event Test Criteria SAML 2.0 Version 3.2.2 Editor: Kyle Meadors, Drummond Group Inc. Abstract: This document describes the test steps to
HOTPin Integration Guide: Salesforce SSO with Active Directory Federated Services
1 HOTPin Integration Guide: Salesforce SSO with Active Directory Federated Services Disclaimer Disclaimer of Warranties and Limitation of Liabilities All information contained in this document is provided
SAML v1.1 for.net Developer Guide
SAML v1.1 for.net Developer Guide Copyright ComponentSpace Pty Ltd 2004-2016. All rights reserved. www.componentspace.com Contents 1 Introduction... 1 1.1 Features... 1 1.2 Benefits... 1 1.3 Prerequisites...
CA Performance Center
CA Performance Center Single Sign-On User Guide 2.4 This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as the Documentation ) is
How to create a SP and a IDP which are visible across tenant space via Config files in IS
How to create a SP and a IDP which are visible across tenant space via Config files in IS This Documentation is explaining the way to create a SP and IDP which works are visible to all the tenant domains.
Setup Guide Access Manager 3.2 SP3
Setup Guide Access Manager 3.2 SP3 August 2014 www.netiq.com/documentation Legal Notice THIS DOCUMENT AND THE SOFTWARE DESCRIBED IN THIS DOCUMENT ARE FURNISHED UNDER AND ARE SUBJECT TO THE TERMS OF A LICENSE
Angel Dichev RIG, SAP Labs
Enabling SSL and Client Certificates on the SAP J2EE Engine Angel Dichev RIG, SAP Labs Learning Objectives As a result of this session, you will be able to: Understand the different SAP J2EE Engine SSL
CA Single Sign-On r12.x (CA SiteMinder) Implementation Proven Professional Exam
CA Single Sign-On r12.x (CA SiteMinder) Implementation Proven Professional Exam (CAT-140) Version 1.4 - PROPRIETARY AND CONFIDENTIAL INFORMATION - These educational materials (hereinafter referred to as
PHP Integration Kit. Version 2.5.1. User Guide
PHP Integration Kit Version 2.5.1 User Guide 2012 Ping Identity Corporation. All rights reserved. PingFederate PHP Integration Kit User Guide Version 2.5.1 December, 2012 Ping Identity Corporation 1001
CHAPTER 7 SSL CONFIGURATION AND TESTING
CHAPTER 7 SSL CONFIGURATION AND TESTING 7.1 Configuration and Testing of SSL Nowadays, it s very big challenge to handle the enterprise applications as they are much complex and it is a very sensitive
CA CloudMinder. Getting Started with SSO 1.5
CA CloudMinder Getting Started with SSO 1.5 This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as the Documentation ) is for your
IMPLEMENTING SINGLE SIGN- ON USING SAML 2.0 ON JUNIPER NETWORKS MAG SERIES JUNOS PULSE GATEWAYS
APPLICATION NOTE IMPLEMENTING SINGLE SIGN- ON USING SAML 2.0 ON JUNIPER NETWORKS MAG SERIES JUNOS PULSE GATEWAYS SAML 2.0 combines encryption and digital signature verification across resources for a more
SAML Single-Sign-On (SSO)
C O L A B O R A T I V E I N N O V A T I O N M A N A G E M E N T Complete Feature Guide SAML Single-Sign-On (SSO) 1. Features This feature allows administrators to setup Single Sign-on (SSO) integration
Identity Server Guide Access Manager 4.0
Identity Server Guide Access Manager 4.0 June 2014 www.netiq.com/documentation Legal Notice THIS DOCUMENT AND THE SOFTWARE DESCRIBED IN THIS DOCUMENT ARE FURNISHED UNDER AND ARE SUBJECT TO THE TERMS OF
OpenAM. 1 open source 1 community experience distilled. Single Sign-On (SSO) tool for securing your web. applications in a fast and easy way
OpenAM Written and tested with OpenAM Snapshot 9 the Single Sign-On (SSO) tool for securing your web applications in a fast and easy way Indira Thangasamy [ PUBLISHING 1 open source 1 community experience
SAML Authentication within Secret Server
SAML Authentication within Secret Server Secret Server allows the use of SAML Identity Provider (IdP) authentication instead of the normal authentication process for single sign-on (SSO). To do this, Secret
Flexible Identity Federation
Flexible Identity Federation Quick start guide version 1.0.1 Publication history Date Description Revision 2015.09.23 initial release 1.0.0 2015.12.11 minor updates 1.0.1 Copyright Orange Business Services
Step-by-Step guide for SSO from MS Sharepoint 2010 to SAP EP 7.0x
Step-by-Step guide for SSO from MS Sharepoint 2010 to SAP EP 7.0x Sverview Trust between SharePoint 2010 and ADFS 2.0 Use article Federated Collaboration with Shibboleth 2.0 and SharePoint 2010 Technologies
SSO Plugin. Case study: Integrating with Ping Federate. J System Solutions. http://www.javasystemsolutions.com. Version 4.0
SSO Plugin Case study: Integrating with Ping Federate J System Solutions Version 4.0 JSS SSO Plugin v4.0 Release notes Introduction... 3 Ping Federate Service Provider configuration... 4 Assertion Consumer
CA Nimsoft Unified Management Portal
CA Nimsoft Unified Management Portal HTTPS Implementation Guide 7.6 Document Revision History Document Version Date Changes 1.0 June 2014 Initial version for UMP 7.6. CA Nimsoft Monitor Copyright Notice
Tenrox. Single Sign-On (SSO) Setup Guide. January, 2012. 2012 Tenrox. All rights reserved.
Tenrox Single Sign-On (SSO) Setup Guide January, 2012 2012 Tenrox. All rights reserved. About this Guide This guide provides a high-level technical overview of the Tenrox Single Sign-On (SSO) architecture,
SAP NetWeaver Fiori. For more information, see "Creating and enabling a trusted provider for Centrify" on page 108-10.
Chapter 108 Configuring SAP NetWeaver Fiori The following is an overview of the steps required to configure the SAP NetWeaver Fiori Web application for single sign-on (SSO) via SAML. SAP NetWeaver Fiori
Dell One Identity Cloud Access Manager 8.0.1 - How to Configure for SSO to SAP NetWeaver using SAML 2.0
Dell One Identity Cloud Access Manager 8.0.1 - How to Configure for SSO to SAP NetWeaver using SAML 2.0 May 2015 About this guide Prerequisites and requirements NetWeaver configuration Legal notices About
Setup Guide Access Manager Appliance 3.2 SP3
Setup Guide Access Manager Appliance 3.2 SP3 August 2014 www.netiq.com/documentation Legal Notice THIS DOCUMENT AND THE SOFTWARE DESCRIBED IN THIS DOCUMENT ARE FURNISHED UNDER AND ARE SUBJECT TO THE TERMS
Integrating VMware Horizon Workspace and VMware Horizon View TECHNICAL WHITE PAPER
Integrating VMware Horizon Workspace and VMware Horizon View TECHNICAL WHITE PAPER Table of Contents Introduction.... 3 Requirements.... 3 Horizon Workspace Components.... 3 SAML 2.0 Standard.... 3 Authentication
SAP NetWeaver AS Java
Chapter 75 Configuring SAP NetWeaver AS Java SAP NetWeaver Application Server ("AS") Java (Stack) is one of the two installation options of SAP NetWeaver AS. The other option is the ABAP Stack, which is
Only LDAP-synchronized users can access SAML SSO-enabled web applications. Local end users and applications users cannot access them.
This chapter provides information about the Security Assertion Markup Language (SAML) Single Sign-On feature, which allows administrative users to access certain Cisco Unified Communications Manager and
Configuring. Moodle. Chapter 82
Chapter 82 Configuring Moodle The following is an overview of the steps required to configure the Moodle Web application for single sign-on (SSO) via SAML. Moodle offers SP-initiated SAML SSO only. 1 Prepare
How To Use Netiq Access Manager 4.0.1.1 (Netiq) On A Pc Or Mac Or Macbook Or Macode (For Pc Or Ipad) On Your Computer Or Ipa (For Mac) On An Ip
Setup Guide Access Manager 4.0 SP1 May 2014 www.netiq.com/documentation Legal Notice THIS DOCUMENT AND THE SOFTWARE DESCRIBED IN THIS DOCUMENT ARE FURNISHED UNDER AND ARE SUBJECT TO THE TERMS OF A LICENSE
Single Sign-on. Overview. Using SSO with the Cisco WebEx and Cisco WebEx Meeting. Overview, page 1
Overview, page 1 Using SSO with the Cisco WebEx and Cisco WebEx Meeting Applications, page 1 Requirements, page 2 Configuration of in Cisco WebEx Messenger Administration Tool, page 3 Sample Installation
SAML 2.0 Configurations at SAP NetWeaver AS ABAP and Microsoft ADFS
SAML 2.0 Configurations at SAP NetWeaver AS ABAP and Microsoft ADFS Applies to: SAP Gateway 2.0 Summary This guide describes how you install and configure SAML 2.0 on Microsoft ADFS server and SAP NetWeaver
StreamServe Persuasion SP5 StreamStudio
StreamServe Persuasion SP5 StreamStudio Administrator s Guide Rev B StreamServe Persuasion SP5 StreamStudio Administrator s Guide Rev B OPEN TEXT CORPORATION ALL RIGHTS RESERVED United States and other
McAfee Cloud Identity Manager
SAML2 Cloud Connector Guide McAfee Cloud Identity Manager version 1.2 or later COPYRIGHT Copyright 2013 McAfee, Inc. All Rights Reserved. No part of this publication may be reproduced, transmitted, transcribed,
ShareFile Security Overview
ShareFile Security Overview ShareFile Company Policy All ShareFile employees undergo full background checks and sign our information security policy prior to beginning employment with the company. The
Using the Adobe Access Server for Protected Streaming
Adobe Access April 2014 Version 4.0 Using the Adobe Access Server for Protected Streaming Copyright 2012-2014 Adobe Systems Incorporated. All rights reserved. This guide is protected under copyright law,
Authentication and Single Sign On
Contents 1. Introduction 2. Fronter Authentication 2.1 Passwords in Fronter 2.2 Secure Sockets Layer 2.3 Fronter remote authentication 3. External authentication through remote LDAP 3.1 Regular LDAP authentication
SAML v2.0 for.net Developer Guide
SAML v2.0 for.net Developer Guide Copyright ComponentSpace Pty Ltd 2004-2015. All rights reserved. www.componentspace.com Contents 1 Introduction... 1 1.1 Features... 1 1.2 Benefits... 1 1.3 Prerequisites...
Single Sign-On Implementation Guide
Single Sign-On Implementation Guide Salesforce, Winter 16 @salesforcedocs Last updated: November 4, 2015 Copyright 2000 2015 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark
Single Sign-On Implementation Guide
Single Sign-On Implementation Guide Salesforce, Summer 15 @salesforcedocs Last updated: July 1, 2015 Copyright 2000 2015 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of
Kantara egov and SAML2int comparison
Kantara egov and SAML2int comparison 17.8.2010/[email protected] This document compares the egovernment Implementation profile of SAML 2.0, created by the egovernment WG of Kantara Initiative, and the
PingFederate. IWA Integration Kit. User Guide. Version 2.6
PingFederate IWA Integration Kit Version 2.6 User Guide 2012 Ping Identity Corporation. All rights reserved. PingFederate IWA Integration Kit User Guide Version 2.6 March, 2012 Ping Identity Corporation
Salesforce1 Mobile Security Guide
Salesforce1 Mobile Security Guide Version 1, 1 @salesforcedocs Last updated: December 8, 2015 Copyright 2000 2015 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com,
DEPLOYMENT GUIDE. SAML 2.0 Single Sign-on (SSO) Deployment Guide with Ping Identity
DEPLOYMENT GUIDE SAML 2.0 Single Sign-on (SSO) Deployment Guide with Ping Identity Table of Contents SAML Overview...3 Integration Topology...3 Deployment Requirements...4 Configuration Steps...4 Step
Fairsail. Implementer. Single Sign-On with Fairsail and Microsoft Active Directory Federation Services 2.0. Version 1.92 FS-SSO-XXX-IG-201406--R001.
Fairsail Implementer Microsoft Active Directory Federation Services 2.0 Version 1.92 FS-SSO-XXX-IG-201406--R001.92 Fairsail 2014. All rights reserved. This document contains information proprietary to
TROUBLESHOOTING RSA ACCESS MANAGER SINGLE SIGN-ON FOR WEB-BASED APPLICATIONS
White Paper TROUBLESHOOTING RSA ACCESS MANAGER SINGLE SIGN-ON FOR WEB-BASED APPLICATIONS Abstract This white paper explains how to diagnose and troubleshoot issues in the RSA Access Manager single sign-on
Configuring IBM WebSphere Application Server 7 for Secure Sockets Layer and Client-Certificate Authentication on SAS 9.3 Enterprise BI Server Web
Configuring IBM WebSphere Application Server 7 for Secure Sockets Layer and Client-Certificate Authentication on SAS 9.3 Enterprise BI Server Web Applications Configuring IBM WebSphere 7 for SSL and Client-Certificate
Configuring ADFS 3.0 to Communicate with WhosOnLocation SAML
Configuring ADFS 3.0 to Communicate with WhosOnLocation SAML --------------------------------------------------------------------------------------------------------------------------- Contents Overview...
Ameritas Single Sign-On (SSO) and Enterprise SAML Standard. Architectural Implementation, Patterns and Usage Guidelines
Ameritas Single Sign-On (SSO) and Enterprise SAML Standard Architectural Implementation, Patterns and Usage Guidelines 1 Background and Overview... 3 Scope... 3 Glossary of Terms... 4 Architecture Components...
HTTPS Configuration for SAP Connector
HTTPS Configuration for SAP Connector 1993-2015 Informatica LLC. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise) without
AD FS 2.0 Step-by-Step Guide: Federation with Ping Identity PingFederate
AD FS 2.0 Step-by-Step Guide: Federation with Ping Identity PingFederate Ping Identity Corporation and Microsoft Corporation Published: November 2010 Version: 1.0 Author: Dave Martinez, Principal, Martinez
fåíéêåéí=péêîéê=^çãáåáëíê~íçêûë=dìáçé
fåíéêåéí=péêîéê=^çãáåáëíê~íçêûë=dìáçé Internet Server FileXpress Internet Server Administrator s Guide Version 7.2.1 Version 7.2.2 Created on 29 May, 2014 2014 Attachmate Corporation and its licensors.
Setting Up Resources in VMware Identity Manager
Setting Up Resources in VMware Identity Manager VMware Identity Manager 2.4 This document supports the version of each product listed and supports all subsequent versions until the document is replaced
New Single Sign-on Options for IBM Lotus Notes & Domino. 2012 IBM Corporation
New Single Sign-on Options for IBM Lotus Notes & Domino 2012 IBM Corporation IBM s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM s sole
Use Enterprise SSO as the Credential Server for Protected Sites
Webthority HOW TO Use Enterprise SSO as the Credential Server for Protected Sites This document describes how to integrate Webthority with Enterprise SSO version 8.0.2 or 8.0.3. Webthority can be configured
CA SiteMinder. SAML Affiliate Agent Guide. 6.x QMR 6
CA SiteMinder SAML Affiliate Agent Guide 6.x QMR 6 This documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as the Documentation ) is
PicketLink Federation User Guide 1.0.0
PicketLink Federation User Guide 1.0.0 by Anil Saldhana What this Book Covers... v I. Getting Started... 1 1. Introduction... 3 2. Installation... 5 II. Simple Usage... 7 3. Web Single Sign On (SSO)...
Getting Started with AD/LDAP SSO
Getting Started with AD/LDAP SSO Active Directory and LDAP single sign- on (SSO) with Syncplicity Business Edition accounts allows companies of any size to leverage their existing corporate directories
Configuring EPM System 11.1.2.1 for SAML2-based Federation Services SSO
Configuring EPM System 11.1.2.1 for SAML2-based Federation Services SSO Scope... 2 Prerequisites Tasks... 2 Procedure... 2 Step 1: Configure EPM s WebLogic domain for SP Federation Services... 2 Step 2:
OIOSAML 2.0 Toolkits Test results May 2009
OIOSAML 2.0 Toolkits Test results May 2009 5. September 2008 - Søren Peter Nielsen: - Lifted and modified from http://docs.google.com/a/nemsso.info/doc?docid=dfxj3xww_7d9xdf7gz&hl=en by Joakim Recht 12.
It is I, SAML. Ana Mandić Development Lead @ Five Minutes Ltd
It is I, SAML Ana Mandić Development Lead @ Five Minutes Ltd About Five Minutes We design and develop top notch mobile apps for leading mobile platforms 50 full-time employees Offices in Zagreb, Osijek
BlackBerry Enterprise Service 10. Version: 10.2. Configuration Guide
BlackBerry Enterprise Service 10 Version: 10.2 Configuration Guide Published: 2015-02-27 SWD-20150227164548686 Contents 1 Introduction...7 About this guide...8 What is BlackBerry Enterprise Service 10?...9
Introduction to Mobile Access Gateway Installation
Introduction to Mobile Access Gateway Installation This document describes the installation process for the Mobile Access Gateway (MAG), which is an enterprise integration component that provides a secure
Copyright: WhosOnLocation Limited
How SSO Works in WhosOnLocation About Single Sign-on By default, your administrators and users are authenticated and logged in using WhosOnLocation s user authentication. You can however bypass this and
IBM SPSS Collaboration and Deployment Services Version 6 Release 0. Single Sign-On Services Developer's Guide
IBM SPSS Collaboration and Deployment Services Version 6 Release 0 Single Sign-On Services Developer's Guide Note Before using this information and the product it supports, read the information in Notices
JVA-122. Secure Java Web Development
JVA-122. Secure Java Web Development Version 7.0 This comprehensive course shows experienced developers of Java EE applications how to secure those applications and to apply best practices with regard
Contents at a Glance. 1 Introduction 17. 2 Basic Principles of IT Security 23. 3 Authentication and Authorization in
at a Glance 1 Introduction 17 2 Basic Principles of IT Security 23 3 Authentication and Authorization in SAP NetWeaver Application Server Java 53 4 Single Sign-On 151 5 Identity Provisioning 289 6 Secure
Single Sign-on to Salesforce.com with CA Federation Manager
TECHNOLOGY BRIEF: SINGLE SIGN-ON TO SALESFORCE.COM WITH CA FEDERATION MANAGER Single Sign-on to Salesforce.com with CA Federation Manager TOMMY CHENG, PRINCIPAL ENGINEERING SERVICES ARCHITECT, CA PETER
Cyber Authentication Technology Solutions Interface Architecture and Specification Version 2.0: Deployment Profile
Cyber Authentication Technology Solutions Interface Architecture and Specification Version 2.0: Status: Baseline for RFP #3 Final r7.2 Date modified: 25 March, 2011 13:53 File name: CA - V2.0 Final r7.2_en.doc
365 Services. 1.1 Configuring Access Manager. 1.1.1 Prerequisite. 1.1.2 Adding the Office 365 Metadata. docsys (en) 2 August 2012
1 1Configuring Single Sign-On For Office 365 Services NetIQ Access Manager is compatible with Office 365 and provides single sign on access to Office 365 services. Single sign on access is supported for
Exchange Reporter Plus SSL Configuration Guide
Exchange Reporter Plus SSL Configuration Guide Table of contents Necessity of a SSL guide 3 Exchange Reporter Plus Overview 3 Why is SSL certification needed? 3 Steps for enabling SSL 4 Certificate Request
IBM WebSphere Application Server
IBM WebSphere Application Server SAML 2.0 web single-sign-on 2012 IBM Corporation This presentation describes support for SAML 2.0 web browser Single Sign On profile included in IBM WebSphere Application
IUCLID 5 Guidance and Support
IUCLID 5 Guidance and Support Web Service Installation Guide July 2012 v 2.4 July 2012 1/11 Table of Contents 1. Introduction 3 1.1. Important notes 3 1.2. Prerequisites 3 1.3. Installation files 4 2.
Keycloak SAML Client Adapter Reference Guide
Keycloak SAML Client Adapter Reference Guide SAML 2.0 Client Adapters 1.7.0.Final Preface... v 1. Overview... 1 2. General Adapter Config... 3 2.1. SP Element... 4 2.2. SP Keys and Key elements... 5 2.2.1.
ADMINISTERING ADOBE LIVECYCLE MOSAIC 9.5
ADMINISTERING ADOBE LIVECYCLE MOSAIC 9.5 Legal notices Copyright 2011 Adobe Systems Incorporated and its licensors. All rights reserved. Administering Adobe LiveCycle Mosaic 9.5 March 31, 2011 This administering
EVault Endpoint Protection 7.0 Single Sign-On Configuration
Revision: This manual has been provided for Version 7.0 (July 2014). Software Version: 7.0 2014 EVault Inc. EVault, A Seagate Company, makes no representations or warranties with respect to the contents
Copyright Pivotal Software Inc, 2013-2015 1 of 10
Table of Contents Table of Contents Getting Started with Pivotal Single Sign-On Adding Users to a Single Sign-On Service Plan Administering Pivotal Single Sign-On Choosing an Application Type 1 2 5 7 10
000-575. IBM Tivoli Federated Identity Manager V6.2.2 Implementation. Version: Demo. Page <<1/10>>
000-575 IBM Tivoli Federated Identity Manager V6.2.2 Implementation Version: Demo Page 1.What is the default file name of the IBM Tivoli Directory Integrator log? A. tdi.log B. ibmdi.log C. ibmdisrv.log
Single Sign-On Implementation Guide
Version 27.0: Spring 13 Single Sign-On Implementation Guide Last updated: February 1, 2013 Copyright 2000 2013 salesforce.com, inc. All rights reserved. Salesforce.com is a registered trademark of salesforce.com,
Connected Data. Connected Data requirements for SSO
Chapter 40 Configuring Connected Data The following is an overview of the steps required to configure the Connected Data Web application for single sign-on (SSO) via SAML. Connected Data offers both IdP-initiated
Copyright 2014 Jaspersoft Corporation. All rights reserved. Printed in the U.S.A. Jaspersoft, the Jaspersoft
5.6 Copyright 2014 Jaspersoft Corporation. All rights reserved. Printed in the U.S.A. Jaspersoft, the Jaspersoft logo, Jaspersoft ireport Designer, JasperReports Library, JasperReports Server, Jaspersoft
Crawl Proxy Installation and Configuration Guide
Crawl Proxy Installation and Configuration Guide Google Enterprise EMEA Google Search Appliance is able to natively crawl secure content coming from multiple sources using for instance the following main
Get Success in Passing Your Certification Exam at first attempt!
Get Success in Passing Your Certification Exam at first attempt! Exam : C2150-575 Title : IBM Tivoli Federated Identity Manager V6.2.2 Implementation Version : Demo 1.What is the default file name of the
New Features... 1 Installation... 3 Upgrade Changes... 3 Fixed Limitations... 4 Known Limitations... 5 Informatica Global Customer Support...
Informatica Corporation B2B Data Exchange Version 9.5.0 Release Notes June 2012 Copyright (c) 2006-2012 Informatica Corporation. All rights reserved. Contents New Features... 1 Installation... 3 Upgrade
Installation and Configuration Guide
Entrust Managed Services PKI Auto-enrollment Server 7.0 Installation and Configuration Guide Document issue: 1.0 Date of Issue: July 2009 Copyright 2009 Entrust. All rights reserved. Entrust is a trademark
SAML single sign-on configuration overview
Chapter 46 Configurin uring Drupal Configure the Drupal Web-SAML application profile in Cloud Manager to set up single sign-on via SAML with a Drupal-based web application. Configuration also specifies
SafeNet KMIP and Google Cloud Storage Integration Guide
SafeNet KMIP and Google Cloud Storage Integration Guide Documentation Version: 20130719 Table of Contents CHAPTER 1 GOOGLE CLOUD STORAGE................................. 2 Introduction...............................................................
Sophos Mobile Control Installation guide. Product version: 3.5
Sophos Mobile Control Installation guide Product version: 3.5 Document date: July 2013 Contents 1 Introduction...3 2 The Sophos Mobile Control server...4 3 Set up Sophos Mobile Control...10 4 External
