pam_sm_authenticate(3pam) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

pam_sm_authenticate(3pam)

pam_sm_authenticate(3PAM)    PAM Library Functions   pam_sm_authenticate(3PAM)

NAME
       pam_sm_authenticate - service provider implementation for pam_authenti‐
       cate

SYNOPSIS
       cc [ flag... ] file... -lpam [ library... ]
       #include <security/pam_appl.h>
       #include <security/pam_modules.h>

       int pam_sm_authenticate(pam_handle_t *pamh, int flags,
            int argc, const char **argv);

DESCRIPTION
       In  response  to  a  call  to pam_authenticate(3PAM), the PAM framework
       calls pam_sm_authenticate() from the modules listed in the  pam.conf(5)
       file  or  the  relevant  /etc/pam.d/service  file.  The  authentication
       provider supplies the back-end functionality for this  interface  func‐
       tion.


       The  pam_sm_authenticate() function is called to verify the identity of
       the current user. The user is usually required to enter a  password  or
       similar  authentication  token depending upon the authentication scheme
       configured within the system. The user in question is  specified  by  a
       prior  call to pam_start(3PAM), and is referenced by the authentication
       handle pamh.


       If the user is unknown to the authentication service, the service  mod‐
       ule  should mask this error and continue to prompt the user for a pass‐
       word. It should then return the error, PAM_USER_UNKNOWN.


       The following flags may be passed in to pam_sm_authenticate():

       PAM_SILENT                   The authentication service should not gen‐
                                    erate any messages.


       PAM_DISALLOW_NULL_AUTHTOK    The authentication service should return


       PAM_AUTH_ERR                 The user has a null authentication token.



       The argc argument represents the number of  module  options  passed  in
       from the configuration file pam.conf(5) or the relevant /etc/pam.d/ser‐
       vice  file.  The  argv argument specifies the module options, which are
       interpreted and processed by the authentication service.  Please  refer
       to  the specific module man pages for the various available options. If
       any unknown option is passed in, the module should log  the  error  and
       ignore the option.


       Before  returning, pam_sm_authenticate() should call pam_get_item(3PAM)
       and retrieve PAM_AUTHTOK. If it has not been set before and  the  value
       is NULL, pam_sm_authenticate() should set it to the password entered by
       the user using pam_set_item(3PAM).


       An authentication module may save the authentication status (success or
       reason  for  failure)  as  state  in  the  authentication  handle using
       pam_set_data(3PAM). This information is intended for  use  by  pam_set‐
       cred(3PAM).

RETURN VALUES
       Upon  successful completion, PAM_SUCCESS must be returned. In addition,
       the following values may be returned:

       PAM_MAXTRIES             Maximum number of authentication attempts  ex‐
                                ceeded.


       PAM_AUTH_ERR             Authentication failure.


       PAM_CRED_INSUFFICIENT    Cannot  access  authentication data due to in‐
                                sufficient credentials.


       PAM_AUTHINFO_UNAVAIL     Underlying authentication service can not  re‐
                                trieve authentication information.


       PAM_USER_UNKNOWN         User  not  known  to underlying authentication
                                module.


       PAM_IGNORE               Ignore underlying  authentication  module  re‐
                                gardless  of  whether  the control flag is re‐
                                quired, optional, or sufficient.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE  TYPEAT‐
       TRIBUTE VALUE _ Interface StabilityCommitted _ MT-LevelMT-Safe with ex‐
       ceptions



       The  interfaces  in  libpam  are MT-Safe only if each thread within the
       multithreaded application uses its own PAM handle.

SEE ALSO
       libpam(3LIB),  pam(3PAM),  pam_authenticate(3PAM),  pam_get_item(3PAM),
       pam_set_data(3PAM),        pam_set_item(3PAM),       pam_setcred(3PAM),
       pam_sm(3PAM), pam_start(3PAM), pam.conf(5), attributes(7)

NOTES
       Modules should not retry the authentication in the event of a  failure.
       Applications  handle  authentication  retries  and  maintain  the retry
       count. To limit the number of retries, the module can return a PAM_MAX‐
       TRIES error.


       If the PAM_REPOSITORY  item_type is set and a service module  does  not
       recognize  the  type,  the service module does not process any informa‐
       tion, and returns PAM_IGNORE. If the PAM_REPOSITORY  item_type  is  not
       set, a service module performs its default action.

HISTORY
       The pam_sm_authenticate()  API was introduced in Solaris 2.6.

Oracle Solaris 11.4               15 Mar 2023        pam_sm_authenticate(3PAM)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3