Jump to: navigation, search
Line 1: Line 1:
=SAML Authentication=
+
=SAML authentication=
 
__TOC__
 
__TOC__
Genesys Web Services supports Security Assertion Markup Language (SAML) for single sign-on (SSO) authentication.  
+
Web Services supports Security Assertion Markup Language (SAML) for single sign-on (SSO) authentication.  
  
 
==Configuring SAML==
 
==Configuring SAML==
To enable SAML, make the following configuration changes in the '''server-settings.yaml''' file on each of your Workspace Web Edition & Web Services nodes:<br/>
+
To enable SAML, make the following configuration changes in the '''server-settings.yaml''' file on each of your Web Services nodes:<br/>
  
 
'''Start'''
 
'''Start'''
Line 10: Line 10:
 
<li>Set the following options in the SSL and CA section:  
 
<li>Set the following options in the SSL and CA section:  
 
<ul>
 
<ul>
<li>{{#ppin:{{SectionTransclusion|HTCCConfigurationOptionsReference|caCertificate}}|caCertificate|||500|210}} &mdash; should point to a JKS key storage that includes the SAML encryption key. See [[SecuredConnectionsSAML#Generating_Security_Keys|Generating Security Keys]] for details.</li>
+
<li>[[HTCCConfigurationOptionsReference#caCertificate|caCertificate]] &mdash; should point to a JKS key storage that includes the SAML encryption key. See [[SecuredConnectionsSAML#Generating_security_keys|Generating security keys]] for details.</li>
<li>{{#ppin:{{SectionTransclusion|HTCCConfigurationOptionsReference|jksPassword}}|jksPassword|||500|200}} &mdash; should be the password for the '''caCertificate''' key storage.</li>
+
<li>[[HTCCConfigurationOptionsReference#jksPassword|jksPassword]] &mdash; should be the password for the '''caCertificate''' key storage.</li>
 
</ul>
 
</ul>
 
</li>
 
</li>
 
<li>Set the following option in the SAML section:
 
<li>Set the following option in the SAML section:
 
<ul>
 
<ul>
<li>{{#ppin:{{SectionTransclusion|HTCCConfigurationOptionsReference|samlSettings}}|samlSettings|||700|400}} &mdash; the following properties are mandatory:
+
<li>[[HTCCConfigurationOptionsReference#samlSettings|samlSettings]] &mdash; the following properties are mandatory:
 
<ul>
 
<ul>
 
<li>encryptionKeyName</li>
 
<li>encryptionKeyName</li>
Line 42: Line 42:
 
'''End'''
 
'''End'''
  
==Generating Security Keys==
+
==Generating security keys==
 
You can use the keytool utility that comes with the Java SDK to generate a JKS key store. Use the following command:
 
You can use the keytool utility that comes with the Java SDK to generate a JKS key store. Use the following command:
 
<source lang="text">
 
<source lang="text">
Line 53: Line 53:
 
</source>
 
</source>
  
 
+
==Next step==
==Next Step==
+
*[[Security|Back to Configuring security]]
*[[Security|Back to Configuring Security]]
 
  
  
 
[[Category:V:HTCC:8.5.2DRAFT]]
 
[[Category:V:HTCC:8.5.2DRAFT]]

Revision as of 16:55, December 9, 2015

SAML authentication

Web Services supports Security Assertion Markup Language (SAML) for single sign-on (SSO) authentication.

Configuring SAML

To enable SAML, make the following configuration changes in the server-settings.yaml file on each of your Web Services nodes:

Start

  1. Set the following options in the SSL and CA section:
  2. Set the following option in the SAML section:
    • samlSettings — the following properties are mandatory:
      • encryptionKeyName
      • signingKeyName
      • identityProviderMetadata
  3. Save the changes to the server-settings.yaml file. Your configuration should look something like this:
    # SSL and CA
    caCertificate: /Users/samluser/Documents/Keys/keystore.jks
    jksPassword: password
    
    # SAML
    samlSettings:
        serviceProviderEntityId: genesys.staging.htcc
        encryptionKeyName: client
        signingKeyName: client
        identityProviderMetadata: /Users/samluser/Documents/Metadata/idp-metadata.xml

End

Generating security keys

You can use the keytool utility that comes with the Java SDK to generate a JKS key store. Use the following command:

keytool -genkey -keystore <path_to_jks_file> -alias <key_name> -keypass <key_password> -storepass <store_password> -dname <distinguished_name>

If you already have a JKS key store, you can add a key to it by executing the command above with the same file name and the new key name and key password. For example:

keytool -genkey -keystore /opt/keystore.jks -alias encryption_key -keypass genesys -storepass genesys -dname "CN=HTCC, OU=R&D, O=Genesys, L=Daly City, S=California, C=US"

Next step

Comments or questions about this documentation? Contact us for support!