Doorkeeper
Sorcery
Our great sponsors
Doorkeeper | Sorcery | |
---|---|---|
6 | 10 | |
5,255 | 1,412 | |
0.3% | 1.1% | |
7.5 | 5.0 | |
10 days ago | 7 days ago | |
Ruby | Ruby | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Doorkeeper
-
Best way for user auth with a Rails API?
The doorkeeper gem.
-
Rails Personal access tokens
Take a look at doorkeeper.
-
Zitadel: The best of Auth0 and Keycloak combined
Disclosure: I work for FusionAuth.
Depends on what you are looking for.
If you want a standalone auth server, you can use FusionAuth in docker/docker-compose: https://fusionauth.io/docs/v1/tech/installation-guide/docker
You can also package up a library; most major languages have one or more OAuth/OIDC libraries: https://github.com/doorkeeper-gem/doorkeeper for Ruby, https://spring.io/projects/spring-security for Spring/Java, https://oauth2.thephpleague.com/ for PHP, https://pypi.org/project/oauthlib/ for Python.
https://oauth.net/code/ has a further selection of libraries in a variety of languages.
-
Need help implementing PKCE flow in Doorkeeper
Are there any code examples to implement the PKCE flow in Doorkeeper? I am a bit confused on how to implement it here: https://github.com/doorkeeper-gem/doorkeeper/wiki/Using-PKCE-flow
-
Using the same backend for both web views & mobile app
For authorization we use Doorkeeper gem with PKCE flow.
-
Authelia is an open-source authentication/authorization server with 2FA/SSO
One thing that is missing from this list is open source language specific libraries. Projects such as https://oauthlib.readthedocs.io/en/latest/oauth2/server.html and https://github.com/doorkeeper-gem/doorkeeper
Depending on your use case, for example if you only have one application, you might be better off running something embedded in your app, or independent but using the same runtime/deployment environment. Then, when you are ready to add another app or integration, you should be able to introduce a standalone auth system more easily if appropriate (because all your auth interactions should be relatively standardized). I'm a big fan of standalone auth systems as a way to simplify access control and give a single view of a user/customer, but you can also succeed using open source embedded libraries.
When the moment comes to introduce a standalone system, you should consider a few dimensions (this list pulled from a previous comment of mine: https://news.ycombinator.com/item?id=26360048 ):
* open source or not
Sorcery
-
Everything was going great until I installed Devise!
I have been using devise for a while and it has consistently given me issues. I have wistfully been staring at sorcery for a while now but cant justify the switch since devise is already in the project.
- What is used for authentication in Rails nowadays?
-
Build a password authentication feature with Sorcery gem.
I made a 8 minutes video tutorial (following the wiki: https://github.com/Sorcery/sorcery/wiki/Simple-Password-Authentication) to introduce how to build a simple password authentication feature with Sorcery. With some minor modification to please Turbo.
-
Authentication with Sorcery, RSpec, and Rails 7: Building a simple Rails CMS - Part 1
We'll be installing Sorcery based off this tutorial in their wiki. I'm modifying a little bit since we are creating something different, but also because their tutorial is a bit outdated since it is based off an older version of Rails.
- Webpacker Retired
- What are your top useful gems?
-
A November of WTFs
But does it have to be so soon? There are other areas where I'm just as ignorant as I was about the inner workings of authentication (see "the database" below), and in these areas there's not a gem that can automatically solve the problem for me—which is what I've ended up doing for authentication in my own project: even though I could build authentication from scratch, instead I'm using an authentication gem because the effect is exactly the same, but with less code in my app for me to maintain. (Rather than Devise, I've chosen the more lightweight alternative Sorcery. It's simple enough that I can still understand and control the authentication flow, while also providing enough conveniences that I don't have to write out implementation details from scratch.)
-
Why there is no simple default auth in Rails?
Also Sorcery is, despite its name, a little less magic than Devise.
-
Easy has_secure_password API authentication
sorcery
What are some alternatives?
OmniAuth - OmniAuth is a flexible authentication system utilizing Rack middleware.
Devise - Flexible authentication solution for Rails with Warden.
Clearance - Rails authentication with email & password.
JWT - A ruby implementation of the RFC 7519 OAuth JSON Web Token (JWT) standard.
OAuth2 - A Ruby wrapper for the OAuth 2.0 protocol.
Authlogic - A simple ruby authentication solution.
Devise Token Auth - Token based authentication for Rails JSON APIs. Designed to work with jToker and ng-token-auth.
Knock - Seamless JWT authentication for Rails API