Skip to content

Model Overview ​

OAuth2Server requires a model object through which some aspects of storage, retrieval and custom validation are abstracted.

Migration Notes ​

Version >=5.x: Callback support has been removed! Each model function supports either sync or async (Promise or async function) return values.

Version <=4.x: Each model function supports promises, Node-style callbacks, ES6 generators and async/await (using Babel). Note that promise support implies support for returning plain values where asynchronism is not required.

Request Authentication ​

See Section 2 of RFC 6750

The authorization server authenticates requests that are sent to the resource server by verifying the included bearer token.

Model functions used during request authentication:

Grant Types ​

For each grant type there are different model required, optional or unused. The following sections describe the grant types and the model functions, required for the grants.

Authorization Code Grant ​

Model functions required by the authorization code grant:

Required if no custom authenticate handler used:

Required if custom authenticate handler used:

Optional, but recommended:

Client Credentials Grant ​

Model functions used by the client credentials grant:

Optional, but recommended:

Refresh Token Grant ​

Model functions used by the refresh token grant:

Password Grant ​

Model functions used by the password grant:

Extension Grants ​

The authorization server may also implement custom grant types to issue access (and optionally refresh) tokens.

See extension grants