所以我有Symfony 4 app,应该允许通过LDAP登录并根据你的组修改这个ldap目录中的一些值。
登录本身,以及从Ldap群组到ROLE_
的映射完美无缺。
这个想法是只有当前的logedin用户进行修改。不是隐藏的Directory Admin
。
为此,每当用户想要修改目录时,我需要$ldap->bind()
使用用户凭据。
但为此,我需要密码。我能想到的唯一方法是在会话中保存密码 - 但从形成安全角度来看,这将是一个非常糟糕的主意。
还有其他方法吗?就像以某种方式存储已经绑定的连接?
就我在Symfony安全组件中看到的那样 - UserProvider只刷新用户sesison - 而不再调用ldap。
LdapBindAuthenticationProvider
仅使用具有给定凭据的->bind()
调用,并在密码不匹配时捕获异常。
但连接本身就是一个简单的火灾和忘记。