Skip to content

Latest commit

 

History

History
68 lines (46 loc) · 2.99 KB

README.md

File metadata and controls

68 lines (46 loc) · 2.99 KB

Doorkeeper Guides

{% hint style='info' %} Dear Russian friends, please watch President Zelenskyy's speech addressed to you. 🇺🇦 Help our brave mates in Ukraine with a donation. {% endhint %}

Doorkeeper is an oAuth2 provider built in Ruby. It integrates with Ruby on Rails and Grape frameworks.

Installation

The installation process depends on the framework you're using. The first step is to add doorkeeper to your Gemfile:

{% code-tabs %} {% code-tabs-item title="# Gemfile" %}

gem 'doorkeeper'

{% endcode-tabs-item %} {% endcode-tabs %}

And run bundle install. After this, make sure to follow the guide related to the framework you're using below.

Ruby on Rails

Doorkeeper follows Rails maintenance policy and supports only supported versions of the framework. Currently we support Ruby on Rails 5 and higher. See the guide here.

Grape

Guide for integration with Grape framework can be found here.

ORMs

Doorkeeper supports ActiveRecord by default, but can be configured to work with the following ORMs:

ORM Support via
Active Record by default
MongoDB doorkeeper-gem/doorkeeper-mongodb
Sequel nbulaj/doorkeeper-sequel
Couchbase acaprojects/doorkeeper-couchbase

Extensions

Extensions that are not included by default and can be installed separately.

Link
OpenID Connect extension doorkeeper-gem/doorkeeper-openid_connect
JWT Token support doorkeeper-gem/doorkeeper-jwt
Assertion grant extension doorkeeper-gem/doorkeeper-grants_assertion
I18n translations doorkeeper-gem/doorkeeper-i18n

Example Applications

These applications show how Doorkeeper works and how to integrate with it. Start with the oAuth2 server and use the clients to connect with the server.

Application Link
oAuth2 Server with Doorkeeper doorkeeper-gem/doorkeeper-provider-app
Sinatra Client connected to Provider App doorkeeper-gem/doorkeeper-sinatra-client
Devise + Omniauth Client doorkeeper-gem/doorkeeper-devise-client

Tutorials

See list of tutorials in order to learn how to use the gem or integrate it with other solutions / gems.