\section{Authentication Process}

\begin{frame}
   {Authentication and Configuration Files}

   \begin{itemize}
      \item A user invokes a \textbf{PAM}-aware application,
      such as \textbf{login}, \textbf{ssh}, or \textbf{su}.
      \item The application calls \textbf{libpam}.
      \item The library checks for files in
      \filelink{/etc/pam.d}; these delineate which
      \textbf{PAM} modules to invoke, including
      \textbf{system-auth}.
      \item Each referenced module is executed in accordance
      with the rules of the relevant configuration file for
      that application.
   \end{itemize}

\end{frame}

\cprotect\note{

   Each file in \filelink{/etc/pam.d} corresponds to a
   \textbf{service} and each (non-commented) line in the
   file specifies a rule. The rule is formatted as a list
   of space separated tokens, the first two of which are
   case insensitive:
   \begin{kcode}
type control module-path module-arguments
   \end{kcode}

   As an example, here are the contents of
   \filelink{/etc/pam.d/su} on an \textbf{RHEL} system:

   \begin{figure}[H]
      \includegraphics[width=6.5in]{IMAGES/pamsu}
      \caption{PAM Configuration Files}
   \end{figure}
   \vspace{-24pt}
   Notice there is a stack here; \texttt{su} will require
   loading of \texttt{system-auth} etc.

}



