End to End Setup Guide Cognito Single sign On to WordPress | Cognito Login



If you want users to login to your WordPress site using their AWS cognito credentials, you can simply do it using our WP OAuth Client plugin. Once you configure the AWS cognito with WordPress plugin, you can allow users to SSO to your WordPress site using AWS cognito . Similarly, you can map your WordPress roles based on your AWS cognito attributes/groups. To know more about other features we provide in WP OAuth Client plugin, you can click here.



You can download OAuth Client plugin using the following link.





Download And Installation

  • Log into your WordPress instance as an admin.
  • Go to the WordPress Dashboard -> Plugins and click on Add New.
  • Seach for a WordPress OAuth Single Sign On plugin and click on Install Now.
  • Once installed click on Activate.

Step 1: Setup Amazon Cognito as OAuth Provider

  • First of all, go to Amazon Console and sign up/login in your account to Configure AWS Cognito.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO Login to Amazon Console
  • Search for Cognito in the AWS Services search bar as shown below.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO Search for AWS Cognito
  • Click on Mange User Pools button to see the list of your user pools.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO AWS Cognito User Pools
  • Click on Create a user pool to create a new user pool.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO Create New AWS Cognito Pool
  • Add a Pool Name and click on the Review Defaults button to continue.
  • OAuth/OpenID Amazon 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.
  • OAuth/OpenID Amazon 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.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO Create App Client
  • Click on Return to Pool Details to come back to your configuration.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO Configure AWS Cognito Pool
  • Click on Create Pool button to save your settings and create a user pool.
  • OAuth/OpenID Amazon 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.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO AWS Cognito App Details
  • 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.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO Configure AWS Cognito App Client
  • Click on Choose Domain Name option to set a domain name for your app.
  • OAuth/OpenID Amazon 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.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO Configure 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.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO AWS Cognito App 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.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO AWS Cognito App 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.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO AWS Cognito App New User Creation
  • Fill all the required details and click on Create user.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO AWS Cognito App Client Configuration
  • You can see the new user created.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO AWS Cognito App Client Configuration

    AWS Cognito Endpoints and Scope:


    Client ID : Click Here
    Client Secret : Click Here
    Scope: openid
    Authorize Endpoint: https://<cognito-app-domain>/oauth2/authorize
    Access Token Endpoint: https://<cognito-app-domain>/oauth2/token
    Get User Info Endpoint: https://<cognito-app-domain>/oauth2/userInfo
    Custom redirect URL after logout:[optional] https://<cognito-app-domain>/logout?client_id=<Client-ID>&logout_uri=<Sign out URL configured in Cognito Portal>

Step 2: Setup WordPress as OAuth Client

  • After Plugin is activated, go to the plugin and search for AWS Cognito. Select AWS Cognito from the OAuth Providers list.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO select Amazon Cognito as OAuth Provider
  • Go to Configure OAuth tab and configure App Name, Client ID, Client Secret from provided Endpoints.
  • openid is already filled but if it doesn't work then configure scope as User.Read and for fetching group info use scope is Directory.read.all.
  • Click on Save Settings to save the configuration.
  • OAuth/OpenID Amazon Cognito Single Sign On SSO save settings

Step 3: User Attribute Mapping.

  • User Attribute Mapping is mandatory for enabling users to successfully login into WordPress. We will be setting up user profile attributes for WordPress using below settings.
  • Finding user attributes

    • Go to Configure OAuth tab. Scroll down and click on Test Configuration.
    • OAuth/OpenID Amazon Cognito Single Sign On SSO test congifuration
    • You will see all the values returned by your OAuth Provider to WordPress in a table. If you don't see value for First Name, Last Name, Email or Username, make the required settings in your OAuth Provider to return this information.
    • OAuth/OpenID Amazon Cognito Single Sign On SSO test congifuration result
    • Once you see all the values in Test Configuration, go to Attribute / Role Mapping tab, select attributes from Username dropdown and click on Save.
    • OAuth/OpenID Amazon Cognito Single Sign On SSO attribute/role mapping

Step 4: Login Settings / Sign In Settings.

  • The settings in SSO Settings tab define the user experience for Single Sign On. To add a login widget on your WordPress page, you need to follow below steps.
  • Sign In Settings

    • Go to WordPress Left Panel > Appearances > Widgets.
    • Select miniOrange OAuth. Drag and drop to your favourite location and save.
    • wordpress oauth client plugin sso: login button setting
    • Open your WordPress page and you can see the login button there. You can test the SSO now.

Need Guidance?

Mail us on oauthsupport@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.