Search Results :

×

Magento Keycloak SAML SSO (Single Sign-On) | Magento Keycloak SSO | Login using Keycloak in Magento

Magento Keycloak Single Sign-On (SSO) login for Magento [Magento Keycloak SSO] can be achieved by using our Magento SAML SP Single Sign-On (SSO) extension. Our SSO solution will make Magento SAML 2.0 compliant Service Provider establishing trust between the Magento site and Keycloak to securely authenticate and login users to the Magento site using Keycloak. Our Magento Single Sign-On (SSO) solution helps to secure Magento sites behind the SSO login so that users are authenticated using their Keycloak login credentials. Seamless support for advanced SSO features like Attribute / Custom Mapping, Role Mapping etc. Here we will go through a guide to configure SAML Single Sign-On SSO login between Magento site and Keycloak by considering Keycloak as IdP (Identity Provider) and Magento as SP (Service Provider). Our Magento Keycloak SSO extension provides unlimited user authentications from Keycloak. To know more about other features we provide in you Magento Keycloak SAML Single Sign-On (SSO) extension, you can click here.

Installation using Composer:

  • Purchase the miniOrange SAML Single Sign On – SAML SSO Login extension from magento marketplace.
  • Go to My profile -> My Purchases
  • Please ensure you are using correct access keys (My Profile - Access Keys)
  • Paste the access keys in your auth.json file inside your project
  • Use the below command to add the extension to your project.
    "composer require miniorange_inc/saml-sp-single-sign-on"
  • You can see the module name and list of versions in the selector below the extension module name.
  • Run the following commands on command prompt to enable the extension.
  • php bin/magento setup:di:compile
    php bin/magento setup:upgrade

Manual Installation:

  • Download the miniOrange SAML Single Sign On – SAML SSO Login extension zip from here.
  • Unzip all contents of the zip inside the MiniOrange/SP directory.
  • {Root Directory of Magento} app code MiniOrange SP
  • Run the following commands on command prompt to enable the extension
  • php bin/magento setup:di:compile
    php bin/magento setup:upgrade

Select the version of Keycloak that you are using

Configure Keycloak as IdP

  • In the miniOrange Magento SAML SSO extension, navigate to Identity Providers tab. Here, you can find the SP metadata such as SP Entity ID and ACS (AssertionConsumerService) URL which are required to configure the keycloak as IdP (Identity Provider).
Magento Keycloak Login | Magento Saml Upload Metadata

  • In your Keycloak Admin console, select the realm that you want to use.
  • Click on Clients from the left menu and then click on Create button to create a new client/application.
Magento Keycloak Single Sign-On | Creating an APP

  • Enter SP-EntityID / Issuer as the Client ID from the "Service Provider Metadata" Tab and select SAML as the Client Protocol.
Keycloak Magento SSO | Add Client

  • Now click on Save.
  • Configure Keycloak by providing the required details:
Client ID The SP-EntityID / Issuer from the extension's Identity Providers tab
Name Provide a name for this client
Description Provide a description
Client Signature Required OFF
Force POST Binding OFF
Force Name ID Format OFF
Name ID Format Email
Root URL Leave empty or Provide Base URL from Service Provider Metadata tab
Valid Redirect URIs The ACS (Assertion Consumer Service) URL from the from the extension's Identity Providers tab
Magento Keycloak Single Sign-On | Settings

Magento Keycloak Login | Settings

  • Under Fine Grain SAML Endpoint Configuration, Enter the following details:
Assertion Consumer Service POST Binding URL The ACS (Assertion Consumer Service) URL from the extension's Identity Providers tab
Logout Service Redirect Binding URL (Optional) The Single Logout URL from the extension's Identity Providers tab
Magento Keycloak Single Sign-On | SAML Endpoint Configuration

  • Click on Save.
  • In the miniOrange Magento SAML SSO extension, navigate to Identity Providers tab. Here, you can find the SP metadata such as SP Entity ID and ACS (AssertionConsumerService) URL which are required to configure the keycloak as IdP (Identity Provider).
Magento Keycloak Login | Magento Saml Upload Metadata

  • In your Keycloak Admin console, select the realm that you want to use.
  • Click on Clients from the left menu and then click on Create Client button to create a new client/application.
Keycloak Magento SSO | Creating an APP

  • Select SAML as Client type, Enter SP-EntityID / Issuer as the Client ID from the "Service Provider Metadata" Tab,Enter Name of your application and enter Description.
