LdapNgPlugin

Powered by
WikiRing Consultants
This plugin provides an interface to query an LDAP directory and display the results in a TWiki topic. It is a complete rewrite of the TWiki:Plugins/LdapPlugin by TWiki:Main.GerardHickey to provide greater flexibility and performance based on the TWiki:Plugins/LdapContrib package.

Syntax Rules

LDAP

%LDAP{(filter=)"filter" ...}%
Query an LDAP directrory.

Parameters:

  • filter: the LDAP query string
  • host: host IP or name to connect to
  • port: port to of the host
  • version: protocol version; possible values: 2,3
  • ssl: use ssl to bind to the server; possible values 0,1
  • base: base dn of the (sub)tree to search in; if base is written in brackets (e.g. 'base="(ou=people)"') then it is prepended to the default base of the LdapContrib
  • scope: scope of search; possible values: sub, base, one
  • format: format string used to display a database record
  • header: header to prepend the output; default: '$dn'
  • footer: footer to appended to the output
  • sep: separator between database records; default: '$n'
  • sort: name of attributes to sort the output
  • reverse: reverse the result set; possible values: on, off; default: off
  • limit: maximum number of records to return; default: 0 (unlimited)
  • skip: number of records in the hit set to skip before displaying them; default: 0
  • hidenull: wether to hide any output on an empty hit set; possible values: on, off; default: off
  • clear: comma separated list of attributes to be removed from the output if they are not resolved

Cgi Parameters:

  • refresh: refresh the cache of blobs (i.e. jpegPhotos); possible values: on, off; default: off; (right now only the jpegPhoto attribute is recognized as a blob)

The header, format and footer format strings may contain the following variables:

  • $percnt: % sign
  • $dollar: $ sign
  • $n: newline
  • $count: the number of hits
  • $index: the record number
  • $<attr-name>: the value of the record attribute <attr-name>

LDAPUSERS

%LDAPUSERS{...}%
List all LDAP userinformation. Information is drawn from cache and not from the LDAP server. Use ?refreshldap=on to update.

Parameters:

  • format: format string used to display a user record
  • header: header to prepend the output
  • footer: footer to appended to the output
  • sep: separator between database records; default: '$n'
  • limit: maximum number of records to return; default: 0 (unlimited)
  • skip: number of records in the hit set to skip before displaying them; default: 0
  • include: regular expression a user's WikiName must match to be included in the output
  • exclude: regular expression a user's WikiName must not match
  • hideunknown: on/off, enable/disable filtering out users that did not log in yet and thus have no hometopic (e.g. created by TWiki:Plugins/NewUsersPlugin), defaults to 'on'

The format string may contain the following variables:

  • $percnt: % sign
  • $dollar: $ sign
  • $n: newline
  • $index: the record number
  • $wikiName: the user's WikiName
  • $loginName: the user's login name
  • $displayName: a link pointing to the users hometopic in the Main web, if it exists, and '<nop>$wikiName' otherwise
  • $emails: the list of all known email addresses

Examples

ERROR: 32: No such object

ERROR: 32: No such object

  1. AlbertRemke
  2. AlexanderKmoch
  3. AndreasWytzisk
  4. AnnHitchcock
  5. ArneDeWall
  6. BenediktGraeler
  7. BenjaminPross
  8. CarstenHollmann
  9. ChristianAutermann
  10. ChristopheNoel
  11. CorneliaMueller
  12. DanielNuest
  13. DustinDemuth
  14. EdzerPebesma
  15. EikeHinderkJuerrens
  16. EvaPeters
  17. FelixBache
  18. GregoireDubois
  19. HenningBredel
  20. HolgerFritze
  21. JanDrewnak
  22. JanSchulte
  23. JensVoigt
  24. KarstenFriedrich
  25. KristianSenkler
  26. LarsBernard
  27. MartinSchouwenburg
  28. MatthesRieke
  29. MatthiasHinz
  30. RaimundSchnuerer
  31. RaphaelRupprecht
  32. SarahHarvey
  33. ShubhamSachdeva
  34. SimonJirka
  35. StefanBlume
  36. WitoldArndt

Plugin Settings

The LdapNgPlugin will use the default configuration of the LdapContrib in your LocalSite.cfg file, that is

  • $TWiki::cfg{Ldap}{Host} (overridable per query)
  • $TWiki::cfg{Ldap}{Port} (overridable per query)
  • $TWiki::cfg{Ldap}{Base} (overridable per query)
  • $TWiki::cfg{Ldap}{Version} (overridable per query)
  • $TWiki::cfg{Ldap}{SSL} (overridable per query)
  • $TWiki::cfg{Ldap}{BindDN}
  • $TWiki::cfg{Ldap}{BindPasswd}

Plugin Installation Instructions

  • Download the ZIP file from the Plugin web (see below)
  • Unzip LdapNgPlugin.zip in your twiki installation directory. Content:
    File: Description:
    data/TWiki/LdapNgPlugin.txt  
    lib/TWiki/Plugins/LdapNgPlugin/Core.pm  
    lib/TWiki/Plugins/LdapNgPlugin.pm  

  • Optionally, run LdapNgPlugin_installer.pl to automatically check and install other TWiki modules that this module depends on. You can also do this step manually.
  • Alternatively, manually make sure the dependencies listed in the table below are resolved.
NameVersionDescription
TWiki::Plugins>=1.1TWiki Dakar release.
TWiki::Contrib::LdapContrib>=2.0Required
Unicode::MapUTF8>=1.11Required. Download from CPAN:Unicode::MapUTF8

Plugin Info

This work was partly funded by Spanlink Communications.
Plugin Author: TWiki:Main.MichaelDaum
Copyright ©: 2006-2007 Michael Daum http://wikiring.de
License: GPL (GNU General Public License)
Plugin Version: v2.01
Change History:  
13 Nov 2007: fixed $nop
01 Oct 2007: added LDAPUSERS, lined up to changes in LdapContrib-2.0
04 June 2007: don't convert from/to utf8 if the site charset is already utf8
18 Dec 2006: added support for addresses as specified in RFC4517
04 Dec 2006: map utf8 strings from LDAP to the site's encoding and vice versa
30 Nov 2006: replaced commonTagsHandler with a properly registered LDAP tag
31 Aug 2006: added NO_PREFS_IN_TOPIC
19 Jul 2006: public release
25 April 2006: Initial (internal) version
Perl Version: 5.8
TWiki:Plugins/Benchmark: GoodStyle nn%, FormattedSearch nn%, LdapNgPlugin nn%
Plugin Home: TWiki:Plugins/LdapNgPlugin
Feedback: TWiki:Plugins/LdapNgPluginDev

-- TWiki:Main/MichaelDaum - 13 Nov 2007

Tags:
create new tag
, view all tags
Topic revision: r2 - 2010-01-23 - 00:19:37 - TWikiAdminUser

 
  • Search: 
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Note: Please contribute updates to this topic on TWiki.org at TWiki:TWiki.LdapNgPlugin