Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents


Introduction

The AWS Cognito Users Sync Tool is designed to synchronize users and groups from an AWS Cognito user pool. AWS Cognito is a fully managed service provided by Amazon Web Services (AWS) that enables you to manage users, groups and other services.

Source Code

This plugin source code is available in JogetOSS repository at https://github.com/jogetoss/aws-cognitor-users-tool.

Plugin Download

You may download it from https://github.com/jogetoss/aws-cognitor-users-tool/releases.


AWS Cognito Users Sync Tool Properties

Configure AWS Cognito Users Sync Tool


Figure 1: AWS Cognito User Sync Tool Properties

NameDescription
Organization

Choose an existing organization found in Joget

organization

.

All the groups from AWS Cognito will be assigned to the selected organization.

Region

Choose the AWS region. The region value must match with region value in the user pool.

Access Key

AWS Access Key. More information on how to retrieve the key.

Secret Key

AWS Access Key. More information on how to retrieve the key.

User Pool ID

User pool ID that is setup set up in AWS Cognito.



AWS Cognito Setup Process

Retrieving Access Key and Secret Access Key

1. Login to AWS Console

2. Right up corner, click on Security Credentials.

3. At Access Keys section, click on Create access key.

Figure 2: AWS Security Credentials Access Keys


4. Save your Access Key and Secret Access Key aside, we will be using them to configure the plugin later.

Figure 3: Retrieve AWS Security Credentials Access Key


Getting into AWS Cognito

1. Search for Cognito in the Search bar, and select Cognito.

Figure 4: AWS Cognito Service


Sample Setup

Introduction

If you are new to AWS Cognito, you may continue reading this section. In this section, we will set up:-

  • a new user pool,
  • creating users,
  • creating groups,
  • assign users to groups

Create AWS Cognito User Pool

1. Create a User Pool. You can create your user pool based on your preferences

Image Added

Figure 5: Create AWS Cognito User Pool - Configure Sign-In Experience

2. Note down the Region to be used for the plugin as highlighted in Figure 6 below.

Image Removed

Image Removed

Image Removed

Image Removed

Image Added

Figure 6: Create AWS Cognito User Pool - Configure Message Delivery

Image Added

Figure 7: Create AWS Cognito User Pool - Integrate Your App

Image Added

Figure 8: Create AWS Cognito User Pool - Initial App Client

32. Save your User Pool ID aside to configure the plugin later as highlighted in Figure 8 below.

Figure 8: Create AWS Cognito User Pool - User Pools

43. If you missed out the Region, you can find it at Messaging section after clicking into the user pool.

Figure 9: Create AWS Cognito User Pool - Locating Region and User Pool ID

Create AWS Cognito User

1. After clicking into the User Pool, we can create a User  

 

Figure 10: AWS Cognito - Create User under User Pool

Figure 11: AWS Cognito - Creating Individual User


2. Click on the newly created user and modify the User Attributes

Figure 12: AWS Cognito - Individual User Attributes

3. Add given_name and family_name as the attributes, this will be saved in the database for the plugin later on.

Figure 13: AWS Cognito - Adding New User Attributes



Create AWS Cognito Group

1. Create a group.

Figure 14: AWS Cognito - Create Group under User Pool

Figure 15: AWS Cognito - Create Group under User Pool


2. Assign a user to the group. Click into the user and click on Add user to group.

Figure 16: AWS Cognito - Assigning User to Group

Figure 17: AWS Cognito - Add User to a Group


Demo Setup Summary

After going through all the steps above, here's what we have achieved so far:-

Demo Details

1. Current AWS Cognito demo configurations

  • We have created 2 users - Demo User 1, Demo User 2.
  • We have created 1 group - JogetGroup1.

Figure 18: AWS Cognito - User Pool - User Listing

Here's the mappings of 2. Respective user with respective group:-

  • Demo User 1 - JogetGroup1
  • Demo User 2 - No group


Sync Process

This tool can be configured in a scheduler /or form post processing /or part of a process. In this demo we will run the tool upon form submission (post form processing).

Figure 19: Setting Up AWS Cognito Plugin in Form Post Processing Tool

When we submit the form, the tool will run, the group and users from AWS Cognito will be sync imported into the configured selected Joget organization.

Figure 20: Groups Imported Into the Selected Organization in Joget.

Figure 21: Users mapped Into Group

Figure 22: Users Imported Into Joget