Introduction #
Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between parties, specifically between an identity provider (IdP) and a service provider (SP). It allows secure web domains to exchange user authentication and authorization data. Using SAML, an online service provider can contact a separate online identity provider to authenticate users who are trying to access secure content.
Here – Successfulchannels is the SP and Client is the IDP
Successful Channels (SP) initiated SSO: #
Below are the the List of SP Settings Field Values:
<clientname> – you will get the clientname from the URL as mentioned in the below screenshot. In below example – development is the clientname.
Meta Data URL: #
Endpoint URL: #
SSO Endpoint Identifier:
Preferred Binding URL: #
IDP initiated SSO #
While configuring an Identity Provider (IDP) for SAML integration with a Service Provider (Successfulchannels), you’ll need to provide specific below information to Successfulchannels Team.
- EntityId
- singleSignOnService
- singleLogoutService
- x509cert
Additional Parameters required from IDP #
Right now, 2 methods are exposed to access Successfulchannels through SAML.
(a) Partner Contact Interface
(b) CAM Interface
Parameters required to Access Partner Contact Interface #
Parameter | Type | Description | Example |
Required | Email address of Partner member | gary@example.com | |
primary_partner_id | Required | Name of partner primary ID | 222233sssddss |
user_id | Optional | The contact ID of the user | 789098AQ1 |
first_name | Required | Name of Partner First Name | Steve |
last_name | Required | Name of Partner Last Name | Johnson |
partner_type | Required | If Partner_type=”Vendor” – it will redirect to CAM interface. And if Partner Type=”Partner” – it will redirect to Partner Contact Interface | |
city | Optional | City of Partner Member | Newyork |
state | Optional | State of Partner Member | LA |
country | Optional | Country of Partner Member | USA |
zipcode | Optional | Zip code of Partner Member | 321901 |
phone | Optional | Phone Number of Partner Member | +1-9999999999 |
address | Optional | Address of Partner Member | #301 West Valley City |
title | Optional | Title of Partner Member | Test Title |
Parameters required to Access CAM Interface #
Parameter name | Type | Description | Example |
Required | Email address of CAM | gagan@example.com | |
user_id | Optional | The primary ID of CAM | if user_id is empty, we generate it randomly at our end |
first_name | Required | First Name of the CAM | Ben |
last_name | Required | Last Name of the CAM | Stock |
partner_type | Required | If partner_type=” Vendor” – it will redirect to the CAM interface. And if Partner Type=” Partner” – it will turn to Partner Contact Interface. | |
title | Optional | CAM Title | Test Title |
company | Optional | Cam Company Name | Test Company Name |
city | Optional | CAM City | Newyork |
state | Optional | CAM State | Washington |
phone | Optional | State | +1-9999999999 |
country | Optional | CAM Country Name | USA |
zipcode | Optional | CAM Zip Code | 98101 |
Error Codes for SAML #
CAM Error message:
1002 – CAM Name is Required.
1003 – Email ID is required or invalid.
1006 – Partner type is invalid.
Partner Member Error message:
1002 – Partner Member Name is Required.
1003 – Email ID is required or invalid.
1004 – Partner Primary ID is required.
1005 – Partner ID Doesn’t Exists.
1006 – Partner type is invalid.
Script to Resize the iFrame and iFrame Integration for SAML SSO #
<script type="text/javascript" src=https://cdnjs.cloudflare.com/ajax/libs/iframe-resizer/3.6.2/iframeResizer.js></script> <style>.iframecode {width: 100%;} </style> <iframe src="IDP initiated URL Provided by Client" scrolling="true" class="iframecode"/> <script type="text/javascript"> iFrameResize({ log : true, checkOrigin : false, inPageLinks : true, }); </script>