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.
- 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.
