spring-authorization-server VS Keycloak

Compare spring-authorization-server vs Keycloak and see what are their differences.

Keycloak

Open Source Identity and Access Management For Modern Applications and Services (by keycloak)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
spring-authorization-server Keycloak
13 230
4,723 19,946
0.6% 2.2%
9.4 10.0
4 days ago 4 days ago
Java Java
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

spring-authorization-server

Posts with mentions or reviews of spring-authorization-server. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-18.
  • Spring + VueJS: What's the best way to implement security?
    2 projects | /r/SpringBoot | 18 Mar 2023
    I use this https://github.com/spring-projects/spring-authorization-server for smaller projects or experimentations. Keeps all the moving parts without going to a 3rd party.
  • Spring Security OAuth2 Login
    2 projects | dev.to | 9 Mar 2023
    In this section we will use Spring Authorization Server to build an authorization server.In addition, we will also customize the access_token and custom user information endpoints.
  • Any good free authorization server solutions?
    3 projects | /r/SoftwareEngineering | 17 Dec 2022
    You can spin one up in Spring (Java) fairly quickly and boilerplate - Main page and Getting Started Guide.
  • Spring Authorization Server
    1 project | /r/SpringBoot | 7 Nov 2022
    Is Spring Authorization Server ready for production? Does it only use OAuth 2.1? We currently use `org.springframework.security.oauth.boot:spring-security-oauth2-autoconfigure` in our apps with OAuth2 JWT with grant types `password`, and `refresh_token`. If we update our authorization server with Spring Authorization Server, do we have to change all functionalities? Can we use OAuth2 or do we have to start using OAuth2.1?
  • Spring security new Authorization server (0.3.1) - part 1
    2 projects | dev.to | 24 Sep 2022
    At the moment of writing this it seems like the documentation is also in the early stages, although I wouldn't expect too much from the documentation later on either if it was to be judged by the docs for the rest of the spring security. You can find the official docs here.
  • Spring Security WebSecurityConfigurerAdapter deprecated
    2 projects | /r/SpringBoot | 17 Aug 2022
    Your example is pretty unconventional though — it seems like you're sort of rolling your own authorization server which will make things difficult. The project has been diligent about removing support for "issuing" JWTs and things like that. If you asked a maintainer about your current approach they'd probably point you to https://spring.io/projects/spring-authorization-server.
  • Spring security auth
    1 project | /r/learnjava | 10 Aug 2022
    It has becone so boilerplate, Spring is actually helping Take a look at: Spring Auth Server
  • Any good resources to learn JWT based authorization with spring?
    1 project | /r/learnjava | 1 Aug 2022
    Spring Auth Server
  • How to make multiple apps redirect to same login page hosting Google OAuth and make it redirect to corresponding app upon successful authentication?
    2 projects | /r/SpringBoot | 14 Jun 2022
    Most of the time, and most examples, will be about using OAuth as a client. But in your case you want to have your own OAuth and Open ID server which will be federated with Facebook and Google. All that means is that you will then have an OAuth server that is also someone else's client, such that your apps authenticate with your server which then uses their servers to actually identify users. This will also come in handy later if you want to set up permissions and what not. Besides Keycloak you might want to look into WSO2 IS or Auth0. Keycloak and WSO2 IS can be run locally, while Auth0 is a cloud service. I'd go with either Keycloak or Auth0. If you go the Spring Authorization Server route, they rolled up an example of federation on the project's Github page. Oauth can be pretty complicated though so I'd suggest that you start off with a ready-made solution. If you stick to Spring Oauth2 Client and avoid things like using Keycloak's specific adapter, it should be easy enough to swap OAuth servers later on. Regarding SAML, I've never used it. I think OAuth is way more prevalent in web development. Here's a comparison, I found it informative. You mentioned tutorials... I bought this course on Udemy last year and it was pretty nice. I browsed some tutorials, and I think this is what you need if you go with Keycloak, assuming you're using Keycloak on the server. If you want to authenticate users on the frontend (running on the browser), you'll want a PKCE flow example.
  • Keycloak: Open-Source Identity and Access Management
    17 projects | news.ycombinator.com | 4 May 2022
    Spring has an oauth2 authorization server that is currently in early release: https://github.com/spring-projects/spring-authorization-serv...

    I'm building something with it currently and it's quite nice, especially if you are already familiar with spring security. Documentation is quite sparse tho.

Keycloak

