-
-
Notifications
You must be signed in to change notification settings - Fork 198
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade to pac4j v1.9.2 #438
Comments
Any update on this? Do you want me to submit a first simple upgrade? |
Hi @leleuj Sorry, I've been busy with the upcoming release |
OK. I will handle it. Taking a first look at the code, I don't think option 2 (new model) really make sense for version 1.0.0: you have a very interesting codebase using most of the pac4j components in your way. I will upgrade them, it should be straightforward. |
I have prepared the following PR: #477 The changes are fairly straightforward:
I have fixed some errors in the documentation and added a link to the clients doc page. Nonetheless, I have some issues:
I guess it should be easy for you to fix the remaining issues: just let me know... |
The build fails: it seems I missed some classes in the |
Thank you @leleuj!
Thanks again. |
I'm used to see |
I used to do the same in the past and other projects.. still not sure why I set |
The compilation works now, just the two tests fail:
|
Build is now fixed. Thanks |
Hi,
pac4j v1.9.1 is out and Jooby should upgrade to use it.
The source code has been cleaned (-15% in size), dependencies (Java 8 also) have been upgraded, multi-profiles are supported and extension capabilities are much better -> https://github.com/pac4j/pac4j/wiki/Versions
Keeping the current Jooby security algorithms and upgrading to pac4j v1.9.1 should be straightforward (most API signatures have remained the same). This is your option number 1: really easy!
Though, pac4j has reached a strong maturity with version 1.9: the security model is now available via specific components (and not only guidelines).
In addition to the concepts: clients, authorizers and matchers (whether to apply security or not), you now have three "filters":
For example, for the "security filter", its logic is available via the DefaultSecurityLogic which makes implementations very easy:
And the
ProfileManager
is the component to use to get the current authenticated user while theSessionStore
is the abstraction for the web session.The short guide: https://github.com/pac4j/pac4j/wiki/How-to-implement-pac4j-for-a-new-framework---tool
So this is your option number 2: a lot more work, but a lot more powerful: multiple clients / authorizers definitions, multi profiles authenticated at the same time...
What do you think?
Thanks.
Best regards,
Jérôme
The text was updated successfully, but these errors were encountered: