DESCRIPTION

       Apache::AuthCookieDBIRadius is a module that subclasses Apache::AuthCookie
       and is designed to be directly used for authentication in a mod_perl
       server.

       It allows you to authenticate against a DBI database -OR- your trusted NT domains
       via a Radius server using a login webpage via AuthCookie.

       It is a ticket-issuing system that looks up username/passwords in a DBI
       database using generic SQL and issues MD5-checksummed tickets valid for
       a configurable time period.  Incoming requests with tickets are
       checksummed and expire-time checked.

       Upon failure, it then checks a Radius server for authentication.
       (You do not need to run a Radius server to use this.  Actually,
       Radius authentication is commented out by default.  Uncomment the
       Radius lines in AuthCookieDBIRadius.pm if you intend to use this method
       along with a DBI database.  Most won't be using this method.  You'll need to
       get Radius authentication working first before using AuthCookieDBIRadius.
       See Apache-AuthenRadius, Authen::Radius and http://www.funk.com/radius/.)

       Included is a sample httpd.conf and login.pl for your review.


AUTHCOOKIE

       Also included is a slightly customized AuthCookie.pm based on AuthCookie 3.0.
       Replace with your existing AuthCookie.pm for added customized error messages:

       # Please enter your username and password (default message).

       # Incorrect Password.

       # Incorrect Username (although some say this isn't a good idea, it can
         be easily changed to Incorrect Login for the password and username).

       # ERROR! Your session has expired, or your login does not have the proper
         access level for this webpage.

       # ERROR! Security error. Too many attempts (shared memory remembers how
         many times the user has failed to login, locking them out after
         X times).

       # Internal Server Error (usually from an error in the configuration.
         Error number will tell you exactly where you went wrong.)

       # ERROR! No Password Supplied.

       # ERROR! No Username Supplied.

       # ERROR! Password did not match.

       # ERROR! Authentication Failure (meaning DBI and Radius failed).


       Grab $TICKET from the %ENV:

  $TICKET = $ENV{TICKET} || $ENV{REDIRECT_TICKET};
  @split = split(/:/, $TICKET);
  # userid:2000-10-04-09-50-14:2000-10-05-09-50-14:y:y:y:y:n:n:n:n:2852b07llladf
  # 0 = Username
  # 1 = issue date
  # 2 = expiration date
  # 3 = activeuser
  # 4 = a
  # 5 = b
  # 6 = c
  # 7 = d
  # 8 = e
  # 9 = f
       # 10 = g
  # 10 = key

       Now you can issue content based on the users access level.



DEMO

       AuthCookieDBIRadius is currently in production at http://www.s1te.com/secure/.



SEE ALSO

       perldoc Apache::AuthCookieDBIRadius
       Apache::AuthCookie
       Apache::AuthCookieDBI