Posts with mentions or reviews of Keycloak. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-03.
  • Simplifying Keycloak Configuration with Terraform and Terragrunt
    1 project | dev.to | 4 May 2024
    Keycloak, an open-source identity and access management solution, provides robust authentication and authorization services for modern applications. However, configuring Keycloak instances manually can be tedious and error-prone. In this blog post, we'll explore how to simplify Keycloak configuration using Terraform and Terragrunt, enabling infrastructure as code (IaC) practices for managing Keycloak realms, clients, users, and more.
  • Securing Vue Apps with Keycloak
    3 projects | dev.to | 3 Apr 2024
    In this article we'll be using Keycloak to secure a Vue.js Web application. We're going to leverage oidc-client-ts to integrate OIDC authentication with the Vue app. The oidc-client-ts package is a well-maintained and used library. It provides a lot of utilities for building out a fully production app.
  • User Management and Identity Brokering for On-Prem Apps with Keycloak
    1 project | dev.to | 3 Apr 2024
    Keycloak has been a leader in the Identity and Access Management world since its launch almost 8 years ago. It is an open-source offering under the stewardship of Red Hat
  • Navigating Identity Authentication: From LDAP to Modern Protocols
    2 projects | dev.to | 28 Mar 2024
  • Ask HN: No-code, simple-setup user management
    1 project | news.ycombinator.com | 11 Mar 2024
    It sounds like what you're looking for is an identity provider.

    A popular open source option is https://www.keycloak.org/

    This application can manage your users, then you can use standards like OpenID or SAML to plug it into your application, of which there are usually many plugins to accomplish this depending on your tech stack.

  • Top 6 Open Source Identity and Access Management (IAM) Solutions For Enterprises
    3 projects | dev.to | 21 Feb 2024
    KeyCloak is a Cloud Native Computing Foundation (CNCF) project that offers enterprise IAM solutions. Keycloak emphasizes proficient enterprise authorization solutions by providing:
  • Outline: Self hostable, realtime, Markdown compatible knowledge base
    7 projects | news.ycombinator.com | 16 Jan 2024
    Outline only uses SSO for authentication. The solution when self hosting is use a private keycloak server [1]. This allows you to do email based auth.

    [1] https://www.keycloak.org/

  • Keycloak open redirect: wildcard redirect URIs can be exploited to steal tokens
    2 projects | news.ycombinator.com | 12 Jan 2024
    > Keycloak was good but has too much legacy for 10+ years.

    I got curious, actually seems to check out and explains why it's so well documented (but also complex and oftentimes confusing):

    > The first production release of Keycloak was in September 2014, with development having started about a year earlier.

    https://en.wikipedia.org/wiki/Keycloak

    https://github.com/keycloak/keycloak/releases/tag/1.0.0.Fina...

  • What Is OIDC?
    3 projects | news.ycombinator.com | 21 Dec 2023
    > Don't outsource either your authentication or authorization. Run it in-house.

    This is hard to do, though. I hope people here will drop a lot of combinations that work for them!

    Personally, for a small/medium scale project, I went with:

    Keycloak: https://www.keycloak.org/

    It supports various backing RDBMSes (like PostgreSQL, MariaDB/MySQL and others), allows both users that you persist in your own DB, as well as various external sources, like social login across various platforms, is an absolute pain to configure and sometimes acts in stupid ways behind a reverse proxy, but has most of the features that you might ever want, which sadly comes coupled with some complexity and an enterprise feeling.

    I quite like that it offers the login/registration views that you need with redirects, as well as user management, storing roles/permissions and other custom attributes. It's on par with what you'd expect and should serve you nicely.

    mod_auth_openidc: https://github.com/OpenIDC/mod_auth_openidc

    This one's a certified OpenID Connect Relying Party implementation for... Apache2/httpd.

    Some might worry about the performance and there are other options out there (like a module for OpenResty, which is built on top of Nginx), but when coupled with mod_md Apache makes for a great reverse proxy/ingress for my personal needs.

    The benefit here is that I don't need 10 different implementations for each service/back end language that's used, I can outsource the heavy lifting to mod_auth_openidc (protected paths, needed roles/permissions, redirect URLs, token renewal and other things) and just read a few trusted headers behind the reverse proxy if further checks are needed, which is easy in all technologies.

    That said, the configuration there is also hard and annoying to do, as is working with OpenID Connect in general, even though you can kind of understand why that complexity is inherent. Here's a link with some certified implementations, by the way: https://openid.net/developers/certified-openid-connect-imple...

  • Auth0 increases price by 300%
    7 projects | /r/webdev | 7 Dec 2023
    You couldn't pay me to use their bullshit...if you need an identity server/provider go with Keycloak. Open source, free, and standards based, works better and scales better too.

What are some alternatives?

When comparing spring-authorization-server and Keycloak you can also consider the following projects:

keycloak-ui - keycloak-ui repo is moved.

authelia - The Single Sign-On Multi-Factor portal for web apps

zitadel - ZITADEL - The best of Auth0 and Keycloak combined. Built for the serverless era.

authentik - The authentication glue you need.

Spring Security - Spring Security

Apache Shiro - Apache Shiro

oidc-client-ts - OpenID Connect (OIDC) and OAuth2 protocol support for browser-based JavaScript applications

OPA (Open Policy Agent) - Open Policy Agent (OPA) is an open source, general-purpose policy engine.

a12n-server - An open source lightweight OAuth2 server

IdentityServer - The most flexible and standards-compliant OpenID Connect and OAuth 2.x framework for ASP.NET Core

faf-user-service