This page explains how to set up Squirro Single Sign-On with Active Directory Federation Services (ADFS).
Table of Contents
Install Dependencies
To set up SAML Single Sign-On in Squirro, the following dependencies must be installed:
xmlsec1
xmlsec1-openssl
These can be installed with yum:
sudo yum install xmlsec1 xmlsec1-openssl
Configure ADFS
This walk-through assumes ADFS 2.0. Adjust the process correspondingly for 3.0.
Relying Party Trust
- Open the AD FS Console and "Add Relying Party Trust"
- Enter data about the relying party manually
- For display name enter "Squirro"
- Choose the AD FS 2.0 profile
- Enable support for SAML 2.0 WebSSO protocol. The service URL is
https://SQUIRRO/sso/callback
(URL of your Squirro installation plus the path/sso/callback
) - For the relying party trust identifier enter
https://sso.squirro.com/o/saml2/entity
- In the last step confirm that you want to open the Edit Claim Rules dialog.
Claim Rules
- Choose the claim rule template "Send LDAP Attributes as Claims"
- Select the E-Mail-Address attribute and send it as the Name ID.
Export Federation Metadata
Download the FederationMetadata.xml
file. This can be downloaded from the ADFS server at https://ADFS_SERVER/FederationMetadata/2007-06/FederationMetadata.xml
.
Configure SAML Metadata
To configure SAML Single Sign-On with the federation metadata file, go to the Server
space in Squirro and in the navigation on the left select Single Sign-On (SAML)
.
In the setup screen that you now see, check the Enabled
checkbox and select the metadata XML file for upload. Then press Save Settings
.
Enable SSO
For security reasons, the final configuration needs to be done directly on the server. Log into the server using SSH or similar means and edit the file /etc/squirro/frontend.ini
. Then append the following lines at the end:
[security] sso_enabled = true sso_endpoint = http://localhost:81/studio/extauth_saml/extauth
Reduce HTTP Session
By default Squirro will keep user sessions for 30 days, surviving browser restarts as well. In a Single Sign-On environment, this should be changed to the session expiring once the user restarts the browser. This can be achieved by changing /etc/squirro/frontend.ini
and adding the following lines:
[frontend] session_permanent = false