Redmine ログイン失敗でユーザをロックするプラグイン作った話


この記事は Redmine Advent Calendar 2025 18日目です。

色々あって、指定回数ログインに失敗した場合に対象ユーザをロックするプラグインを作りました。

まず最初に、READMEにも書いていますが、これはユーザアカウントをロックする攻撃に使用することができてしまいます。このプラグインを導入する前にOAuth2や2FAの導入を検討してください。

Redmine User Lockout plugin https://github.com/taikii/redmine_user_lockout

経緯

ログイン失敗でロックしたり指定時間ログインできなくするプラグインはすでにあるのですが、いかんせんこれらは古く、最新の 6.1 だとうまいこと動きませんでした。

もうアーカイブされちゃってたりするし、これを修正するより作っちゃったほうが手っ取り早そうだなと思い、一から作ることにしました。

方針

感想

Redmine本体への影響を必要最小限に抑える形で実現できたんじゃないかと思います。

最初にも書いていますが、こんなの使わずにさっさとOAuth2や2FAを導入したほうがいいです。それでも誰かが求めているかもしれないので公開してみます。