Spring Security
spring-authorization-server
Our great sponsors
Spring Security | spring-authorization-server | |
---|---|---|
10 | 13 | |
8,406 | 4,719 | |
1.6% | 1.1% | |
9.9 | 9.4 | |
7 days ago | 5 days ago | |
Java | Java | |
Apache License 2.0 | Apache License 2.0 |
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 Security
-
Spring Security private_key_jwt with AWS KMS
Spring security has long had great OAuth2.0 support from both the server and client elements. Recently spring security added support for the private_key_jwt client authentication method as part of the authorization code grant flow. Spring Security GitHub ref
- Issue since upgrading to Spring Boot 3 - 2: cannot access H2-console
-
Spring with java vs Spring with kotlin
To be fair there were quite some unexpected surprises in the past with Spring and Kotlin (e.g. the Cachable annotation did not work with suspend functions, not all Spring security annotations were supported with coroutines), but most of them were ironed out already.
-
Spring Security WebSecurityConfigurerAdapter deprecated
They recently updated all the examples in the javadocs if you wanna bump your Spring Security version to 5.7.3 (see here). Otherwise the reference docs all reflect the non-deprecated approach that uses SecurityFilterChain and supporting beans.
-
🎀 Spring Boot 2.7.0 Released
Spring Security 5.7
-
Spring Security without the WebSecurityConfigurerAdapter
Since Spring Security 5.7.0-M2 the use of WebSecurityConfigurerAdapter was deprecated (link to GitHub - https://github.com/spring-projects/spring-security/issues/10822) to move to component-based security configuration.
-
Spring Reactive Oauth2 Webclient not using configured proxy
When i start the flow, no proxy is used and even the WebClient is not used to get access token. And i get a timeout exception for that. The same issue was discussed in Github: https://github.com/spring-projects/spring-security/issues/8966
-
How to ignore Url from Once per request filter
You can extract (and validate) the JWT token into the Principal by implementing the getPreAuthenticatedPrincipal method, and map the claims to user details by providing through a custom implementation of AuthenticationUserDetailsService.
-
Dynamically updating user roles.
Or, maybe simpler, is to create your own filter and add it after the SecurityContextPersistenceFilter. Here, just recreate the authentication token from the database, which is what token based authentication does (token based authentication has to preauthenticated authentication from the token for the actual user authentication with the user details).
spring-authorization-server
-
Spring + VueJS: What's the best way to implement security?
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
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?
You can spin one up in Spring (Java) fairly quickly and boilerplate - Main page and Getting Started Guide.
-
Spring Authorization Server
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
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
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
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?
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?
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
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.
What are some alternatives?
Keycloak - Open Source Identity and Access Management For Modern Applications and Services
keycloak-ui - keycloak-ui repo is moved.
Bouncy Castle - Bouncy Castle Java Distribution (Mirror)
Apache Shiro - Apache Shiro
zitadel - ZITADEL - The best of Auth0 and Keycloak combined. Built for the serverless era.
jCasbin - An authorization library that supports access control models like ACL, RBAC, ABAC in Java
oidc-client-ts - OpenID Connect (OIDC) and OAuth2 protocol support for browser-based JavaScript applications
Nimbus JOSE+JWT - JSON Web Token (JWT) implementation for Java with support for signatures (JWS), encryption (JWE) and web keys (JWK).
a12n-server - An open source lightweight OAuth2 server
jjwt - Java JWT: JSON Web Token for Java and Android
faf-user-service