Cisco Spark Single Sign-On with SimpleSAML

Document created by Cisco Documentation Team on Jul 15, 2016Last modified by Cisco Documentation Team on Aug 29, 2017
Version 5Show Document
  • View in full screen mode
 

Single Sign-On and Cisco Spark

Single sign-on (SSO) is a session or user authentication process that permits a user to provide credentials to access one or more applications. The process authenticates users for all the applications that they are given rights to. It eliminates further prompts when users switch applications during a particular session.

The Security Assertion Markup Language (SAML 2.0) Federation Protocol is used to provide SSO authentication between the Cisco Collaboration Cloud platform and your identity provider (IdP).

Profiles

The Cisco Spark platform only supports the web browser SSO profile. In the web browser SSO profile, the Cisco Spark platform supports the following bindings:

 
  • SP initiated POST->POST binding 


     

  • SP initiated REDIRECT->POST binding

      


 
      

NameID Format

The SAML 2.0 Protocol supports a number of NameID formats for the purpose of communicating about a specific user. The Cisco Collaboration Cloud platform supports the following NameID formats.

  
  • urn:oasis:names:tc:SAML:2.0:nameid-format:transient
  • urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified
  • urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
 

In the metadata that you load from your IdP, the first entry is configured for use in the Cisco Spark Platform.

SingleLogout

The Cisco Collaboration Cloud supports the single logout profile. In the Cisco Spark or WebEx Meeting app, a user can sign out of the application, which will use the SAML single log out protocol to end the session and confirm that sign out with your IdP. Ensure your IdP is configured for SingleLogout.

Integrate Cisco Spark with SimpleSAML for Single Sign-On

 

Follow the tasks in this article to configure Single Sign-On (SSO) integration between Cisco Spark services and a deployment that uses SimpleSAML as an identity provider (IdP).

    

Set up this integration for users of Cisco Spark message, meet, and call. If your WebEx Meeting Center is integrated in Cisco Spark Control Hub, WebEx Meeting Center inherits the user management. If you can't access WebEx in this way, you must do a separate integration to enable SSO for Cisco WebEx.

  
Before You Begin 
For SSO and Cisco Spark services, IdPs must conform to the SAML 2.0 specification. In addition, IdPs must be configured in the following manner:
  •       

    Configure the IdP to use Forms Based authentication.

          

  •       
    Set the NameID Format attribute to one of the following:
    •          

      urn:oasis:names:tc:SAML:2.0:nameid-format:transient

                

      Configure a claim on the IdP to include the uid attribute name with a value mapped to the user's email address in the SAML Assertion.

               

    •          

      urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified

                

      Configure a claim on the IdP to include the uid attribute name with a value mapped to the user's email address in the SAML Assertion.

               

    •          

      urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

               

          
  

Download the Cisco Spark Metadata to your Local System

       
1    From the customer view in https://admin.ciscospark.com, go to Settings, and then scroll to Authentication.
2    Click Modify, click Integrate a 3rd-party identity provider. (Advanced), and then click Get Started.
3    Download the metadata file.  

The Cisco Spark metadata filename is idb-meta-<org-ID>-SP.xml.

  
4    Keep your Cisco Spark Control Hub session open in your browser.

Convert Metadata

         
1    Open the exported Cisco Spark metadata file in a text editor.
2    In your browser, open the simpleSAML home page and sign in with your administrator credentials.  

The home page location varies, but is typically similar to this example URL: https://yourcompany.yourdomain.com/simplesaml.

  
3    From the main page, click Federation.
4    Under tools, do an XML to Simple SAML XML convert.
5    Copy the Cisco Spark metadata from your text editor, and then paste it in to the XML convert field.
6    Click Parse.  

The converted metadata appears. You will add this data to the remote SP text file.

  

Create Remote Service Provider Metadata File

 

These steps are intended as an example. The metadata directory and IdP host will differ depending on your client setup.

  
Before You Begin 

Be aware of the attributes that you must pass and mapp accordingly by editing the metadata file saml20-idp-hosted.php file. (For example, uid, mail, email, and so on). See the example metadata:

   
  
 

'authproc' => array(

  

// Convert LDAP names to oids.

  

3 => array(

  

'class' => 'saml:AttributeNameID',

  

'attribute' => 'mail',

  

'Format' => 'urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified',

  

 

  

),

  

50 => array(

  

'class' => 'core:AttributeMap',

  

'attribute' => 'mail',

  

'mail' => array('uid', 'email', 'mail'),

  

'sn' => 'lastname',

  

'givenName' => 'firstname',

  

 

  

),

  

),

  
  
        
1    In the SimpleSAML configuration on the host, go to metadata directory.
2    Using a text editor, paste the parsed data at the end of saml20-sp-remote.php and save the file.
3    Return to the SimpleSAML front page, click Federation, and then show metadata for the identity provider.
4    Paste the data in to a new text file.
5    Save the updated file to your desktop with a meaningful name such as simplesaml-metadata.xml.

Import the IdP Metadata and Enable Single Sign-On After a Test

 

After you export the Cisco Spark metadata, configure your IdP, and download the IdP metadata to your local system, you are ready to import it into your Cisco Spark organization.

  
        
1    Go back to the browser or tab where you're signed in to the Cisco Spark Control Hub – Export Directory Metadata page, and then click Next.
2    On the Import Idp Metadata page, either drag and drop the IdP metadata file onto the page or use the file browser option to locate and upload the metadata file.

We recommend that you use require certificate signed by a certificate authority in Metadata (more secure) for service providers that use publicly signed and trusted certificates.

3    Click Next.
4    Select Test SSO Connection, and when a new browser tab opens, authenticate with the IdP by signing in.

A common cause of an authentication error is a problem with the credentials. Please check the username and password and try again.

A Cisco Spark or Webex error usually means an issue with the SSO setup. In this case, walk through the steps again, especially the steps where you copy and paste the Cisco Spark metadata into the IdP setup.

5    Return to the Cisco Spark Control Hub browser tab.
  • If the test was successful, select This test was successful. Enable Single Sign-On option and click Next.
  • If the test was unsuccessful, select This test was unsuccessful. Disable Single Sign-On option and click Next.
 

Attachments

    Outcomes