LinuxでSudoを試してみるとパスワードを入力するように指示され、入力時に端末ウィンドウに何も表示されません(パスワードは表示されません)。Pythonでコマンドラインパスワードを入力する
Pythonでこれを行う方法はありますか?私はそれほど機密情報を必要とするスクリプトに取り組んでおり、入力時に隠されるようにしたいと考えています。
つまり、パスワードを表示せずにユーザーからパスワードを取得したいと考えています。
LinuxでSudoを試してみるとパスワードを入力するように指示され、入力時に端末ウィンドウに何も表示されません(パスワードは表示されません)。Pythonでコマンドラインパスワードを入力する
Pythonでこれを行う方法はありますか?私はそれほど機密情報を必要とするスクリプトに取り組んでおり、入力時に隠されるようにしたいと考えています。
つまり、パスワードを表示せずにユーザーからパスワードを取得したいと考えています。
getpass.getpass()
を使用してください。
getpassを使用してください。
getpass.getpass - これは、Linux、Windows、およびMac上で動作します
import getpass
pswd = getpass.getpass('Password:')
をエコーせずにパスワードの入力をユーザーにプロンプトを表示。
明らかに、オペレーティングシステムを追加することは、投稿の[アドレッシング](http://stackoverflow.com/review/suggested-edits/15845407)ですので、ここではMacで動作することを説明しますOSも同様です。 – JakeD
import getpass
p=str("null") #user's input start value
pas=str("password") #password value
while p!=pas:
p=getpass.getpass("Insert your password: ") #password input
print("ay") #when you get the password, the output is "ay"
あなたは[PEP 8](https://www.python.org/dev/peps/pep-0008/)を読むべきです –
import sys
import msvcrt
passwor = ''
while True:
x = msvcrt.getch()
if x == '\r':
break
sys.stdout.write('*')
passwor +=x
print '\n'+passwor
このコードではなく、すべての文字
これはウィンドウだけですが、少なくとも「getpass」答えを繰り返すわけではありません。良い –
のアストリックスが動作する印刷されますが、どのように1は、スクリプトのコピーを作成して、行をコメントアウトします「ハッカー」のように注意してくださいすることができますユーザーのパスワードが必要ですか? – asf107
@ asf107:ハッカーがソースコードを編集できる場合、心配する他の問題があります。 – DSM
@ asf107 - パスワードを要求する背後にあるアイデアは、何かを使って認証するために渡すことができるようにすることです(私はこれを使って、オンラインサーバーで認証するためのパスワードを要求しています)。ハッカーが行をコメントアウトした場合、サーバーはもはや認証されないため、プログラムは単に失敗します。 'getpass()'の背後にある考え方は、誰もソースコードを見て、それを読むだけで誰もがパスワードを見つけることができないようにすることで、誰もあなたの肩を見つめてパスワードを読むことができます。それを入力してください。 – ArtOfWarfare