module PAM

Le module PAM (pluggable authentication module) fournit aux administrateurs système la possibilité d'intégrer plusieurs mécanismes d'authentification dans un système existant via l'utilisation de modules connectables.

Les applications activées pour utiliser PAM peuvent être Plugged-in pour les nouvelles technologies sans modifier les applications existantes. Cette flexibilité permet aux administrateurs de procéder comme suit :

  • Sélectionnez un service d'authentification sur le système pour une application
  • Utiliser plusieurs mécanismes d'authentification pour un service donné
  • Ajouter de nouveaux modules de service d'authentification sans modifier les applications existantes
  • Utiliser un mot de passe précédemment entré pour l'authentification avec plusieurs modules

L'infrastructure PAM comprend une bibliothèque, des modules connectables et un fichier de configuration. La bibliothèque PAM implémente l'interface de programme d'application (API) PAM et sert à gérer les transactions PAM et à appeler l'interface de programmation de service (SPI) de PAM définie dans les modules connectables. Les modules connectables sont chargés dynamiquement par la bibliothèque en fonction du service appelant et de son entrée dans le fichier de configuration. Le succès est déterminé non seulement par le module connectable mais également par le comportement défini pour le service. Grâce au concept d' empilement, un service peut être configuré pour s'authentifier via plusieurs méthodes d'authentification. Si elles sont prises en charge, les modules peuvent également être configurés pour utiliser un mot de passe précédemment soumis plutôt que d'afficher une demande d'entrée supplémentaire.

L'administrateur système peut configurer un système AIX pour qu'il utilise PAM en modifiant l'attribut " auth_type dans la strophe usw du fichier/etc/security/login.cfg. La définition de auth_type = PAM_AUTH configure les commandes compatibles PAM pour appeler l'API PAM directement pour l'authentification plutôt que d'utiliser les routines d'authentification AIX historiques. Cette configuration est une décision d'exécution et ne nécessite pas de réamorçage du système. Pour plus d'informations sur l'attribut auth_type , voir la référence du fichier /etc/security/login.cfg . Les commandes et applications AIX natives suivantes ont été modifiées pour reconnaître l'attribut auth_type et activées pour l'authentification PAM:
  • login
  • passwd
  • su
  • ftp
  • telnet
  • rlogin
  • rexec
  • rsh
  • snappd
  • imapd
  • dtaction
  • dtlogin
  • dtsession

La figure suivante présente l'interaction entre les applications compatibles PAM, la bibliothèque PAM, le fichier de configuration et les modules PAM sur un système configuré pour utiliser PAM. Les applications activées par PAM appellent l'API PAM dans la bibliothèque PAM. La bibliothèque détermine le module approprié à charger en fonction de l'entrée de l'application dans le fichier de configuration et appelle le PAM SPI dans le module. La communication se produit entre le module PAM et l'application via l'utilisation d'une fonction de conversation implémentée dans l'application. Le succès ou l'échec du module et le comportement défini dans le fichier de configuration déterminent ensuite si un autre module doit être chargé. Si c'est le cas, le processus se poursuit ; sinon, le résultat est renvoyé à l'application.

Figure 1 : Structure et entités PAM. Cette illustration montre comment les commandes activées par PAM utilisent la bibliothèque PAM pour accéder au module PAM approprié.