NAME Apache::AuthzNIS - mod_perl NIS Group Authorization module SYNOPSIS # 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 These directives can also be used in the 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 Ported by Shannon Eric Peevey 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.