SAML Single Sign-On (SSO) into RocketChat using Joomla IDP Plugin
Overview
Single Sign-On in RocketChat using Joomla IDP allows users to log in to Frontline Education using Joomla by configuring RocketChat as a Service Provider (SP) and Joomla as a SAML Identity Provider (IDP). This guide will take you through a step-by-step process to configure SSO between the two platforms.
What is RocketChat?
RocketChat is a cloud-based business intelligence (BI) and dashboard platform that allows organizations to visualize
and monitor key performance indicators (KPIs) and metrics in real-time. It enables users to connect to various data
sources, create dynamic dashboards, and generate visual reports, providing insights into business performance and
facilitating data-driven decision-making.
Install Joomla SAML IDP Plugin
- Login into your Joomla site’s Administrator console.
- From left toggle menu, click on System, then under Install section click on Extensions.
- Now click on Or Browse for file button to locate and install the plugin file downloaded earlier.
- Installation of plugin is successful. Now click on Start Using miniOrange SAML IDP Plugin to configure miniOrange Joomla IDP plugin.
- Go to the miniOrange Joomla IDP plugin, navigate to the Identity Provider tab.
- Here, you can find the Identity Provider Metadata XML URL/File or endpoints like IDP Entity ID, SAML Login URL, SAML Logout URL (Premium Feature), and Certificate for SP configuration. Download the XML Metadata by clicking on the button as shown below.
Configuration Steps
In this setup, Joomla serves as the repository for storing users i.e. it will act as the IDP while RocketChat is where users will log in using their credentials from Joomla where Joomla SAML IDP SSO Plugin will be installed.
Step 1: Configure RocketChat as SP (Service Provider)
- Open a new browser tab or window, Log in to your RocketChat account as Account Admin.
- Click on the left corner. Select Administration.
- Search for SAML under Administration tab.
- Enter the information into the corresponding fields.
Custom Provider | <name-of-your-app> |
Custom Entry Point | Enter SAML Login URL from the Identity Provider tab of the Joomla plugin. |
IDP SLO Redirect URL | Enter SAML logout URL from the Identity Provider tab of the Joomla plugin. |
Custom Issuer | https://<your-rocketchat-url>/_saml/metadata/<name-of-your-app> |
Public Cert Contents | (a) Open the Public Cert Contents dropdown (b) Download the Certificate from IDP Metadata. Open it in notepad. Copy and paste the content here. |
Signature Validation Type | Validate Either Signature |
User Data Field Map | Open the User Data Field Map dropdown and enter the following attributes: {"username":"username", "email":"email", "name": "cn"} |
Note: Custom Provider = <name of your app> e.g. my-app
- Once this is done, click on Enable and Save Changes
Step 2: Configure Joomla as IDP (Identity Provider)
- Now go to Components -> miniOrange Joomla IDP -> Service Provider.
- Navigate to the Service Provider tab and complete the fields for Service Provider Name, SP Entity ID or Issuer, ACS URL, and NameID Format. Refer to this step to get Service Provider details. Fill in the other fields according to your requirements. Click on Save.
Enter the following values:
Service Provider Name | Choose appropriate name according to your choice |
SP Entity ID or Issuer | Service Provider Entity ID |
ACS URL | SP Assertion Consumer Service URL |
X.509 Certificate (optional) [For Signed Request] | Paste certificate value you copied from the Metadata file |
NameID Format | Select urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress |
Assertion Signed | Checked |
- Now click on Advance Mapping tab. Select the NameID Attribute and then click on Save Button.
- You have successfully completed your miniOrange Joomla SAML 2.0 IDP configurations.
Step 3: Attribute Mapping - Premium Feature
- In the miniOrange Joomla IDP plugin, navigate to the Advance Mapping tab.
- Here, you can configure Custom attribute mapping and also add additional User Attributes.
- You have successfully configured Single Sign-On with RocketChat as Service Provider and Joomla as Identity Provider. If you require any further support or, if you are facing any difficulty please mail us on joomlasupport@xecurify.com