Doorkeeper
scim-for-keycloak
Our great sponsors
Doorkeeper | scim-for-keycloak | |
---|---|---|
6 | 2 | |
5,255 | 177 | |
0.3% | - | |
7.5 | 3.6 | |
10 days ago | about 2 months ago | |
Ruby | Java | |
MIT License | BSD 3-clause "New" or "Revised" 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
scim-for-keycloak
-
Zitadel: The best of Auth0 and Keycloak combined
Likely this one: https://github.com/Captain-P-Goldfish/scim-for-keycloak
An wonderful piece of work. Note, however, that the most recent supported Keycloak version is 16.1.x. Whereas Keycloak has recently been reworked (beginning with 17.x) around Quarkus. So the plugin is behind the curve WRT Keycloak.
- Hackers claim to have breached Okta systems
What are some alternatives?
OmniAuth - OmniAuth is a flexible authentication system utilizing Rack middleware.
Keycloak - Open Source Identity and Access Management For Modern Applications and Services
Devise - Flexible authentication solution for Rails with Warden.
vouch-proxy - an SSO and OAuth / OIDC login solution for Nginx using the auth_request module
JWT - A ruby implementation of the RFC 7519 OAuth JSON Web Token (JWT) standard.
caddy-security - 🔐 Authentication, Authorization, and Accounting (AAA) App and Plugin for Caddy v2. 💎 Implements Form-Based, Basic, Local, LDAP, OpenID Connect, OAuth 2.0 (Github, Google, Facebook, Okta, etc.), SAML Authentication. MFA/2FA with App Authenticators and Yubico. 💎 Authorization with JWT/PASETO tokens. 🔐
OAuth2 - A Ruby wrapper for the OAuth 2.0 protocol.
sirix - SirixDB is an an embeddable, bitemporal, append-only database system and event store, storing immutable lightweight snapshots. It keeps the full history of each resource. Every commit stores a space-efficient snapshot through structural sharing. It is log-structured and never overwrites data. SirixDB uses a novel page-level versioning approach.
Devise Token Auth - Token based authentication for Rails JSON APIs. Designed to work with jToker and ng-token-auth.
oidc - Easy to use OpenID Connect client and server library written for Go and certified by the OpenID Foundation
Knock - Seamless JWT authentication for Rails API
SuperTokens Community - Open source alternative to Auth0 / Firebase Auth / AWS Cognito