logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Authen::Simple::ActiveDirectory - Simple ActiveDirectory authentication

Author

       Christian Hansen "chansen@cpan.org"

Description

       Authenticate against Active Directory.

       This implementation differs from Authen::Simple::LDAP in way that it will try to bind directly as the
       users principial.

Methods

       •   new

           This method takes a hash of parameters.  The following options are valid:

           •       host

                   Connection host, can be a hostname, IP number or a URI. Defaults to "localhost".

                       host => ldap.company.com
                       host => 10.0.0.1
                       host => ldap://ldap.company.com:389
                       host => ldaps://ldap.company.com

           •       port

                   Connection port, default to 389. May be overridden by host if host is a URI.

                       port => 389

           •       timeout

                   Connection timeout, defaults to 60.

                       timeout => 60

           •       principal

                   The suffix in users principal, usally the domain or forrest. Required.

                       principal => 'company.com'

           •       log

                   Any object that supports "debug", "info", "error" and "warn".

                       log => Log::Log4perl->get_logger('Authen::Simple::ActiveDirectory')

       •   authenticate( $username, $password )

           Returns true on success and false on failure.

Name

       Authen::Simple::ActiveDirectory - Simple ActiveDirectory authentication

See Also

       Authen::Simple::LDAP.

       Authen::Simple.

       Net::LDAP.

Synopsis

           use Authen::Simple::ActiveDirectory;

           my $ad = Authen::Simple::ActiveDirectory->new(
               host      => 'ad.company.com',
               principal => 'company.com'
           );

           if ( $ad->authenticate( $username, $password ) ) {
               # successfull authentication
           }

           # or as a mod_perl Authen handler

           PerlModule Authen::Simple::Apache
           PerlModule Authen::Simple::ActiveDirectory

           PerlSetVar AuthenSimpleActiveDirectory_host      "ad.company.com"
           PerlSetVar AuthenSimpleActiveDirectory_principal "company.com"

           <Location /protected>
             PerlAuthenHandler Authen::Simple::ActiveDirectory
             AuthType          Basic
             AuthName          "Protected Area"
             Require           valid-user
           </Location>

See Also