私は現在、ユーザーがすべてのエンドポイントアカウントを管理できるようにするID管理ソリューションを実装しています。
現在、当社のパスワードポリシーは、デフォルトのWindows要件に一致しています。数字または特殊文字のいずれかを含める必要があります。
残念ながら、新しいシステムのパスワードポリシーでは、番号、特殊、または両方を要求できますが、「どちらか一方」は要求できません。ただし、新しいシステムでは、正規表現による検証が可能です。
現在、次の正規表現を無効にするように設定されています。
.*[pP][aA4][sS$]{2}[wW][oO0][rR][dD].*
これはかなりうまくいきます。ただし、これを数字または特殊のいずれかを許可するように変更し、前の数字も許可しないようにします。これが私が試したことです:
((?=.*\d.*)|(?=.*[-'"!#$%&()*+,./:;<=>?@[\]\^_`{|}~\\].*))(?!.*[pP][aA4][sS$]{2}[wW][oO0][rR][dD].*)
しかし、これを機能させることはできません。数字/特殊グループは正常に機能しますが、単語グループは機能しません。文字列の最後に「パスワード」または何らかのバリエーションが使用されているかどうかは確認されますが、最初には使用されません。
助言がありますか?システムは標準(Perlスタイル)の正規表現を使用します。