16.9. getpass
— 可搬性のあるパスワード入力機構¶
ソースコード: Lib/getpass.py
getpass
モジュールは二つの関数を提供します:
-
getpass.
getpass
(prompt='Password: ', stream=None)¶ エコーなしでユーザーにパスワードを入力させるプロンプト。ユーザーは prompt の文字列をプロンプトに使え、デフォルトは
'Password: '
です。 Unixではプロンプトはファイルに似たオブジェクト stream へ、必要なら置き換えられたエラーハンドラを使って出力されます。 stream のデフォルトは、制御端末(/dev/tty
)か、それが利用できない場合はsys.stderr
です (この引数は Windowsでは無視されます)。もしエコーなしで入力が利用できない場合は、
getpass()
は stream に警告メッセージを出力し、sys.stdin
から読み込み、GetPassWarning
警告を発生させます。注釈
IDLE から getpass を呼び出した場合、入力はIDLEのウィンドウではなく、IDLE を起動したターミナルから行われます。
-
exception
getpass.
GetPassWarning
¶ UserWarning
のサブクラスで、入力がエコーされてしまった場合に発生します。
-
getpass.
getuser
()¶ ユーザーの "ログイン名"を返します。
この関数は環境変数
LOGNAME
USER
LNAME
USERNAME
の順序でチェックして、最初の空ではない文字列が設定された値を返します。もし、なにも設定されていない場合はpwd
モジュールが提供するシステム上のパスワードデータベースから返します。それ以外は、例外が上がります。一般的に、この関数は
os.getlogin()
よりも優先されるべきです。