有効なUNIXアカウントに対応するユーザー名とパスワードを検証したいと思います。
私が使用している現在の解決策は、パスワードプロンプトを待ってからパスワードを入力し、ログインが成功するかどうかを確認することを期待しています。
ログイン/パスワードを検証できるカーネルAPIまたはユーザースペース関数はありますか?.
私の混乱の一部は、これがカーネルスペースサービスであるかどうかわからないことだと思いますか?
Pamを使用する必要があります。 debian/ubuntuでは、次のことができます。
apt-get install python-pam
pythonpamtest.py の単純なコード:
/usr/share/doc/python-pam/examples/pamtest.py
ファイルを参照してください。それは本当に短く、あなたが望むことをします。
それをテストするには、以下を実行します。
python /usr/share/doc/python-pam/examples/pamtest.py
[〜#〜] c [〜#〜]pamexample.c にも例があります。
それをテストするには:
gcc /usr/share/doc/python-pam/examples/pamexample.c -lpam -l pam_misc
./pam_misc theuser
厳密にはユーザースペース です。
ユーザーの資格情報が適切かどうかを確認するには、ユーザーとしてログを記録してみてください。
su-ユーザー名
しかし、PAMについて読むことは、長期的にはより良いルートかもしれません