How to configure an OpenLDAP proxy server to cache all requests

Ok, this is a new OpenLDAP question, so bear with me. I could not find a direct answer on the websites, so we go:

Note. The ultimate goal is to create an OpenLDAP server as a proxy cache for a “single” request to get all the results in the main LDAP (if you are familiar with the DLL.Net DirectoryServices, the application simply calls FindAll () in LDAP).

I have it to such an extent that the proxy / cache shows the same results as the wizard (i.e. it proxies requests), however it does not seem to be cached. I say this for two reasons:

  • If I update the entry in the main LDAP, I will immediately see the updated value in the proxy (using the LDAP browser pointing to the proxy URL), even before the TTL expires.
  • If I turn off the LDAP wizard and make a proxy request, I get a connection exception. If I'm not mistaken, I should get a cached result instead (again, TTL has not expired).

Here's the OpenLDAP configuration file that I use for the proxy cache (on Windows, OpenLDAP v.2.4.23):


ldap database

uri "ldap: // MyPC"

suffix "dc = local"

rootdn "dc = local"

overlay pcache

proxycache bdb 1000 3 250 432000

directory. / cache

index objectclass eq

index cn eq, sub

proxycachequeries 100

proxyattrset 0 cn certificateRevocationList

proxytemplate (objectclass =) 0 600


A few great things:

  • "" LDAP proxyattrset. , / . FindAll(), , .
  • 5 (432000 ). , , . , TTL 10 (600 ) - , , - 10 ( ).

, :

  • OpenLDAP proxyattrset?
  • , LDAP, TTL? ? , , ?
+3

Source: https://habr.com/ru/post/1757857/


All Articles