Invenio module that provides OAuth web authorization support.
OAuth client support is typically used to allow features such as social login (e.g. Sign in with Twitter) and access to resources owned by a specific user at a remote service. Both OAuth 1.0 and OAuth 2.0 are supported.
The module contains:
- Views: OAuth login and authorized endpoints, linked account settings and sign-up handling.
- Client: A client to interact with remote applications.
- Contrib: Ready-to-use GitHub, ORCID, and CERN remote applications.
- Models: Persistence layer for OAuth access tokens including support for storing extra data together with a token.
- Handlers: Customizable handlers for deciding what happens when a user authorizes a request.