-
-
Notifications
You must be signed in to change notification settings - Fork 9.6k
[Ldap] Allow to use ldap in a chain provider #51231
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
base: 7.3
Are you sure you want to change the base?
Conversation
c63cdc0
to
ee6ec00
Compare
c1a964d
to
731dcd3
Compare
fa50a1e
to
cbe2c95
Compare
src/Symfony/Component/Ldap/Security/CheckLdapCredentialsListener.php
Outdated
Show resolved
Hide resolved
2120810
to
726db70
Compare
726db70
to
8dbeb60
Compare
This looks like a feature |
@chalasr I don't know if it's really a feature, it worked with the Guard system and the feature has seamlessly disappeared with the replacement of Guard by Authenticators (and there was no announcement that the feature was not supported with Authenticators). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure the configuration described in the linked issue (using the same check_path for form_login
and form_login_ldap
) actually makes sense (and so whether this solution is valid as solution for that use case anyway)
@@ -171,6 +196,9 @@ public static function queryForDnProvider(): iterable | ||
yield ['{user_identifier}', '{user_identifier}_test']; | ||
} | ||
|
||
/** | ||
* @group legacy |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why is this becoming a legacy tests ? Why would we remove this test when removing deprecated features related to this PR ?
This PR allows to fix that the
LdapUserProvider
that not work properly when used in theChainProvider
.This fix relies on two ideas:
LdapBadge
is not a badge that must be resolved, it's only used to carry Ldap dataCheckLdapCredentialsListener
to check against the ldap directory the password for a non-ldap user using a new#[WithLdapPassword]
attribute