Gluegent Gate 管理画面メニュー「システム」→「パスワードポリシー設定」の「強度設定」→「使用可能文字」で「正規表現を使用する」を選択すると、標準のチェックボックスでは対応できない高度な制限(例:特定の文字列のブラックリスト化)を設定できます。
(パスワードポリシー設定画面)
本FAQでは、お客様からよくご質問いただく設定例と、設定時に留意すべき重要な注意点をご説明します。
設定例 1: 特定の単語を禁止する場合(大文字・小文字を区別する)
「0000」「1111」「abc」など、指定した単語が含まれるパスワードを禁止します。
※この記述は大文字と小文字を区別するため、「abc」を禁止しても「ABC」や「Abc」は許可されます。
記述例
^(?!.*(0000|1111|abc)).*$※禁止したい単語は | (半角縦棒/パイプ記号)で区切ってカッコ内に記述してください。
設定例 2: 特定の単語を禁止する場合(大文字・小文字を区別しない)
大文字・小文字の違いを問わず、「abc」「ABC」「Abc」などをすべて禁止したい場合は、先頭に大文字小文字を無視するフラグ (?i) を付けます。
記述例
(?i)^(?!.*(0000|1111|abc)).*$
設定例 3: 連続する同一文字を禁止する場合(例:aaa、AaAなど)
大文字・小文字を区別せずに、同じアルファベットが3文字連続する組み合わせ(例:aaa、AaA)をすべて禁止します。
記述例
(?i)^(?!.*([a-z])\1\1).*$
設定例 4: 連続する同一文字と特定の単語を同時に禁止する場合
上記の設定例2と3を組み合わせ、「3文字の連続文字」と「特定の単語(例:asdf, qwerなど)」を、大文字・小文字の区別なくすべて禁止します。
記述例
(?i)^(?!.*(?:([a-z])\1\1|asdf|qwer)).*$※「連続文字」と「特定の単語」を | (半角縦棒)で区切って同時に指定する場合は、上記のとおり (?: ) の形式で全体を括って記述する必要があります。
複数の正規表現を設定する場合の注意事項
管理画面では、正規表現の入力枠を最大3枠まで追加できます。複数の枠に設定した場合、「すべての枠の条件をクリアした」パスワードのみが許可されます。
1. インライン修飾子 (?i) は必ず単独の枠に設定する
設定例2〜4で使用している (?i) は、同じ枠内に書かれたすべての条件において大文字小文字の区別を無効化します。
「英大文字・小文字を必須とする」といった他のルールと同じ枠内に記述すると、判定が正しく機能しなくなるため、必ず独立した別の枠に分けて設定する必要があります。
2. 1枠あたりの文字数上限(255文字)
1つの入力枠には最大255文字までの制限があります。禁止したい単語が多数ある場合は、文字数上限を回避するため、以下のように枠を分割して登録してください。
枠1:
^(?!.*(単語1|単語2|...|単語25)).*$枠2:
^(?!.*(単語26|単語27|...|単語50)).*$
3. 本番適用前のテスト実施(必須)
正規表現は記述が非常に厳格なため、記号が1文字でも誤っていると全ユーザーのパスワード変更ができなくなる等の予期せぬ挙動を引き起こします。
設定後は、必ずテスト用アカウントで動作確認をお願いいたします。