Redmineの2要素SMS認証

画像

私の同僚が以前の記事のいずれかで約束したように、作業の一部としてRedmineで使用するための2要素SMS認証を設定した経験を共有します。



チケットシステムを使用する場合のデータセキュリティの強化と同じように、2番目の承認ステップを追加するという考えは正当化されます。

最初に、Google認証システムに基づくOTPシステムテストされました

誰もがそれを使用するのが便利であるとは限りませんでした。なぜなら、彼らは労働者の要求に応じて別の許可オプションを追加することを決めたからです。







実装のために、開発者がRedmine向けにプラグインを開発しました。



プラグインはcorny redmine_sms_authと呼ばれ、簡単にインストールされ、安定して動作します。



プラグインをインストールして構成する


redmineを停止します。



githubでプラグインをプルします。



git clone https://github.com/olemskoi/redmine_sms_auth.git /opt/redmine/plugins/redmine_sms_auth
      
      







移行を実行します。

 bundle exec rake redmine:plugins:migrate RAILS_ENV="production"
      
      







ProductionセクションのRedmine config /opt/redmine/config/configuration.ymlでプラグインを有効にします。



  sms_auth: command: '/usr/bin/curl --silent --show-error "https://smsc.ru/sys/send.php?charset=utf-8&login=LOGIN&psw=PASSWORD&phones=%{phone}&mes=factory.southbridge.ru code: %{password}"' password_length: 4
      
      







広告ではないメッセージを送信するためにsmsc.ruサービスを使用します



変数別:

コマンドはメッセージサービスを使用する方法で、プラグインはこのコマンドを呼び出してSMSを送信します。 smsc.ruの場合、curlを使用する方が便利です。



ログインとパスワード-smsサービスでの認証に使用されるログイン/パスワードがここに表示されます。



電話=%{phone}-ユーザー資格情報のフィールドから取得した電話番号。



mes = factory.southbridge.ru-これは、ユーザーが理解できない数字のセットから来た人を見ることができ、怖がらないようにするためです。



password_length:4-パスワードの長さ。



Redmineを起動します。



Redmineのセットアップ


redmineのチューニングの側面から見ると、すべては次のようになります。

ユーザー資格情報のあるページで、電話番号は+ 7XXXXXXXXXXXの形式で携帯電話フィールドに入力されます(またはその他の場合、主なことはサードパーティの送信サービスが受け入れることです)。



認証モードを「内部」から「SMS」に変更し、変更を適用します。



これで、認証時に、ログイン/パスワードを入力した後、次の形式でコードが要求されます。

画像



必要に応じて、もう一度SMSをリクエストできます。



終わり!



すべてのコメント/推奨/追加は喜んで受け入れられます。



ご清聴ありがとうございました!



All Articles