@trust/oidc-op

0.3.1 • Public • Published

OpenID Connect for Nodejs

This library aims to implement a full-featured OpenID Connect Provider for Nodejs. It is not intended to be used directly by most developers, but rather via a complete self-contained server such as Anvil Connect. Some applications require an embedded identity provider, such as entertainment or IoT appliances. This package can be used directly in these cases.

The module should make available an OIDCProvider class which can be instantiated multiple times to support multitenancy use cases. It should also have a method that provides a mountable router or app for widely used frameworks like Express.

Scope

  • Core
  • Discovery
  • Dynamic Registration
  • OAuth 2.0 Multiple Response Types
  • OAuth 2.0 Form Post Response Types
  • Session Management
  • Front-Channel Logout
  • Back-Channel Logout
  • OAuth 2.0 Client Credentials Grant
  • Proof Key for Code Exchange by OAuth Clients (PKCE)
  • Authorization Cross Domain Code (ACDC)

Dependencies

This package is a work in progress, dependent on other ongoing projects. Code contained herein will be completed when the following dependencies are ready to release:

Tentative Scope

  • Account Chooser 1.0
  • Native Applications Agent Core 1.0
  • Native Applications API Bindings 1.0

Out of Scope

  • Local Authentication
  • Persistence

Internal Interface

OpenID Connect makes no provisions for how a user is initially authenticated by the IdP. It's up to the implementer to determine whether to use passwords, LDAP, SAML, OAuth, or some other means. The host system is responsible for other dependencies of the OIDC authentication flows as well, such as persistence, managing user attributes, multi-factor auth and so on.

In addition to implementing OpenID Connect Provider functions, this library defines an interface between OpenID Connect and the host application.

The goal of the interface is to manage the flow of responsibility between the OpenID Connect implementation and functions provided by the host application, such as local user authentication, persistence, and domain specific event handing.

MIT License

Copyright (c) 2016 Anvil Research, Inc.

Readme

Keywords

none

Package Sidebar

Install

npm i @trust/oidc-op

Weekly Downloads

0

Version

0.3.1

License

MIT

Last publish

Collaborators

  • ibudea
  • thelunararmy
  • codenamedmitri
  • cstefanache
  • keelerh
  • eternaldeiwos
  • christiansmith