SAML Single Sign-On into Joomla using JBoss Keycloak | JBoss Keycloak SSO | Login using JBoss Keycloak


Jboss Keycloak SAML Single sign-on (SSO) is an authentication method that enables Jboss Keycloak users to access multiple Joomla applications with one login and one set of credentials.

What is SSO ?


Single sign-on (SSO) is anauthenticationmethod that enables users to access multiple applications with one-click login and one set of credentials. For example, after users log in to your org, they can automatically access all apps from the App Launcher. When you set up SSO, you configure one system to trust another to authenticate users , eliminating users' need to log in to each system separately. The system that authenticates users is called an Identity provider. The system that trusts the identity provider for authentication is called the Service provider.

SAML allows exchanging of information betweenService ProviderandIdentity provider, SAML isintegration between SP and IDP. When a user tries to log in, your identity provider sends SAML assertions containing facts about the user to Identity Provider. Identity Provider receives the assertion, validates it against your Identity Provider configuration, and allows the user to access your org.


Our plugin is compatible with Joomla 4 as well as with all the SAML 2.0 compliant Identity Providers. Here we will go through a step-by-step guide to configure SAML SSO login between Joomla site and Jboss Keycloak by considering Jboss Keycloak as IdP (Identity Provider & Joomla as SP (Service Provider).

Download of Plugin



Configuration Support and Free Trial

If you want support in configuring the plugin, or to integrate Jboss Keycloak with Joomla, click on Free Configuration Setup button.

We provide a 7 day full feature trial wherein you can fully test out all the features of the plugin, click on Free Business Trial button.

Steps to Integrate Jboss Keycloak Single Sign-On (SSO) with Joomla SAML SP

1. Configure Jboss Keycloak as IdP

  • In your Keycloak admin console, select the realm that you want to use.
  • Keycloak SAML Single Sign-On into Joomla | Login using Jboss keycloak , Joomla Jboss Keycloak configuration
  • Click on the Clients from the left navigation bar.
  • Click on create button at the top right corner and enter the following values to create a new client/application.
    Client ID SP-EntityID/Issuer from Service Provider Metadata
    Client protocol SAML
    Client SAML Endpoint (optional) The ACS (Assertion Consumer Service) URL from Service Provider Metadata
  • Jboss Keycloak SSO , Joomla Jboss Keycloak new client application Keycloak SAML Single Sign-On into Joomla | Login using Jboss keycloak , SingleSignOnService, Joomla Jboss Keycloak new client/application
  • Click on Save.
  • Configure the following:
    Client ID The SP-EntityID / Issuer from Service Provider Metadata
    NameProvide a name for this client (Eg. Joomla)
    Description (optional)Provide a description
    EnabledON
    Consent RequiredOFF
    Client ProtocolSAML
    Include AuthnStatementNO
    Sign DocumentsNO
    Optimize Redirect signing key lookupOFF
    Sign AssertionsNO
    Signature AlgorithmRSA_SHA256
    Encrypt AssertionOFF
    Client Signature RequiredOFF
    Client Signature RequiredEXCLUSIVE
    Force Name ID FormatNO
    Name ID FormatEmail
    Root URLLeave empty or Base URL of Service Provider
    Valid Redirect URIsThe ACS (Assertion Consumer Service) URL from Service Provider Metadata
  • Under Fine Grain SAML Endpoint Configuration, configure the following:
    Assertion Consumer Service POST Binding URLThe ACS (Assertion Consumer Service) URL from Service Provider Metadata
    Logout Service Redirect Binding URLThe Single Logout URL from Service Provider Metadata
  • Click on Save.

keycloak, Joomla Jboss Keycloak Saml Endpoint Add Mappers

  • Add the following attributes in the Mappers tab.
  • Click on Add Built-in and add the following option.
  • Joomla Jboss Keycloak Mappers tab Keycloak SSO

miniorange  Add User

  • Click on the Users from the left nav bar.
  • Add a new user/view all users.
  • Keycloak SAML Single Sign-On into Joomla | Login using Jboss keycloak , single-sign-on-sso,Joomla Jboss Keycloak user tab
  • Enter the username, valid email address and check on User Enabled.
  • Keycloak SAML Single Sign-On into Joomla | Login using Jboss keycloak , single-sign-on-sso,Joomla Jboss Keycloak User Enabled
  • Click on Save.
  • Click on the Realm Settings from the left nav bar and open SAML 2.0 Identity Provider Metadata.
  • keycloak single-sign-on-sso,Jboss keycloak Realm Setting

    OR

  • Go to, https://<YOUR_DOMAIN>/auth/realms/{YOUR_REALM}/protocol/saml/descriptor.These will open an XML in the browser.
  •  Keycloak SAML SSO Single Sign On into Joomla with Keycloak as IDP , Jboss keycloak XML browser
  • In miniOrange’s Joomla SAML SP plugin, go to Service Provider Setup Tab. Enter the following values:
  • Identity Provider Name Provide an Identity Provider name (For Example: Keycloak).
    IdP Entity ID or IssuerSearch for the entityID from IDP Metadata.Enter the Value in the Entity ID textbox.
    SAML Login URLSearch for SingleSignOnService Binding ”urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect” from IDP Metadata.Enter the location value in the SAML Login URL textbox.
    SAML Logout URL (Optional)Search for SingleLogoutService Binding”urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect” from IDP Metadata.Enter the location value in the SAML Login URL textbox.
    X.509 Certificate (Optional)Search for the X.509 Certificate from IDP Metadata.Enter the tag value in Certificate textbox.
    Enable login with SAMLChecked
    Signed SSO and SLO RequestsUnchecked

2. Configure Joomla as Service Provider


  • In Joomla SAML plugin, go to Service Provider Setup Tab. There are three ways to configure the plugin:

      SAML SSO Single-Sign-On By Metadata URL :

      • Click on Upload IDP Metadata.
      • Joomla Single Sign On SSO SAML SP, Upload Metadata
      • Enter Metadata URL (Copy from IDP app) and click on Fetch Metadata.
      • Joomla Single Sign On SSO SAML SP, Upload Metadata URL

      SAML SSO Single-Sign-On By Uploading Metadata File:

      • Click on Upload IDP Metadata.
      • Choose metadata file and click on Upload.
      • Joomla Single Sign On SSO SAML SP, Upload Metadata file

      SAML SSO Single-Sign-On Manual Configuration :

      • Copy SAML Entity ID, SAML Single-Sign-On Endpoint URL and x.509 certificate from Federation Metadata document and paste it in IdP Entity ID or Issuer, Single Sign-on Service URL, x.509 Certificate fields respectively in the plugin.
      • IdP Entity ID or Issuer SAML Entity ID in the Federation Metadata document
        Single Sign-On Service URL SAML Single-Sign-On Endpoint URL in the Federation Metadata document
        X.509 Certificate x.509 Certificate in the Federation Metadata document

      SAML SSO Single-Sign-On Add a button on your site login page with the following URL:

        Joomla Single Sign On SSO SAML SP, Signin Settings
  • In Joomla SAML plugin, go to Service Provider Setup Tab. There are three ways to configure the plugin:

      Azure_As_Idp By Metadata URL :

      • Click on Upload IDP Metadata.
      • Joomla Single Sign On SSO SAML SP, Upload Metadata
      • Enter Metadata URL (Copy from IDP app) and click on Fetch Metadata.
      • Joomla Single Sign On SSO SAML SP, Upload Metadata URL

      Azure_As_Idp By Uploading Metadata File:

      • Click on Upload IDP Metadata.
      • Choose metadata file and click on Upload.
      • Joomla Single Sign On SSO SAML SP, Upload Metadata file

      Azure_As_Idp Manual Configuration :

      • Copy SAML Entity ID, SAML Single-Sign-On Endpoint URL and x.509 certificate from Federation Metadata document and paste it in IdP Entity ID or Issuer, Single Sign-on Service URL, x.509 Certificate fields respectively in the plugin.
      • IdP Entity ID or Issuer SAML Entity ID in the Federation Metadata document
        Single Sign-On Service URL SAML Single-Sign-On Endpoint URL in the Federation Metadata document
        X.509 Certificate x.509 Certificate in the Federation Metadata document

      Azure_As_Idp Add a button on your site login page with the following URL:

      Joomla Single Sign On SSO SAML SP, Signin Settings

3. Attribute Mapping (It is Optional to fill this). This is Premium feature.

  • Attributes are user details that are stored in your Identity Provider.
  • Attribute Mapping helps you to get user attributes from your Identity Provider (IdP) and map them to Joomla user attributes like firstname, lastname etc.
  • While auto registering the users in your Joomla site these attributes will automatically get mapped to your Joomla user details.
  • In Joomla SAML plugin, go to Attribute Mapping tab and fill in all the fields.
    Username: Name of the username attribute from IdP (Keep NameID by default)
    Email: Name of the email attribute from IdP (Keep NameID by default)
    Group/Role: Name of the Role attribute from Identity Provider(IdP)
  • You can check the Test Configuration Results under Service Provider Setup tab to get a better idea of which values to map here.

4. Group Mapping (It is Optional to fill this). This is Premium feature.

  • Role mapping helps you to assign specific roles to users of a certain group in your Identity Provider (IdP).
  • While auto registering, the users are assigned roles based on the group they are mapped to.

5. Redirection & SSO Links

  • Go to Login Settings tab. There are multiple features availabe in this tab like Auto redirect the user to Identity Provider and Enable Backed Login for Super Users. To use these features, click on the respective checkboxes.
  • Joomla Single Sign On SSO SAML SP Signin Settings

    You have successfully completed your miniOrange SAML 2.0 SP configurations. Still, if you are facing any difficulty please mail us on joomlasupport@xecurify.com .

Recommended Add-Ons

User Sync SCIM Provisioning

Synchronize users, groups & directory with SCIM & REST APIs for Server.




Know More

Page Restriction

Page Restriction plugin restricts Joomla pages (Articles) based on User Roles and User's Login Status.



Know More

Integrate with Community Builder Customer

Using this Add-on you would be mapping the user details into the CB's comprofilers fields table which contains the values.


Know More

Additional Resources.

Miniorange Joomla SAML Single sign-on(web SSO) supports multiple known IDPs like WSO2, Azure AD, Salesforce,
Shibboleth, Onelogin, Okta, SimpleSamlPhp, Google apps, Bitium, OpenAM, miniorange IDP, Centrify and many more.

Business Trial

If you want Business Trial for FREE Click Here

If you don't find what you are looking for, please contact us at joomlasupport@xecurify.com or call us at +1 978 658 9387.

Hello there!

Need Help? We are right here!

support
Contact miniOrange Support
success

Thanks for your inquiry.

If you dont hear from us within 24 hours, please feel free to send a follow up email to info@xecurify.com