Sun Java System Communications Services 2005Q4 Versionshinweise

Durchsuchen von Verzeichnissen

Neu in dieser 7 2005Q4-Version ist, dass der Endbenutzer in Connector für Microsoft Outlook jetzt Verzeichnisse durchsuchen darf. Beim Aufrufen der Adressbuchseite werden die ersten 10 Einträge im Verzeichnis dargestellt. Der Benutzer kann dann nach oben und unten blättern oder einige Zeichen eingeben. Die Ergebnisse werden automatisch aktualisiert. Dies ist eine Änderung von den Vorgängerversionen von Connector für Microsoft Outlook, in denen der Benutzer lediglich nach einem bestimmten Benutzer suchen konnte.

Um diese Funktion zu aktivieren und gleichzeitig eine hohe Leistung zu gewährleisten, verlässt sich der Connector auf zwei LDAP-Erweiterungen namens Virtual List View (VLV) und Server Side Sorting von Suchergebnissen (RFC 2891). Im folgenden ldapsearch-Beispiel wird die Liste mit unterstützten Steuerelementen ausgegeben:

# ldapsearch -s base "objectclass=*" supportedControl 
supportedControl=2.16.840.1.113730.3.4.2 
supportedControl=2.16.840.1.113730.3.4.3 
supportedControl=2.16.840.1.113730.3.4.4 
supportedControl=2.16.840.1.113730.3.4.5 
supportedControl=1.2.840.113556.1.4.473  ------> Server Side Sort Control 
supportedControl=2.16.840.1.113730.3.4.9 ------> VLV Control 
supportedControl=2.16.840.1.113730.3.4.16 
supportedControl=2.16.840.1.113730.3.4.15 
supportedControl=2.16.840.1.113730.3.4.17 
supportedControl=2.16.840.1.113730.3.4.19 
supportedControl=1.3.6.1.4.1.42.2.27.9.5.2 
supportedControl=1.3.6.1.4.1.42.2.27.9.5.6 
supportedControl=2.16.840.1.113730.3.4.14 
supportedControl=1.3.6.1.4.1.1466.29539.12 
supportedControl=2.16.840.1.113730.3.4.12 
supportedControl=2.16.840.1.113730.3.4.18 
supportedControl=2.16.840.1.113730.3.4.13

Sun Java System Directory Server unterstützt beide Steuerelemente. Das VLV-Steuerelement steht standardmäßig nur authentifizierten Benutzern zur Verfügung:

ldapsearch -D "cn=Directory Manager" -b \
"oid=2.16.840.1.113730.3.4.9,cn=features,cn=config" \
"objectclass=*" aci oid=2.16.840.1.113730.3.4.9,cn=features,cn=config \
aci=(targetattr != "aci")(version 3.0; acl "VLV Request Control"; \
allow( read, search, compare, proxy ) userdn = "ldap:///all";)

Um dem VLV-Steuerelement anonymen Zugriff zu gewähren, fügen Sie die entsprechende ACI hinzu:

#ldapmodify -D "cn=Directory Manager" \
dn: oid=2.16.840.1.113730.3.4.9,cn=features,cn=config \
changetype: modify add: aci aci: (targetattr !="aci")\
(version 3.0; acl "VLV Request Control"; allow (compare,read,search) \
userdn = "ldap:///anyone"; )

Um die Leistung von Suchvorgängen zu verbessern, für die VLV plus Sort erforderlich ist, erstellen Sie einen Index zum Durchsuchen im Directory Server (wie im Abschnitt "Managing Browsing Indexing“ im Sun Java System Directory Server 5 2005Q1 Administration Guide beschrieben). Jeder Index zum Durchsuchen ist auf einen Basis-DN, einen Suchfilter, einen Bereich und ein Sortierattribut abgestimmt. Die VLV-Einstellungen können mit dem Bereitstellungs-Konfigurationstool auf Clientseite optimiert werden.

In diesem besonderen Fall muss ein Index zum Durchsuchen für einen Basis-DN erstellt werden, der dc=red,dc=iplanet,dc=com entspricht, einen Filter, der (&(mail=*)(cn=*)) entspricht, wobei nach dem cn-Attribut sortiert wird. Die Informationen des Index zum Durchsuchen werden der Konfiguration mit dem Basis-DN (in diesem Fall userRoot) hinzugefügt:

#ldapmodify -D "cn=Directory Manager" 
dn: cn=Browsing red.sesta.com,cn=userRoot, 
cn=ldbm database,cn=plugins,cn=config 
changetype: add 
objectClass: top 
objectClass: vlvSearch 
cn: Browsing red.sesta.com 
vlvbase: dc=red,dc=sesta,dc=com 
vlvscope: 2 
vlvfilter: (&(mail=*)(cn=*)) 
aci: (targetattr="*") 
(version 3.0; acl "VLV for Anonymous"; 
allow (read,search,compare) 
userdn="ldap:///anyone";) 
dn: cn=Sort by cn, cn=Browsing red.sesta.com,cn=userRoot, 
cn=ldbm database,cn=plugins,cn=config 
changetype: add 
objectClass: top 
objectClass: vlvIndex 
cn: Sort by cn 
vlvSort: cn 

Führen Sie in einem nächsten Schritt den Befehl vlvindex unter serverroot/slapd-instance aus:

# ./vlvindex -n userRoot -T "Sort by cn"