Skip to content

A package for managing OpenID Connect authentication in ReactJS / Redux apps

License

Notifications You must be signed in to change notification settings

cinch-labs/redux-oidc

 
 

Repository files navigation

redux-oidc

Build Status

This is a successor for redux-oidc, but with a different name. Eventually, will add helper hooks, but the intent is to bring this application up to date with React 18 and hooks.

A package for managing OpenID-Connect authentication in ReactJS / Redux apps. It wraps the popular oidc-client-ts library to redux actions and reducers.

Description

This package handles OpenID-Connect authentication in redux apps. It enables redux apps to authenticate with an external OIDC authentication provider and handles the actions of the OpenID implicit flow or authorization code flow.

It uses the oidc-client-ts library to manage OpenID Connect functionality.

It contains the following parts:

  • CallbackComponent: A react component processing the signin callback from the OpenID-Connect provider,
  • SignoutCallbackComponent: A react component processing the signout callback from the OpenID-Connect provider,
  • reducers & actions: reducers and actions to handle OIDC events,
  • helpers: create helpers to manage the oidc-client-ts library

Installation

npm install --save redux-oidc

Peer dependencies

This package wraps oidc-client-ts to use with ReactJS / Redux apps. Install oidc-client like this:

npm install --save oidc-client-ts

In addition there is a peer dependency for immutable.js, if you want to use it.

babel-polyfill

You need the babel-polyfill in your build configuration for this package to work.

Version 4 released

BREAKING CHANGE: immutable is no longer a dependency. If you are using the immutable reducer, please check out the docs.

Documentation

You can find the docs for version 3 here:

Note for react-native users

This library doesn't fully support react-native apps. Please use this library instead.

Version 2

Check out the wiki for further information for Version 2 (deprecated).

Sample app

There is a sample application demonstrating the use of this package here.

Tests

You have to install immutableJS for all the tests to pass: npm install immutable --no-save. Then run npm run test.

About

A package for managing OpenID Connect authentication in ReactJS / Redux apps

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%