OAuth / OpenID Connect Single Sign-On (SSO) into Joomla using AWS Cognito | AWS Cognito SSO Login


Joomla OAuth & OpenID Connect Single Sign-On (SSO) plugin enables secure login into Joomla using AWS Cognito as OAuth and OpenID Connect provider. You can also configure the plugin using different Oauth providers such as Azure B2C, Office 365, and other custom providers. It supports advanced Single Sign-On (SSO) features such as user profile Attribute mapping, Role mapping, multi-tenant login, etc. Here we will go through a guide to configure SSO between Joomla and AWS Cognito. By the end of this guide, users should be able to login to Joomla from AWS Cognito.

Click here to know more about other features we provide in Joomla OAuth Single Sign-On ( OAuth & OpenID Connect Client ) plugin

Pre-requisites : Download And Installation


  • Log into your Joomla instance as an admin.
  • Go to the Joomla Dashboard -> Extensions -> Manage and click on Install.
  • Seach for a Joomla OAuth Client plugin and click on Install Now.

Steps to configure AWS Cognito Single Sign-On (SSO) Login into Joomla

1. Setup AWS (Amazon) Cognito as OAuth Provider

  • First of all, go to Amazon Console and sign up/login in your account to Configure AWS Cognito.
  • Joomla AWS Cognito Single Sign-On (SSO) - Login to Amazon Console
  • Search for Cognito in the AWS Services search bar as shown below.
  • Joomla AWS Cognito Single Sign-On (SSO) - Search for AWS Cognito
  • Click on Mange User Pools button to see the list of your user pools.
  • Joomla AWS Cognito Single Sign-On (SSO) - AWS Cognito User Pools
  • Click on Create a user pool to create a new user pool.
  • Joomla AWS Cognito Single Sign-On (SSO) - Create New AWS Cognito Pool
  • Add a Pool Name and click on the Review Defaults button to continue.
  • Joomla AWS Cognito Single Sign-On (SSO) - Name your AWS Cognito User Pool
  • Scroll down and click on the Add App Client option in front of App Clients.
  • Joomla AWS Cognito Single Sign-On (SSO) - AWS Cognito App Client
  • Click on Add an App Client. Enter an App Client Name and click on Create app client to create an App client.
  • Joomla AWS Cognito Single Sign-On (SSO) - Create App Client
  • Click on Return to Pool Details to come back to your configuration.
  • Joomla AWS Cognito Single Sign-On (SSO) - AWS Cognito Pool
  • Click on Create Pool button to save your settings and create a user pool.
  • Joomla AWS Cognito Single Sign-On (SSO) - Save AWS Cognito Pool
  • In the navigation bar present on the left side, click on the App Client Settings option under the App Integration menu.
  • Joomla AWS Cognito Single Sign-On (SSO) - AWS Cognito App Details
  • Enable Identity provider as Cognito user pool and enter your Callback/Redirect URL which you will get from your miniOrange plugin present on your Client side under the CallBack URLs text-field. Select Authorization code grant checkbox under the Allowed OAuth Flows and also select openid and profile checkboxes under the Allowed OAuth Scopes option (Please refer to the image below). Click on the Save Changes button to save your configurations.
  • Joomla AWS Cognito Single Sign-On (SSO) - AWS Cognito App Client
  • Click on Choose Domain Name option to set a domain name for your app.
  • Joomla AWS Cognito Single Sign-On (SSO) - AWS Cognito Domain Names
  • Enter your Domain Name under the Domain Prefix text-field and click on the Save Changes button to save your domain name.
  • Joomla AWS Cognito Single Sign-On (SSO) - AWS Cognito Domain Name
  • Click on App Clients option under the General Settings menu in the left side navigation bar. Then, click on the Show Details button to see your App details like Client ID, Client secret etc.
  • Joomla AWS Cognito Single Sign-On (SSO) - Client Details
  • Copy the Client App ID and Client App Secret text field values and save them under your miniOrange plugin present on the client side under the Client Id and the Client Secret text fields respectively.
  • Joomla AWS Cognito Single Sign-On (SSO) - Client Configuration
  • Click on Users and groups option under the General Settings menu in the left side navigation bar. Then, click on the Create user button to add a new user.
  • Joomla AWS Cognito Single Sign-On (SSO) - App New User Creation
  • Fill all the required details and click on Create user.
  • Joomla AWS Cognito Single Sign-On (SSO) - Client Configuration
  • You can see the new user created.
  • Joomla AWS Cognito Single Sign-On (SSO) - App Client Configuration

