Ns_Auth


Ns_Auth(3)               AOLserver Library Procedures               Ns_Auth(3)



______________________________________________________________________________

NAME
       Ns_AuthorizeRequest, Ns_AuthorizeUser, Ns_SetRequestAuthorizeProc,
       Ns_SetUserAuthorizeProc - URL level HTTP authorization support

SYNOPSIS
       #include "ns.h"

       int
       Ns_AuthorizeRequest(char *server, char *method, char *url,
               char *user, char *passwd, char *peer)

       int
       Ns_AuthorizeUser(char *user, char *passwd)

       void
       Ns_SetRequestAuthorizeProc(char *server, Ns_RequestAuthorizeProc *procPtr)

       void
       Ns_SetUserAuthorizeProc(Ns_UserAuthorizeProc *procPtr)
_________________________________________________________________


DESCRIPTION
       These functions provide a means to create and use your own
       authorization mechanisms. They are used by the nsperm module to provide
       authentication and authorization of users to specific URLs.

       You can define your own authorization functions. For example, you might
       create functions that will authorize a user by their SSL client
       certificate and if that fails, then attempt to authorize the user by
       username and password.

       Ns_AuthorizeRequest(server, method, url,
                      user, passwd, peer)

              Used to call the function registered by
              Ns_SetRequestAuthorizeProc to authorize a user's access to the
              given method and URL. Possible return values are:

              NS_OK - The user's access is authorized

              NS_UNAUTHORIZED - Access is not public for this method or URL
              and either the user and password were not verified or the user
              does not have permission.

              NS_FORBIDDEN - There is no possible user/password combination
              that would give authorization.

              NS_ERROR - The authentication function could not perform the
              permission check.


       Ns_AuthorizeUser(user, passwd)

              Checks that the cleartext password is correct for the specified
              user. Returns NS_OK if it matches or NS_ERROR if it does not
              match or if no authorization procedure is registered.


       Ns_SetRequestAuthorizeProc(server, procPtr)

              Register the URL request authorization function. This function
              is called by Ns_AuthorizeRequest and should return one of the
              four values give above for Ns_AuthorizeRequest.

       Ns_SetUserAuthorizeProc(procPtr)

              Register the user authorization function. This function is
              called by Ns_AuthorizeUser and should return either NS_OK or
              NS_ERROR.


SEE ALSO
       nsd(1), info(n)


KEYWORDS
AOLserver                             4.0                           Ns_Auth(3)