TIPS > パスワードマスク

パスワードをマスクするためにはhighlineを使うのが良さそうです。
以下のようにsttyを利用する方法は手軽ですがwindowsでは実施できません。
system "stty -echo"
password = gets
system "stty echo"

あらかじめ以下のようにしてhighlineを導入しておきます。
gem install highline

以下のコードを実行するとマスクされたパスワードを読み込みます。
  • highlineが入っていない場合はgetsします。
  • q.echo = falseとするとパスワード入力時の表示をしません。

require 'rubygems'
 
begin
  gem 'highline'
  require 'highline'
 
  password = HighLine.new.ask('') { |q| q.echo = '*' }
rescue Gem::LoadError => e
  password = gets
end
 
puts password
最終更新:2010年11月06日 11:08