You have successfully configured AWS Cognito as OAuth Provider for for achieving AWS Cognito Single Sign-On (SSO) with Joomla for user integration.


2. Setup Joomla as OAuth Client

  • Download the zip file for the miniOrange OAuth Client plugin for Joomla from the link here.
  • Joomla AWS Cognito Single Sign-On (SSO) - App Client Configuration
  • Login into your Joomla site’s administrator console.
  • Go to Extension Manage Install in the top navigation bar to install the plugin.
  • Joomla AWS Cognito Single Sign-On (SSO) - App Client Configuration
  • Upload the downloaded zip file to install the OAuth Client plugin.
  • Joomla AWS Cognito Single Sign-On (SSO) - App Client Configuration
  • Navigate to Extensions Manage Manage and search for miniorange in the Search bar provided to see the list of the components.
  • Go to Components MiniOrange OAuth Client Configure OAuth tab from the top navigation bar to go to the configuration page of the plugin.
  • Joomla AWS Cognito Single Sign-On (SSO) - App Client Configuration
  • Select your OAuth Provider from the Select Application dropdown. In case your OAuth Provider is not listed in the drop down, please select Custom OAuth Provider to continue.
  • Joomla AWS Cognito Single Sign-On (SSO) - App Client Configuration Joomla AWS Cognito Single Sign-On (SSO) - App Client Configuration
  • Fill in the details you received from your OAuth Provider.
  • Copy the Redirect/Callback URL given in the plugin and click on the Save Settings button to save details in your OAuth Provider.
  • Click on the Test Configuration button and copy the email and name attributes and save these attributes in Email Attribute and Name Attribute text field respectively. Now click on the Save Attribute Mapping button to save your configurations.
  • Joomla AWS Cognito Single Sign-On (SSO) - App Client Configuration Joomla AWS Cognito Single Sign-On (SSO) - App Client Configuration
  • Use the Login URL to perform the SSO of your pre-configured OAuth/OpenID Connect Provider, (After completing test configuration please copy the Login URL and Add a button on your site login page).
  • Joomla OAuth Client - Login URL
  • Now logout and go to your Joomla site's pages where you have added this link. You will see a login link where you placed that button. Click on this button to perform SSO.
  • Congratulations, you have successfully configured the miniOrange OAuth Client plugin with your desired OAuth Provider.
  • Click on the Upgrade Plans tab to check out our complete list of features and various licensing plans. OR you can click hereto check features and licensing plans
  • If you want to purchase any of the paid version of the plugin, you have to register/login with us in Account Setup tab. OR you can register/login Here
  • In case, you are facing some issue or have any question in mind, you can reach out to us by sending us your query through the Support button in the plugin or by sending us a mail at joomlasupport@xecurify.com.

You have successfully configured Joomla as OAuth Client for achieving Joomla AWS Cognito Single Sign-On (SSO) with Joomla for user authentication.


In this Guide, you have successfully configured Joomla AWS Cognito Single Sign-On (SSO) by configuring AWS Cognito as OAuth Provider and Joomla as OAuth Client using our Joomla OAuth Client plugin.This solution ensures that you are ready to roll out secure access to your Joomla site using AWS Cognito login credentials within minutes.


Additional Resources


Mail us on joomlasupport@xecurify.com for quick guidance(via email/meeting) on your requirement and our team will help you to select the best suitable solution/plan as per your requirement.

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