WP Manifestindependent plugin directory
manifest / users / inncognito

Inncognito

Login and Registration with user's AWS Cognito account.

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/wp-digital/inncognito/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Description

Login and Registration with user's AWS Cognito account.

Install

  • Preferable way is to use Composer:

      composer require innocode-digital/wp-inncognito

    By default, it will be installed as Must Use Plugin. It's possible to control with extra.installer-paths in composer.json.

  • Alternate way is to clone this repo to wp-content/mu-plugins/ or wp-content/plugins/:

      cd wp-content/plugins/
      git clone git@github.com:innocode-digital/inncognito.git
      cd inncognito/
      composer install

If plugin was installed as regular plugin then activate AWS Lambda Prerender from Plugins page or WP-CLI: wp plugin activate inncognito.

Configuration

Add the following constants to wp-config.php:

define( 'INNCOGNITO_DOMAIN', '' ); // Either domain or fully qualified URL (Cognito or custom).
define( 'INNCOGNITO_CLIENT_ID', '' );
define( 'INNCOGNITO_CLIENT_SECRET', '' );
define( 'INNCOGNITO_REGION', '' ); // e.g. eu-west-1
define( 'INNCOGNITO_USER_POOL_ID', '' );

Usage

Change callback URL:

define( 'INNCOGNITO_REDIRECT_URI', 'https://another-site.com/login/' );

Use case could be when e.g. you do not want to be limited with callback URL requirement (it's required to set all callbacks in Cognito settings) but want to use one with custom redirects handling.


Change login URL to custom endpoint:

define( 'INNCOGNITO_ENDPOINT', 'cognito' ); // default: 'inncognito'

Change session cookie name:

define( 'INNCOGNITO_COOKIE', 'cognito' ); // default: 'inncognito'

Session is used to handle actions and redirects, prevent CSRF attacks.


Force users to log in with their AWS Cognito account:

define( 'INNCOGNITO_FORCE_COGNITO', true );

Works for users who were logged in with SSO at least once.


Disable registration through AWS Cognito during SSO:

define( 'INNCOGNITO_DISALLOW_REGISTRATION', true );