Open breart opened 7 months ago
@breart I'm interested in this PR. Is there anything I can do to help? Thanks!
Nice PR. But why not abandon all non-supported Laravel versions? Laravel 8 is from 2020 and php 7.3 from 2018. Both unsupported and not getting security fixes. At the moment Laravel 10 and php 8.1 is the minimum versions still being maintained.
@breart I'm interested in this PR. Is there anything I can do to help? Thanks!
Same here! Is there anything you need help with?
Nice PR. But why not abandon all non-supported Laravel versions? Laravel 8 is from 2020 and php 7.3 from 2018. Both unsupported and not getting security fixes. At the moment Laravel 10 and php 8.1 is the minimum versions still being maintained.
Good point. My intention was to support slightly older versions since I'm aware this project is also used on bigger projects with older versions of Laravel & PHP. I like the idea of deprecating further, starting from L9 & PHP 8.0.
This is a draft PR for the next major release. The goal is to improve the design of the solution, giving developers more control and flexibility, as well as providing more basic functionality "out-of-the-box".
Plans
Key changes
Database changes
saml2_tenants
has been renamed tosaml2_identity_providers
saml2_identity_providers
now has an optional morph relation called "tenant" that can be associated with an application entity upon IdP creationsaml2_sessions
has been added to track all logins (see Login & Tracking below)Custom resolvers
IdentityProviderResolver
implements logic for resolving identity provider based on the request routeConfigResolver
implements logic for resolving IdP/SP config based on the resolved IdP modelLogin & Tracking
To provide basic functionality out of the box for smaller application, authorization logic has been implemented, specifically:
This is not designed for production needs, just an example on how login/signup can be implemented. For larger apps having custom logic is inevitable.