Plug-in-fähige Authentifizierungsmodule
Das PAM-Framework (Pluggable Authentication Module, Plug-in-fähiges Authentifizierungsmodul) bietet Systemadministratoren die Möglichkeit, durch die Verwendung von Plug-in-Modulen mehrere Authentifizierungsverfahren in ein vorhandenes System zu integrieren.
Anwendungen, die für die Verwendung von PAM aktiviert sind, können in neue Technologien eingefügt werden, ohne dass die vorhandenen Anwendungen geändert werden müssen. Diese Flexibilität ermöglicht es Administratoren, Folgendes zu tun:
- Auswahl eines Authentifizierungsservice auf dem System für eine Anwendung
- Verwendung mehrerer Authentifizierungsverfahren für einen bestimmten Service
- Hinzufügen neuer Authentifizierungsservicemodule, ohne vorhandene Anwendungen zu ändern
- Verwendung eines zuvor eingegebenen Kennworts für die Authentifizierung mit mehreren Modulen
Das PAM-Framework besteht aus einer Bibliothek, Plug-in-Modulen und einer Konfigurationsdatei. Die PAM-Bibliothek implementiert die PAM-Anwendungsprogrammierschnittstelle (API) und dient zur Verwaltung von PAM-Transaktionen und zum Aufrufen der PAM-Service-Programmierschnittstelle (SPI), die in den Plug-in-Modulen definiert ist. Plug-in-Module werden auf der Basis des aufrufenden Service und des zugehörigen Eintrags in der Konfigurationsdatei dynamisch von der Bibliothek geladen. Der Erfolg wird nicht nur vom Plug-in-Modul, sondern auch von dem für den Service definierten Verhalten bestimmt. Über das Konzept von Stapeln kann ein Service für die Authentifizierung über mehrere Authentifizierungsmethoden konfiguriert werden. Wenn diese Option unterstützt wird, können Module auch so konfiguriert werden, dass sie ein zuvor übergebendes Kennwort verwenden und nicht zur Eingabe zusätzlicher Eingaben auffordern.
- login
- passwd
- su
- ftp
- telnet
- rlogin
- rexec
- rsh
- snappd
- imapd
- dtaction
- dtlogin
- dtsession
In der folgenden Abbildung ist die Interaktion zwischen PAM-fähigen Anwendungen, PAM-Bibliothek, Konfigurationsdatei und PAM-Modulen auf einem System dargestellt, das für die Verwendung von PAM konfiguriert wurde. Die PAM-fähigen Anwendungen rufen die PAM-API in der PAM-Bibliothek auf. Die Bibliothek bestimmt das entsprechende Modul, das auf der Basis des Anwendungseintrags in der Konfigurationsdatei geladen werden soll, und ruft die PAM-SPI im Modul auf. Die Kommunikation erfolgt zwischen dem PAM-Modul und der Anwendung durch die Verwendung einer Dialogfunktion, die in der Anwendung implementiert ist. Der Erfolg oder Fehler aus dem Modul und das in der Konfigurationsdatei definierte Verhalten bestimmen dann, ob ein anderes Modul geladen werden muss. Wenn dies der Fall ist, wird der Prozess fortgesetzt. Andernfalls wird das Ergebnis an die Anwendung zurückgegeben.
