Doorkeeper is an OAuth 2 provider gem for Ruby on Rails and Grape applications.
The tool solves the problem of adding OAuth 2 authentication and authorization to your application by implementing the OAuth 2.0 Authorization Framework as a Rails engine. It handles the server-side OAuth 2 flow, managing authorization, token generation, and client credentials. The gem supports multiple OAuth 2 grant types including Authorization Code Flow, Implicit Grant, Resource Owner Password Credentials, and Client Credentials, along with token refresh, revocation, and introspection capabilities. It also implements security-focused specifications like Proof Key for Code Exchange for native applications and OAuth 2.0 Threat Model considerations.
Doorkeeper suits projects built with Rails or Grape that need to expose their APIs to third-party clients through OAuth 2. It works with multiple ORMs and supports custom grant flows and custom client authentication methods for specialized requirements. The gem is particularly valuable if you need standards-compliant OAuth 2 implementation without building the provider infrastructure from scratch. The project provides extensive documentation through guides, a wiki with integration examples, and upgrade guides for version transitions.
The project maintains active engagement with its community through Stack Overflow support channels and a published security disclosure policy. Development is tracked through a releases page with version-specific documentation, and the tool supports configuration across different Ruby on Rails and Grape versions with documented ORM compatibility.