स्प्रिंग सिक्योरिटी पहले से ही एलडीएपी आउट-ऑफ-द-बॉक्स का समर्थन करती है। इसमें वास्तव में एक पूरा अध्याय है। इस पर।
LDAP का उपयोग और कॉन्फिगर करने के लिए spring-security-ldap
जोड़ें निर्भरता और अगला उपयोग AuthenticationManagerBuilder.ldapAuthentication
इसे कॉन्फ़िगर करने के लिए। LdapAuthenticationProviderConfigurer
आपको आवश्यक चीजें सेट करने की अनुमति देता है।
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.ldapAuthentication()
.contextSource()
.url(...)
.port(...)
.managerDn(...)
.managerPassword(...)
.and()
.passwordEncoder(passwordEncoder())
.userSearchBase(...)
.ldapAuthoritiesPopulator(new UserServiceLdapAuthoritiesPopulater(this.userService));
}
ऐसा कुछ (यह आपको कम से कम एक विचार देना चाहिए कि चीजों को कैसे/कैसे कॉन्फ़िगर करना है) और विकल्प हैं लेकिन इसके लिए javadocs जांचें। यदि आप UserService
का उपयोग नहीं कर सकते हैं जैसा कि भूमिकाओं को पुनः प्राप्त करना है (क्योंकि केवल भूमिकाएँ डेटाबेस में हैं) फिर अपना स्वयं का LdapAuthoritiesPopulator
उसके लिए।