Keycloak Magento SSO | Add Client

  • Now click on Save.
  • Configure Keycloak by providing the required details:
Client ID The SP-EntityID / Issuer from the extension's Identity Providers tab
Name Provide a name for this client
Description Provide a description
Client Signature Required OFF
Force POST Binding OFF
Force Name ID Format OFF
Name ID Format Email
Root URL Leave empty or Provide Base URL from Service Provider Metadata tab
Valid Redirect URIs The ACS (Assertion Consumer Service) URL from the extension's Identity Providers tab
Magento Keycloak Single Sign-On | Keycloak Login - Settings

Keycloak Magento SSO | Keycloak Login - Settings

Magento Keycloak Single Sign-On | Keycloak Login - Settings

  • Now click on Save.
  • In Advanced tab,under Fine Grain SAML Endpoint Configuration, Enter the following details:
Assertion Consumer Service POST Binding URL The ACS (Assertion Consumer Service) URL from the extension's Identity Providers tab
Logout Service Redirect Binding URL (Optional) The Single Logout URL from the extension's Identity Providers tab
Magento Keycloak Login | Login SAML Endpoint Configuration

  • Click on Save.
  • In the miniOrange Magento SAML SSO extension, navigate to Identity Providers tab. Here, you can find the SP metadata such as SP Entity ID and ACS (AssertionConsumerService) URL which are required to configure the keycloak as IdP (Identity Provider).
Magento Keycloak Login | Magento Saml Upload Metadata

  • In your Keycloak Admin console, select the realm that you want to use.
  • Click on Clients from the left menu and then click on Create Client button to create a new client/application.
Keycloak Magento SSO | Creating an APP / Client

  • Select SAML as Client type, Enter SP-EntityID / Issuer as the Client ID from the Service Provider Metadata tab, enter Name of your application and enter Description.
Keycloak Magento SSO | Add Client in Keycloak IDP

  • Click on the Next button.
  • Provide the details as mentioned below:
Root URL Leave empty or provide Base URL from Service Provider Metadata tab
Valid Redirect URIs The ACS (Assertion Consumer Service) URL from the extension's Identity Providers tab
  • Click on Save button.
Magento Keycloak Single Sign-On | Provide details in Keycloak IDP

  • In the Settings tab under SAML capabilities section, configure Keycloak by providing the required details:
Force POST Binding OFF
Force Name ID Format OFF
Name ID Format Email
Keycloak Magento SSO | Keycloak Login - Settings tab configuration

  • In the Keys tab, disable the Client signature required toggle.
Keycloak Magento SSO | Disable Client signature required

  • Click on the Save button.
  • In Advanced tab, under Fine Grain SAML Endpoint Configuration, enter the following details:
Assertion Consumer Service POST Binding URL The ACS (Assertion Consumer Service) URL from the extension's Identity Providers tab
Logout Service Redirect Binding URL (Optional) The Single Logout URL from the extension's Identity Providers tab
Keycloak Magento SSO | Advanced tab configuration

  • Click on Save button.

Add Mappers

  • Navigate to Mappers tab and click on Add Builtin button.
Keycloak Magento SSO | Mappers Tab - Salesforce SSO Login with SAML / OAuth - Magento SAML upload metadata

  • Select the checkboxes of X500 givenName, X500 surname and X500 email attributes.
Magento Keycloak Login | Add built-in protocol mapper

  • Click on Add Selected button. You will see the mappings that are added below.
Magento Keycloak Single Sign-On |  Add Selected

  • In Client scopes tab,click on your application.
Keycloak Magento SSO | click on application

  • Click on Add predefined mapper.
Magento Keycloak Single Sign-On | Add predefined mapper

  • Select the checkboxes of X500 givenName, X500 surname and X500 email attributes.
Keycloak Magento SSO | select checkboxes

  • Click on Add button.
  • You will see the mappings that are added below.
Magento Keycloak Single Sign-On | mappings

  • In the Client scopes tab, click on your application.
Keycloak Magento SSO | Client scopes

  • Click on Add predefined mapper.
Keycloak Magento SSO | Add predefined mapper

  • Select the checkboxes of X500 givenName, X500 surname and X500 email attributes.
Keycloak Magento SSO | Select the checkboxes

  • Click on the Add button.
  • You will see the mappings that are added below.
Keycloak Magento SSO | See the mappings

