2011-11-17 7 views
8

मैं इसे देख रहा हूं जब मैं सीएएस के साथ लॉगिन करने का प्रयास करता हूं जो एलडीएपी पर एडी के खिलाफ प्रमाणीकरण कर रहा है।सीएएस एडी एलडीएपी 32 त्रुटि

SEVERE: Servlet.service() for servlet cas threw exception 
javax.naming.NameNotFoundException: [LDAP: error code 32 - 0000208D: NameErr: DSID-031001E5, problem 2001 (NO_OBJECT), data 0, best match of: 
    '' 
]; remaining name '/' 
    at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3092) 
    at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3013) 
    at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2820) 
    at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1829) 
    at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1752) 
    at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:368) 
    at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:338) 
    at javax.naming.directory.InitialDirContext.search(InitialDirContext.java:257) 
    at org.springframework.ldap.core.LdapTemplate$3.executeSearch(LdapTemplate.java:231) 
    at org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:293) 
    at org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:237) 
    at org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:588) 
    at org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:546) 
    at org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:401) 
    at org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:421) 
    at org.springframework.ldap.core.LdapTemplate.search(LdapTemplate.java:441) 

उस बिंदु मैं BindLdapAuthenticationHandler द्वारा प्रमाणीकृत किया गया, हल हो तक, यह एक प्रश्न बिल्डर उत्पन्न और फिर इस फेंक दिया।

मुझे लगता है कि यह गुणों को वापस पाने की कोशिश कर रहा है जब यह विफल रहा है। remaining name '/' क्यों है?

उत्तर

7

शेष नाम डीएन का एक हिस्सा है जो वास्तव में डीआईटी के एक निश्चित स्तर पर नहीं मिला था। उदाहरण के लिए जब आप cn=johns,ou=marketing,dc=example,dc=com और ou=marketing,dc=example,dc=com खोजते हैं लेकिन cn=johnsou=marketing के अंदर मौजूद नहीं है तो पुनर्निर्मित नाम cn=johns होगा।

'/' मान्य आरडीएन की तरह दिखता नहीं है। मैं यह सत्यापित करने की अनुशंसा करता हूं कि आप खोज आधार के रूप में क्या पास करते हैं। सबसे अधिक संभावना है कि यह एक अवैध डीएन स्ट्रिंग है।

+0

मुझे इसके बजाय एक खाली शेष नाम मिला, यानी, जो अजनबी दिखता है, समस्या का वर्णन किया गया है [यहां] (http://stackoverflow.com/q/39372374/5606016) (और यह वास्तव में एक खुली बक्षीस है) –

3

एलडीएपी त्रुटि कोड 32 का मतलब है "इस तरह की कोई वस्तु नहीं", इस मामले में शायद खोज का मूल उद्देश्य मौजूद नहीं था।

+0

मैं पुष्टि कर सकता हूं कि यह समस्या का कारण था, एक खाली आधार वस्तु। – sorin

संबंधित मुद्दे