Auth0で連続ログイン失敗したとき、ログインをブロックする(Brute-Force Protection)

Auth0の「Brute-Force Protection」を使って、連続ログインに失敗したユーザのログインをブロックしてみました。
2022.01.19

連続ログインに失敗しているアカウントがあるとき、一定回数NGの場合にログインさせたくありません。 Auth0では、Attack ProtectionBrute-Force Protectionで実現できます。

本記事では、Brute-Force Protectionの動作を試してみました。

おすすめの方

Brute-Force Protectionのデフォルト設定を確認する

Brute-Forceの検知

デフォルトでは、ログインを10連続で失敗すると、ブロックされます。 また、許可IPリストは「無し」となっています。

Auth0のBrute-Force Protection設定

Brute-Foruceの反応

ログインをブロックする設定が有効になっています。 IPアドレスに関係なくアカウントをブロックする設定は無効です。 そして、ブロックされたユーザにメールを送信します。

Auth0のBrute-Force Protection設定

ブロックの解除方法

公式ドキュメントによると、ブロック解除の方法は下記です。

  • ブロックされたユーザが、「ブロックされたよ、心当たりあるならこのリンクでブロック解除してね」のリンクにアクセスする
  • ブロックされたユーザが、パスワードを変更する(複数アカウントをリンクしている場合は、すべてのアカウントが対象)
  • Auth0テナントの管理者が、該当ユーザのブロックを解除する
  • Auth0テナントの管理者が、しきい値を引き上げる

Brute-Force Protectionを試してみる

10連続でログインを失敗する

適当なパスワードを入力してログイン失敗を繰り返すと、下記のメッセージが表示されました。

このアカウントは、短時間での複数回ログイン試行によりブロックされました。

Auth0のBrute-Force Protectionでログインガブロックされた

ユーザ情報でもブロックが分かる

ユーザ情報を確認すると、ブロックしている旨が表示されています。

ログインがブロックされたユーザの様子

Auth0テナントの管理者なら、ブロック解除もできます。

ログインがブロックされたユーザのブロック解除ができる

Auth0からアカウントブロックの連絡メールが来た

ユーザに対して、Auth0から次のメールが来ました。

ユーザには、ブロック解除のメールが届く

メールのリンクにアクセスして、アカウントのブロックを解除する

さきほどのメールのUNBLOCKにアクセスすると、ブロックが解除されました。

ブロック解除された

解除後は、ログインができます。

さいごに

「こういう機能、必要だよね」がすでにあって簡単に使えるのが嬉しいですね。

参考