複雑さの要件を満たす必要があるパスワード

[複雑さの要件を満たす必要があるパスワード] セキュリティ ポリシー設定のベスト プラクティス、場所、値、およびセキュリティに関する考慮事項について説明します。

リファレンス

[複雑さの要件を満たす必要があるパスワード] ポリシー設定は、強力なパスワードにとって重要と考えられる一連のガイドラインをパスワードが満たしている必要があるかどうかを決定します。このポリシー設定を有効にした場合、パスワードは次の要件を満たす必要があります。

  1. ユーザーの SAM アカウント名 ([アカウント名] の値) と表示名 ([氏名] の値) をパスワードに含めることはできません。どちらのチェックも大文字と小文字は区別されません。

    SAM アカウント名がパスワードに含まれているかどうかを調べる際は、そのアカウント名全体がチェックの対象となります。SAM アカウント名が 3 文字未満である場合、このチェックはスキップされます。

    表示名は解析されて区切り記号 (コンマ、ピリオド、ダッシュ、ハイフン、アンダースコア、空白、シャープ記号、タブなど) の有無が調べられます。これらの区切り記号が見つかった場合、表示名は分割され、解析後のすべてのセクション (トークン) が、パスワードに含めることのできない要素として設定されます。3 文字未満のトークンは無視され、トークンの部分文字列はチェックされません。たとえば、"Erin M. Hagens" という名前は、"Erin"、"M"、"Hagens" という 3 つのトークンに分割されます。2 つ目のトークンは 1 文字しかないため無視されます。そのため、このユーザーは、"erin" や "hagens" を含んだパスワードを使用できません。

  2. パスワードは、次のカテゴリのうち 3 つに該当する文字を含んでいる必要があります。

    • ヨーロッパ言語の大文字 (A ~ Z、識別記号を含む、ギリシャ文字、キリル文字)

    • ヨーロッパ言語の小文字 (a ~ z、シャープ s、識別記号を含む、ギリシャ文字、キリル文字)

    • 10 進法の数字 (0 ~ 9)

    • 英数字以外の文字 (!、$、#、% などの特殊文字)

    • アルファベット文字として分類されるが大文字でも小文字でもない Unicode 文字。たとえばアジア言語の Unicode 文字が該当します。

複雑さの要件は、パスワードの変更時や作成時に適用されます。

Windows Server のパスワードの複雑さに関する要件に含まれている規則は Passfilt.dll の一部となっており、直接変更を加えることはできません。

既定の Passfilt.dll を有効にすると、アルファベット以外の文字を含んだパスワードを使うことにユーザーが慣れておらず、アカウントのロックアウトでヘルプ デスクへの問い合わせが増える可能性があります。ただしこのポリシー設定は、あらゆるユーザーが少しの慣れで要件に従うことができるよう、ある程度の寛容さを備えた設計となっています。

カスタム Passfilt.dll に、非上段文字の使用を別途含めることができます。上段文字とは、Shift キーを押したまま 1 ~ 10 の数字キーを押すことによって入力される文字です。

設定可能な値

  • 有効

  • 無効

  • 未定義

ベスト プラクティス

[複雑さの要件を満たす必要があるパスワード] を [有効] に設定します。このポリシー設定に、パスワードの最小文字数 (8 文字) を組み合わせることで、1 つのパスワードにつき少なくとも 218,340,105,584,896 とおりのパターンを確保することができます。これでブルート フォース攻撃は困難となりますが、それでも不可能というわけではありません。

Alt キー文字の組み合わせによって、パスワードの複雑度を大幅に高めることができます。しかし、そのような厳格なパスワード要件を組織内のすべてのユーザーに強いると、ユーザーに不便な思いをさせたり、ヘルプ デスクへの問い合わせが急増したりする可能性があります。0128 ~ 0159 の範囲の Alt 文字を使用する要件は、管理者パスワード用途に限定して組織に導入することを検討してください。(この範囲外の Alt 文字は標準的な英数字を表す場合があり、そのような英数字はパスワードの複雑さに貢献しません。)

英数字のみから成るパスワードは、だれでも入手できるツールによって簡単に破られてしまいます。それを防ぐために、パスワードには他の文字を含め、複雑さの要件を満たす必要があります。

場所

コンピューターの構成\Windows 設定\セキュリティの設定\アカウント ポリシー\パスワードのポリシー

既定値

次の表に、実際のポリシー値と有効な既定のポリシー値を示します。既定値はポリシーのプロパティ ページにも表示されます。

サーバーの種類またはグループ ポリシー オブジェクト (GPO) 既定値

既定のドメイン ポリシー

有効

既定のドメイン コントローラー ポリシー

有効

スタンドアロン サーバーの既定の設定

無効

ドメイン コントローラーの有効な既定の設定

有効

メンバー サーバーの有効な既定の設定

有効

クライアント コンピューターでの GPO の有効な既定の設定

無効

 

セキュリティに関する考慮事項

このセクションでは、機能やその構成が攻撃者によってどのように悪用される可能性があるかと、対策を実装する方法、対策の実装に伴う可能性のある悪影響について説明します。

脆弱性

英数字のみから成るパスワードは、だれでも入手できるいくつかのツールを使ってごく簡単に破ることができます。

対策

[複雑さの要件を満たす必要があるパスワード] ポリシー設定は [有効] にし、さまざまな文字の組み合わせをパスワードに使うようユーザーに促してください。

[パスワードの長さ] (8 文字) を組み合わせることで、1 つのパスワードにつきさまざまな数のパターンがあるため、ブルート フォース攻撃は困難 (不可能ではない) となります。([パスワードの長さ] ポリシー設定値を大きくすると、攻撃を成功させるのに必要な平均時間も長くなります。)

潜在的な影響

パスワードの複雑さを既定の構成のままにすると、アルファベット以外の文字を含んだパスワードを使うことにユーザーが慣れておらず、アカウントのロックアウトでヘルプ デスクへの問い合わせが増えたり、アクセント付き文字や記号を含んだパスワードを各種レイアウトのキーボードで入力するやり方がわからずユーザーが困惑したりする可能性があります。とはいえ複雑さの要件には、すべてのユーザーが最小限の手間で順守できることが必要です。

それよりも厳しいセキュリティ要件が求められる組織では、パスワードの安全性ルールに任意の複雑さを持たせた独自のバージョンの Passfilt.dll ファイルを作成することができます。たとえばカスタム パスワード フィルターで、非上段記号の使用を必須とすることが考えられます。(上段記号とは、Shift キーを押しながら 1 ~ 0 の任意の数字を押すことによって入力される記号をいいます。)カスタム パスワード フィルターで辞書を使ったチェックを実行し、入力されたパスワードに、辞書に掲載されている一般的な語句が含まれていないか確認することも可能です。

Alt キー文字の組み合わせによって、パスワードの複雑度を大幅に高めることができます。ただし、そのような厳格なパスワード要件を設定すると、ヘルプ デスクへの問い合わせが増加する可能性があります。0128 ~ 0159 の範囲の Alt 文字を使用する要件は、管理者パスワード用途に限定して組織に導入することを検討してください。(この範囲外の Alt 文字は標準的な英数字を表す場合があり、そのような英数字はパスワードの複雑さに貢献しません。)

関連トピック

パスワード ポリシー