トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

パスワード認証に関する要求事項(推奨) のバックアップソース(No.1)

#author("2020-07-24T13:55:31+09:00","","")
[[認証方式設計の検討とパスワード認証の要求事項]]

本項は、独自にパスワード認証を実装する際の要求事項と、Windows認証を使用する際の留意事項を解説します。
*独自にパスワード認証を実装する場合 [#he380001]
今後、構築されるアプリケーションのパスワードの要件として以下を推奨します。なお、必要に応じてテラーリングを認めますが、強度が低くなるテラーリングをする際は、その理由を明確にして文書化し、ユーザーとベンダーで共有し合意してください。

-長さ
--8文字以上 64文字以上の受け入れを許可する
--パスワード評価を実装しない場合、14桁以上を求める
-定期変更
--要求しない
-複雑さ
--パスワード評価の例外を除き要求しない
-パスワードの評価 
--IDから個人を特定できる場合
---推測可能な生年月日や電話番号を避けるため英数を要求する
--拒否する文字列
---IDや氏名が含まれる場合は拒否する
--特定の文字列の繰り返し
---12341234などは拒否する
--連続した文字列
---qwertyuiop 11111111などは拒否する
--評価に違反した場合は、理由と改善方法をユーザーに通知する
-アカウントロックアウト
--連続失敗回数
---3-5回
--ロックアウト期間
---15分以上 もしくは経路外認証によるパスワード変更
-パスフレーズを推奨する表示
--20桁を超えるパスフレーズを推奨する旨の表示を実装する
-漏洩のチェック
--漏洩が発覚した際は即時に変更を求める
なお、重要資産へのアクセスの際は、リスクベース認証 の組合せや多要素認証を強く推奨します。

&br;
*Active Directory Windows認証を利用する際の留意事項 [#oa78067d]
Active Directory のパスワードに関連する実装はNIST SP800-63-3よりも古いため、次の留意点があります。
-複雑さは規程値で適用されるため、フィルターDLLと呼ばれるパスワードフィルターのカスタマイズを実施しないと、前項の実装との統一はできません。
**[複雑さの要件を満たす必要があるパスワード]プロパティの規定値 [#c9c10222]
グループポリシーの[アカウントポリシー]>[パスワードのポリシー]>[複雑さの要件を満たす必要があるパスワード]プロパティは、ドメインコントローラーの場合、既定で [有効] となっており、メンバーコンピュータはドメインコントローラーの構成に従います。以下が強制されます。
-ユーザーのアカウント名またはフル ネームに含まれる 3 文字以上連続する文字列を使用しない。
-長さは 6 文字以上にする。
-次の 4 つのカテゴリのうち 3 つから文字を使う。
-英大文字 (A から Z)
-英小文字 (a から z)
-10 進数の数字 (0 から 9)
-アルファベット以外の文字 (!、$、#、% など)
-複雑さの要件は、パスワードの変更時または作成時に強制的に適用されます。
**[複雑さの要件を満たす必要があるパスワード]プロパティの規定値を [無効] にした場合 [#z67eb324]
ユーザーのアカウント名 (samAccountName) またはフルネーム (displayName) に含まれる文字列がパスワードに含まれているかをチェックしません。
**[複雑さの要件を満たす必要があるパスワード] プロパティの規定値を変更したい場合 [#u61e0817]
パスワードのポリシーは、パスワード変更時に参照される Passfilt.dll というフィルターDLLで決定されます。Passfilt.dllをカスタマイズすることで、変更が可能です。 Platform Software Development Kit(SDK)に Passfilt.dll のソースが掲載されていますので、参照してください。
https://docs.microsoft.com/en-us/previous-versions//ms722439(v=vs.85)?redirectedfrom=MSDN