NAME
     Apache::AuthzNIS - mod_perl NIS Group Authorization module

SYNOPSIS
         <Directory /foo/bar>
         # This is the standard authentication stuff
         AuthName "Foo Bar Authentication"
         AuthType Basic

         # The following is actually only needed when you will authenticate
         # via NIS passwd as well as authorize via NIS group.
         # Apache::AuthenNIS is a separate module.
         PerlAuthenHandler Apache::AuthenNIS

         # Standard require stuff, NIS users or groups, and
         # "valid-user" all work OK
         require user username1 username2 ...
         require group groupname1 groupname2 ...
         require valid-user

         PerlAuthzHandler Apache::AuthzNIS

         </Directory>

         These directives can also be used in the <Location> directive or in
         an .htaccess file.


DESCRIPTION
     This perl module is designed to work with mod_perl, the
     Net::NIS module by Rik Haris (rik.harris@fulcrum.com.au),
     and the Apache::AuthenNIS module by Demetrios E. Paneras
     (dep@media.mit.edu).  It is a direct adaptation (i.e. I
     modified the code) of Michael Parker's
     (parker@austx.tandem.com) Apache::AuthenSmb module (which
     also included an authorization routine).

     The module calls Net::NIS::yp_match using each of the
     require group elements as keys to the the group.byname map,
     until a match with the (already authenticated) user is
     found.

     For completeness, the module also handles require user and
     require valid-user directives.

     Apache::AuthenNIS vs. Apache::AuthzNIS

     I've taken "authentication" to be meaningful only in terms
     of a user and password combination, not group membership.
     This means that you can use Apache::AuthenNIS with the
     require user and require valid-user directives.  In the NIS
     context I consider require group to be an "authorization"
     concern.  I.e., Group authorization consists of establishing
     whether the already authenticated user is a member of one of
     the indicated groups in the require group directive.  This
     process may be handled by Apache::AuthzNIS.

     I welcome any feedback on this module, esp. code
     improvements, given that it was written hastily, to say the
     least.

AUTHOR
     Demetrios E. Paneras <dep@media.mit.edu>

COPYRIGHT
     Copyright (c) 1998 Demetrios E. Paneras, MIT Media
     Laboratory.

     This library is free software; you can redistribute it
     and/or modify it under the same terms as Perl itself.
