Top 22 Ruby Authorization Projects
-
This is called “authorization”. pundit is a great library for it.
-
If you are using CanCanCan for authorization and also want to use the magic of StimulusReflex for reactive page updates, these strategies will help you check user abilities in your reflexes.
-
Scout APM
Scout APM - Leading-edge performance monitoring starting at $39/month. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.
-
Project mention: Authelia is an open-source authentication/authorization server with 2FA/SSO | news.ycombinator.com | 2021-03-10
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
-
-
Declarative Authorization
An unmaintained authorization plugin for Rails. Please fork to support current versions of Rails
-
-
Project mention: Rails: How to Reduce Friction at the Authorization Layer | reddit.com/r/ruby | 2021-03-15
At work, we've recently faced similar issues and moved to ActionPolicy as a result. It's designed slightly differently, but there is a lot of overlap with what John came up with.
-
-
-
-
-
-
-
-
-
Canard
Makes role based authorization in Rails really simple. Wraps CanCan and RoleModel up with a smattering of syntactic sugar, some generators and scopes.
-
-
-
-
-
Index
What are some of the best open-source Authorization projects in Ruby? This list will help you:
Project | Stars | |
---|---|---|
1 | Pundit | 7,240 |
2 | CanCanCan | 4,857 |
3 | Doorkeeper | 4,781 |
4 | rolify | 2,867 |
5 | Declarative Authorization | 1,259 |
6 | acl9 | 854 |
7 | Action Policy | 736 |
8 | AccessGranted | 733 |
9 | graphql-guard | 434 |
10 | Consul | 274 |
11 | RoleCore | 264 |
12 | banken | 249 |
13 | Groupify | 187 |
14 | Pundit Matchers | 175 |
15 | RedisWebManager | 140 |
16 | Canard | 126 |
17 | Next Rails | 95 |
18 | Yabeda::Puma::Plugin | 35 |
19 | browserslist_useragent gem | 26 |
20 | Operators | 23 |
21 | KittyPolicy | 22 |
22 | Trust | 14 |