Discussion about this post

User's avatar
Nicolas Duminil's avatar

It's interesting to see quarkus-security-jpa in action. I wasn't aware of this extension, so thank you for allowing me to learn something new.

While addressing security categories, like users, groups, password and roles, at the application level, isn't an anti-pattern for didactic cases, I strongly beleive that it isn't the application respondibility to manage security, but the infrastructure's one.

Hence, the classical scenario consists in delegating the users management to an identity service like Keycloak, storing related data in its embedded datastore and accessing it, when required, via its API or Java client.

Neural Foundry's avatar

Brilliant walkthrough, the derangement algorithm piece is chef's kiss. The shuffle-and-retry logic actually solves a problem I ran into las year when we tried doing this manually with index matching and kept hitting edge cases. Running 1000 retry attempts before throwing might seem excessive but its probaly necessary for larger groups where valid permutations get way more constrained. Dev Services making postgres spin up automatically is such an underrated feature for rapid prototyping.

No posts

Ready for more?