A package for managing OpenID-Connect authentication in ReactJS / Redux apps. It wraps the popular oidc-client library to redux actions and reducers.
npm install --save redux-oidc
This package has oidc-client-js as its peer dependency. In order to install this run:
npm install --save oidc-client
In addition there is a peer dependency for immutable.js, if you want to use it.
AS of version 3.0.0-beta.7, there is a peer dependency on React's prop-types.
You need the babel-polyfill in your build configuration for this package to work.
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.
It uses the oidc-client-js library to manage OpenID Connect functionality.
It contains the following parts:
- oidcMiddleware: redux middleware to automatically check whether or not the current user is signed in & trigger the authentication flow,
- CallbackComponent: A react component processing the callback from the OpenID-Connect provider,
- reducers & actions: reducers and actions to handle OIDC events,
- helpers: create helpers to manage the oidc-client-js library
I've decided to overhaul the API of this library. The main changes include:
- better SSR & React-Native support due to not relying on
window
anymore, - removed
childContext
from the<OidcProvider />
, user manager now must be passed in as a prop, - immutablejs is now an optional dependency and doesn't need to be installed for those not using it,
- dropped support for
shouldValidate
- the middleware now always validates the user, - dropped support for
triggerAuthFlow
- this must now be initiated by a custom action (see example app), - cleaner API all around
The example app is already updated to reflect these changes.
Check out the wiki for further information for Version 2.
There is a sample application demonstrating the use of this package here.
npm run test