OmniAuth is a Ruby authentication framework that provides a standardized interface to many different authentication providers such as Facebook, OpenID, and even traditional username and password.
To use OmniAuth in a project with a Gemfile, just add each of the strategies you want to use individually:
Now you can use the
OmniAuth::Builder Rack middleware to build up your list of OmniAuth strategies for use in your application:
By default, OmniAuth will return auth information to the path
/auth/:provider/callback inside the Rack environment. In Sinatra, for example, a callback might look something like this:
For additional documentation, you should see the OmniAuth wiki.
Want an idea of the different providers OmniAuth gives you the ability to authenticate through? Try out any of the providers in the list below, each one is a live example of authenticating with OmniAuth!