Download setup file

  • Navigate to Realm Settings, click on SAML 2.0 Identity Provider Metadata mentioned as Endpoints in the General Tab.
Keycloak Magento SSO | configure Settings

  • Note the URL and keep it handy. That will provide you with the Endpoints required to configure the extension.
  • Navigate to Realm Settings, click on SAML 2.0 Identity Provider Metadata mentioned as Endpoints in the General Tab.
Magento Keycloak Login | configure settings

  • Note the URL and keep it handy. That will provide you with the Endpoints required to configure the extension.
  • Navigate to Realm Settings, click on SAML 2.0 Identity Provider Metadata mentioned as Endpoints in the General tab.
Magento Keycloak Login | Realm settings endpoints

  • Note the URL and keep it handy. That will provide you with the Endpoints required to configure the extension.


  • 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
  • Click on Save button to save all your settings.
 Magento SSO -  Single Sign-On(SSO) Login in Magento - federation metadata

  • To check if your Magento as SP is configured correctly, click the Test Configuration button.
 Magento SSO -  Single Sign-On(SSO) Login in Magento - federation metadata

  • Navigate to Multisite Settings tab. Here you can all the subsites under your Magento Installation where you wish to enable the SSO. You can check the checkbox against all the subsites and click on save.
Magento 2 SSO  Single Sign-on (SSO) Admin Customer SSO

  • Navigate to Sign-in Settings tab. Here you find the option the enable the login link on Admin*/Customer Login Page (*Admin SSO is available in the premium versions)
Magento 2 SSO  Single Sign-on (SSO) Admin Customer SSO

  • You can automatically create Admin and Customer users during SSO if they don't already exist. Simply enable the corresponding checkbox to activate.
Magento 2 SSO  Single Sign-on (SSO) Admin Customer SSO

  • If you want to initate SSO from any page you can also use the SSO link provided in the extension.
Magento SSO using SSO link Magento 2 SSO

  • The Premium extension also provides you the the feature to auto redirect your user to the IdP Login Page if the user is not already logged in.
Magento 2 OAuth auto redirect to idp

  • Go to customer login page and you will see the SSO button on your frontend. Click on the button and test the SSO.
Magento 2 OAuth SSO customer SSO

  • You will be sucessfully logged in into Magento.
magento SSO magento 2 OAuth client SSO Admin SSO

  • Visit your admin login page and you will see the SSO button on your admin page. Click on the button to initate SSO as an admin.
Magento 2 Admin SSO login button

  • After sucessfully logged into magento as admin you will be redirect to magento backend dashboard.
Magento 2 Admin SSO admin dashboard

  • Navigate to Sign-in Settings tab. Here you find the option the enable the SSO for your Headless Magento Store.
  • Paste your Frontend Post URL in the given field. You should enter your frontend store URL here.
Magento 2 SSO  Single Sign-on (SSO) Admin Customer SSO

  • 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 Magento user attributes like firstname, lastname etc.
  • While auto registering the users in your Magento site these attributes will automatically get mapped to your Magento user details.
  • Only NameID can be mapped to Magento's Email and Username characteristics with the free plugin. Multiple user attributes from the IdP, on the other hand, can be mapped to Magento attributes in the premium version of the plugin. You can map custom attributes that you've added to your IdP in addition to the default attributes.
  • When a user performs SSO, the NameID value sent by the IdP will get mapped to the email and the username of the Magento user.
 Magento SSO -  Single Sign-On(SSO) Login in Magento - attribute mapping

    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.
  • In the Enter Attribute Name field enter the Attribute Name you wish to map against the attribute you are receiving from your Identity Provider.
  • Click on Add button
  • Now, Enter the attribute name your are receiving from your Identity Provider in the provided field.
  • Click on save button for saving the configuration.
  • You can also delete the configuration by entering the name in attribute name field and then click on delete button.
Magento 2 SAML SSO custom attribute mapping

  • You can specify a default role in the free plugin that will be allocated to all non-admin users when they conduct SSO.
  • Go to Attribute/Role mapping tab and navigate to Role Mapping section.
  • Select the Default Role and click on the Save button.
 Magento SSO - Login in Magento - role mapping

Please reach out to us at magentosupport@xecurify.com, and our team will assist you with setting up the Magento OAuth Server Extension. Our team will help you to select the best suitable solution/plan as per your requirement.

ADFS_sso ×
Hello there!

Need Help? We are right here!

support