Re: Using back-ldap as a client-side proxy/cache
Howard Chu <[email protected]> Thu, 25 Mar 2010 01:15:43 -0700
| Newsgroups | gmane.network.openldap.general |
|---|---|
| Message-ID | <[email protected]> |
Neil Dunbar wrote: > > On 7 Mar 2010, at 23:28, Howard Chu wrote: > >> >>> And while nssov is really cute, since it exists in the same process space as >>> slapd, it doesn't end up triggering the pcache, which does gets fired upon >>> incoming LDAP requests from an external process (nslcd). It's probably that I >>> just suck, and didn't configure slapd quite right, but that's why I ended up >>> still using nslcd and slapd on the same box. >> >> Hm, you probably have them configured in the wrong order. I specifically >> designed nssov and pcache to work together, and they do. > > OK - I'm stuck: yes - I realise I suck, but at the moment, I'm just spinning > on this one. Howard/Quanah/anyone - can you post a sample config which lashes > together nssov and pcache? At least it would help me see what's supposed to be > the order of events. > > I think my config is about as simple as it gets, back-ldap proxying to our > real directory, then loading nssov, then pcache on a BDB backend (Although > I've tried reversing pcache and nssov to no avail). pcache configured to cache > the filters issued from nslcd/nssov. > > The nssov overlay works perfectly - fetching passwd and group databases from > the directory like a champ. > > Similarly, if I do an ldapsearch on the proxy, using the nslcd filters - all > is well, the local cache DB gets populated, with the right indices. If I fire > up nslcd pointing to ldapi:///, I get the both the system databases working > and caching working fine. > > But nssov just doesn't seem to find its way through to the pcache. I can post > the config - but it's pretty much identical to the ones in Symas's AAA paper. > It's so annoying - I absolutely believe that I'm about a heartbeat away from > getting it cracked, but the final solution is beyond my tired brain. This is the essence of it: database ldap suffix "dc=example,dc=com" rootdn "dc=example,dc=com" rootpw "secret" uri "ldap://localhost:9011/" overlay pcache proxycache bdb 100 2 6 1m proxyattrset 0 uid userPassword uidNumber gidNumber gecos cn homeDirectory loginShell objectClass proxyattrset 1 cn userPassword gidNumber memberUid uniqueMember objectClass proxytemplate (&(objectclass=)(uid=)) 0 3600 proxytemplate (&(objectclass=)(uidnumber=)) 0 3600 proxytemplate (&(objectclass=)(gidnumber=)) 1 3600 proxytemplate (&(objectclass=)(|(memberuid=)(uniquemember=))) 1 3600 response-callback head cachesize 20 directory /home/hyc/OD/hobj/tests/testrun/db.2.a index objectClass eq index cn,sn,uid,mail pres,eq,sub index uidnumber,gidnumber,uniquemember,memberuid eq overlay nssov -- -- Howard Chu CTO, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc/ Chief Architect, OpenLDAP http://www.openldap.org/project/