May 26, 2018
Generic, Configurable OmniAuth Strategy for OAuth2 providers
omniauth-oauth2-generic provides an OmniAuth strategy for authenticating with an OAuth2 service using the authorization grant flow.
Most OmniAuth gems are written either as abstractions omniauth-oauth2 or for a specific provider omniauth-github, but this one is designed to be configurable enough to work with any basic OAuth2 provider. The primary differences between OAuth2 provider strategies in OmniAuth are
- The server’s domain
- The URL paths used to authorize, request tokens and get user info
- The structure of the returned user information
These are all configurable options in this gem. There my be certain requirements/features of some providers not covered by this gem’s options, but it was designed primarily so that if you are implementing your own OAuth2 provider for your service, you don’t need to write an OmniAuth strategy as long as it is compatible with the basic options provided by this gem.