GPO が適用されないときのトラブルシューティング手法と対処例

Last Update: feedback 共有

本記事はマイクロソフト社員によって公開されております。

こんにちは。Windows Commercial Support Directory Services チームです。

最近、「ドメイン コントローラーで GPO を設定したが、クライアントに適用されない」というお問合せをよくいただいております。本ブログでは、GPO が適用されないときの、トラブルシューティングの手法と対処例をいくつかご紹介いたします。

gpresult レポートからエラーの状況を確認する

GPO が適用されない場合、クライアントの gpresult をご確認いただくことで原因に素早く辿りつける場合がございます。適用先がコンピューターかユーザーかによって、gpresult の取得手順がやや異なります。

・ コンピューター ポリシーの場合
GPO が適用されないコンピューターに管理者権限を持つアカウントでログオンします。
コマンド プロンプト (管理者) で、以下のコマンドを実行します。

gpresult /H <保存先>

例) デスクトップに gpresult を保存する場合
gpresult /H %USERPROFILE%\desktop\compolicy.html

・ ユーザー ポリシーの場合
GPO が適用されないユーザー アカウントでコンピューターへログオンします。
コマンド プロンプトをユーザー権限で起動し、以下のコマンドを実行します。

gpresult /H <保存先>

例) デスクトップに gpresult を保存する場合
gpresult /H %USERPROFILE%\desktop\userpolicy.html

gpresult レポートが作成できたら、[適用された GPO] と [拒否された GPO] を確認し、対象の GPO が含まれているか確認します。

■ [適用された GPO] と [拒否された GPO] のどちらにも、対象の GPO が含まれていない場合

対処例 :
・後述の「1. GPO が正しくリンクされているか」をご確認ください。
・後述の「2. GPO の適用先は正しいか」をご確認ください。
・ クライアント と ドメイン コントローラー間でネットワーク接続が行えない場合にも、GPO が適用されないため、以下の参考情報に記載のあるポートで通信が行える環境であるかご確認ください。

ドメイン環境で使用されるポートについて
参考箇所) 1. ドメイン メンバーが利用するポート

■ [拒否された GPO] に対象 GPO が含まれており、拒否された理由が “アクセス拒否” となっている場合

対処例 :
後述の「3. セキュリティ フィルターで適用が拒否されていないか」をご確認ください。

■ [拒否された GPO] に対象 GPO が含まれており、拒否された理由が “アクセスできません。空であるか、無効になっています” となっている場合

対処例 :
後述の「4. GPO の読み取り権限が付与されているか」をご確認ください。

■ [拒否された GPO] に対象 GPO が含まれており、拒否された理由が “False である WMI フィルター” となっている場合

対処例 :
後述の「5. WMI フィルターで適用が拒否されていないか」をご確認ください。

■ [拒否された GPO] に対象 GPO が含まれており、拒否された理由が “無効なリンク” となっている場合

対処例 :
後述の「6. リンクが無効になっていないか」をご確認ください。

1. GPO が正しくリンクされているか

GPO はドメインにリンク ( 紐づけ ) することはあまり無く、特定の OU にリンクすることが多いと思います。適用対象のユーザーまたはコンピューターが所属する OU に、GPO が正しくリンクされているかご確認ください。

GPO が正しくリンクされているかは、ドメイン コントローラーの [グループ ポリシーの管理] エディターから確認できます。

適用対象のユーザーまたはコンピューターが所属する OU に、GPO が正しくリンクされていることをご確認ください。上の画像では、「testOU」に “testgpo” がリンクされています。


2. GPO の適用先は正しいか

グループ ポリシーには、大きく分けて 2 つのポリシーがあります。

ユーザーの構成 : ユーザーを対象に適用する、ユーザー向けのポリシー
コンピューターの構成 : コンピューターを対象に適用する、コンピューター向けのポリシー

原則として、ユーザーに対して [コンピューターの構成] を適用したり、コンピューターに対して [ユーザーの構成] を適用することはできません。そのような構成になっていないかご確認ください。( ループバックと呼ばれる例外がありますが、ここでは割愛します )

3. セキュリティ フィルターで適用が拒否されていないか

OU に正しく GPO がリンクされていたとしても、OU 内に存在するユーザーやコンピューターに、GPO が適用されない場合があります。その一般的な例として、セキュリティ フィルターがあります。セキュリティ フィルターとは、特定のグループ等に所属しているユーザーやコンピューターのみ、GPO を適用するというオプション設定になります。 

