The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Dancer::Plugin::LDAP - LDAP plugin for Dancer micro framework

VERSION

Version 0.0050

SYNOPSIS

    use Dancer;
    use Dancer::Plugin::LDAP;

    # Calling the ldap keyword returns you a LDAP handle
    $ldap = ldap;

    # Use convenience methods for retrieving, updating and deleting LDAP entries
    $account = ldap->quick_select({dn => 'uid=racke@linuxia.de,dc=linuxia,dc=de'});

    ldap->quick_update('uid=racke@linuxia.de,dc=linuxia,dc=de', {l => 'Vienna'});

    ldap->quick_delete('uid=racke@linuxia.de,dc=linuxia,dc=de');

DESCRIPTION

Provides an easy way to obtain a connected LDAP handle by simply calling the ldap keyword within your Dancer application.

Returns a Dancer::Plugin::LDAP::Handle object, which is a subclass of a Net::LDAP handle object, so it does everything you'd expect to do with Net::LDAP, but also adds a few convenience methods. See the documentation for Dancer::Plugin::LDAP::Handle for full details of those.

This plugin is compatible to Dancer 1 and Dancer 2.

TEXT SEARCHES

Need to run a text search across your LDAP directory? This plugin provides a quick way to do that:

    for (qw/uid sn givenName c l/) {
        $search{$_} = [substr => $args{search}];
    }

    @entries = ldap->quick_select({-or => \%search});

UTF-8

Attribute values returned by the "quick_select" in Dancer::Plugin::LDAP::Handle method are automatically converted to UTF-8 strings.

CONFIGURATION

    plugins:
        LDAP:
            uri: 'ldap://127.0.0.1:389/'
            base: 'dc=linuxia,dc=de'
            bind: cn=admin,dc=linuxia,dc=de
            password: nevairbe

AUTHOR

Stefan Hornburg (Racke), <racke at linuxia.de>

CONTRIBUTING

This module is developed on Github at:

https://github.com/racke/Dancer-Plugin-LDAP

Feel free to fork the repo and submit pull requests! Also, it makes sense to watch the repo on GitHub for updates.

Feedback and bug reports are always appreciated. Even a quick mail to let me know the module is useful to you would be very nice - it's nice to know if code is being actively used.

ACKNOWLEDGEMENTS

David Precious for providing the great Dancer::Plugin::Database, which helped me a lot in terms of ideas and code to write this plugin.

Marco Pessotto for fixing update of attributes with empty value.

BUGS

Please report any bugs or feature requests to bug-dancer-plugin-ldap at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Dancer-Plugin-LDAP. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc Dancer::Plugin::LDAP

You can also look for information at:

You can find the author on IRC in the channel #dancer on <irc.perl.org>.

LICENSE AND COPYRIGHT

Copyright 2011-2013 Stefan Hornburg (Racke).

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

SEE ALSO

Dancer

Net::LDAP