3.1.2 • Published 2 years ago

paymenta-oauth2-server v3.1.2

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

fork info

This project was forked from two repos:

Original Fork Info

On this fork of oauth2-server I've modified the function prototypes to include an extra optional parameter: req It is intended to pass the express request context to the internal model functions, which will allow for example to use a distributed logging solution.

example of usage:

call the module functions like this:

...
oauth.token(request, response, null, null, req).then((token)=> {
...
oauth.authenticate(request, response,{scope: scopes}, null, req).then((token)=> {

then, in your model, add the extra req parameter

...
function getUser(username, password, req)
...
function verifyScope(token, scopes, req)
...

I've added the req parameter to all the grant-types and all the functions in the model.


oauth2-server

npm Version npm Downloads Test Status MIT Licensed oauthjs Slack

Complete, compliant and well tested module for implementing an OAuth2 server in Node.js.

Note: After a period of hiatus, this project is now back under active maintenance. Dependencies have been updated and bug fixes will land in v3 (current master). v4 will be mostly backwards compatible with no code changes required for users using a supported node release. More details in #621.

Installation

npm install oauth2-server

The oauth2-server module is framework-agnostic but there are several officially supported wrappers available for popular HTTP server frameworks such as Express and Koa. If you're using one of those frameworks it is strongly recommended to use the respective wrapper module instead of rolling your own.

Features

  • Supports authorization_code, client_credentials, refresh_token and password grant, as well as extension grants, with scopes.
  • Can be used with promises, Node-style callbacks, ES6 generators and async/await (using Babel).
  • Fully RFC 6749 and RFC 6750 compliant.
  • Implicitly supports any form of storage, e.g. PostgreSQL, MySQL, MongoDB, Redis, etc.
  • Complete test suite.

Documentation

Documentation is hosted on Read the Docs.

Examples

Most users should refer to our Express or Koa examples.

More examples can be found here: https://github.com/14gasher/oauth-example

Upgrading from 2.x

This module has been rewritten using a promise-based approach, introducing changes to the API and model specification. v2.x is no longer supported.

Please refer to our 3.0 migration guide for more information.

Tests

To run the test suite, install dependencies, then run npm test:

npm install
npm test