既定では、”Authenticated Users” が設定されており、すべてのユーザーやコンピューターが適用されるようになっていますが、”Authenticated Users” の代わりに特定のグループを指定することで、OU 内に所属している場合でも、特定グループのユーザーまたはコンピューターのみに GPO が適用されるようになります。

セキュリティ フィルターの観点では、以下の 2 つをご確認ください。

・ セキュリティ フィルターに、適用したいユーザーまたはコンピューターが所属するグループが指定されていること。上の画像では testgroup に所属しているプリンシパルのみに GPO を適用するよう、セキュリティ フィルターが構成されています。
・ 適用したいユーザーまたはコンピューターが指定したグループに所属していること。

4. GPO の読み取り権限が付与されているか

OU に正しく GPO がリンクされていたとしても、OU 内に存在するユーザーやコンピューターが、 GPO の読み取り権限を保持していない場合、GPO の適用に失敗します。既定で “Authenticated Users” が含まれておりますが、セキュリティ フィルターを使用している GPO の場合は、既定の “Authenticated Users” が削除されるため、読み取り権限を手動で付与する必要があります。

GPO の権限については、ドメイン コントローラーの [グループ ポリシーの管理] エディターから確認できます。

適用したいポリシーが、[ユーザーの構成] か [コンピューターの構成] かによって、GPO の読み取り権限が必要な対象が異なります。

・ コンピューターの構成 : 「GPO 適用したいコンピューター ( またはグループ ) 」が読み取り権限を保持していること
・ ユーザーの構成 : 「GPO 適用したいユーザー ( またはグループ ) 」と「ユーザーがログオンしているコンピューター ( またはグループ )」が読み取り権限を保持していること 
※ ユーザーだけでなく、ユーザーがログオンしているコンピューターも GPO を読み取れる必要があります

5. WMI フィルターで適用が拒否されていないか

OU に正しく GPO がリンクされていたとしても、OU 内に存在するユーザーやコンピューターに、GPO が適用されない場合があります。その一般的な例として、WMI フィルターがあります。WMI フィルターとは、GPO にあらかじめセットした WMI クエリを GPO 適用処理時にクライアントに実行させ、その実行結果によって、GPO を適用するかどうか判定するオプションとなります。例えば、「特定の OS バージョン」のみ応答を返す WMI フィルターを GPO にセットしておき、特定バージョンのコンピューターのみに適用させるといった WMI フィルターなどがございます。

WMI フィルターは、ドメイン コントローラーの [グループ ポリシーの管理] エディターから確認できます。

上の画像は、testwmifilter という WMI フィルターをセットしている例となります。

WMI フィルターの観点では、主に以下のような内容をご確認ください。

・ WMI フィルターを使用する想定はないが、意図せず WMI フィルターがセットされていないか
・ 誤った WMI フィルターをセットしていないこと

補足情報

意図した WMI フィルターがセットされているが、そのフィルターで GPO が適用されない場合、WMI フィルターのクエリがクライアントで True として判定されていない可能性がございます。設定した WMI クエリがクライアントで True として判定されるかを確認したい場合は、グループ ポリシーの WMI フィルターに設定して GPO の適用結果を見る、という方法でも問題はございませんが、手間がかかってしまいます。

wbemtest というツールを使用することで、比較的簡単に WMI クエリの結果を知ることができますのでご紹介いたします。

a) WMI クエリを実行するクライアントにログオンします。
b) [ファイル名を指定して実行] に “wbemtest” と入力し、Enter キーを押下します。
c) [接続] をクリックし、名前空間が適切であることを確認の上、[接続]をクリックします。
d) [クエリ] をクリックします。
e) クエリの入力欄に、実行したい WMI クエリ構文を記述し、[適用] をクリックします。
f) 以下の図のように何らかの応答が返ってくれば “True” となります。 何も応答が無ければ、”False” となります。


6. リンクが無効になっていないか

適用対象の OU にリンクされているものの、リンクが無効状態になっていると、GPO が適用されません。

リンクの状態は、ドメイン コントローラーの [グループ ポリシーの管理] エディターから確認できます。

リンクが有効になっていることをご確認ください。右ペインでリンクの有効化が “はい” になっていれば、リンクは有効です。

留意事項

ご案内の対処例 はあくまで一例でございます。必ずしも問題の解消をお約束するものでは無いこと、予めご理解をいただきますようお願い申し上げます。

更新履歴

2022/7/3 : 本ブログの公開