Leider gibt es dafür nur wenige transparente Methoden.
In einem zentral verwalteten Netzwerk können Sie Kerberos möglicherweise mit mod_auth_gssapi oder mod_auth_kerb auf der Webserver-Seite (auch als "HTTP Negotiate" bezeichnet) verwenden. Kerberos ist sehr sicher, kann jedoch für die Verwendung im Web schwierig zu konfigurieren sein (nicht alle Browser unterstützen es und nur einige erlauben es standardmäßig).
Wenn alle Computer vertrauenswürdig sind (dh es wird garantiert, dass Benutzer keine Root-Software installieren), ist das Ident-Protokoll (RFC 1413) eine Möglichkeit, die Authentifizierung ist jedoch sehr schwach.
In den meisten Fällen besteht die einzige Möglichkeit darin, nach einem Kennwort zu fragen.
Wenn die Benutzer über Konten verfügen
/etc/passwd
, wie in Ihrem Kommentar erwähnt, ist das Ausführen eines privilegierten Programms leider die einzige Möglichkeit, ein erhaltenes Kennwort zu überprüfen/etc/shadow
.Wenn Sie dies tun, schreiben Sie nicht Ihre eigenen Skripts durch
sudo
, da Sie wird der Eingabevalidierung falsch beim ersten Mal, und weil es bereits ein gelöstes Problem. Wähle etwas Bekanntes aus, zum Beispiel Cyrussaslauthd
(das im-a pam
Modus laufen kann); Auf diese Weise benötigt Ihre Website keine anderen Berechtigungen als die Verbindung zumsaslauthd
Socket.