@interop-alliance/oidc-rp

OpenID Connect Relying Party client library

Usage no npm install needed!

<script type="module">
  import interopAllianceOidcRp from 'https://cdn.skypack.dev/@interop-alliance/oidc-rp';
</script>

README

OpenID Connect Relying Party (@interop-alliance/oidc-rp)

Build Status npm version

OpenID Connect Relying Party for Node.js and the browser.

  • Dynamic Configuration and Client Registration
  • Authorization Code, Implicit, and Hybrid grants
  • Relying Party initiated logout
  • Refresh grant
  • Client Credentials grant
  • Key rotation using JWK kid value
  • Session management
  • front- and back-channel logout
  • Request parameters as JWT
  • Claims request parameter
  • Claims language tags
  • OAuth 2.0 Bearer Token requests

Table of Contents

Security

...

Background

...

Install

$ npm install @interop-alliance/oidc-rp --save

Usage

Node.js

const RelyingParty = require('@interop-alliance/oidc-rp')

Browser

When loaded into an HTML page via <script src="./dist/oidc.rp.min.js"></script>, the library is exposed as a global var, OIDC.

Develop

Install

$ git clone https://github.com/interop-alliance/oidc-rp.git
$ cd oidc-rp
$ npm install

Build

Important: If you're using this library as a dependency and you plan to use Webpack, don't forget to add the following lines to your webpack.config.js externals: section:

  externals: {
    'node-fetch': 'fetch',
    '@sinonjs/text-encoding': 'TextEncoder',
    'isomorphic-webcrypto': 'crypto'
  }

To build a Webpack-generated bundle:

npm run dist

Test

npm test

Maintainers

  • Dmitri Zagidulin

Contribute

Style guide

  • ES6
  • Standard JavaScript
  • jsdocs

Code of conduct

MIT License

The MIT License

Copyright (c) 2016 Anvil Research, Inc. Copyright (c) 2017-2019 The Solid Project