グループ ポリシーを使用すると、スクリプトをコンピューター起動時やユーザログオン時のタイミングで実行させることができます。
グループポリシーについては、下記の記事を参考にしてください。
【Active Directory】グループポリシーの構成・適用・更新
ローカルグループポリシーは、個々のコンピュータ(OS)に対して、コンピューターやユーザの構成のポリシーを適用する設定でした。 ただし、管理者による集中管理ができず、個々のコンピューターで個別に設定を適用する必要がありました。 ローカルグルー...
この記事では、簡単なスクリプトを使って、グループポリシーを使ったスクリプト実行を確認していきます。
スクリプト実行タイミング
実行タイミングは、下記の4つです。
- スタートアップスクリプト:コンピューター起動時に実行
- シャットダウンスクリプト:コンピューター停止時に実行
- ログオンスクリプト:ユーザーログオン時に実行
- ログオフスクリプト:ユーザーログオフ時に実行
グループポリシー管理エディターでは、スタートアップ/シャットダウンは、コンピューターの構成 ログオン/ログオフは、ユーザーの構成にてポリシー設定できます。
スクリプトに関するポリシー設定
スクリプトに関して、いくつか設定できるポリシーがあります。
コンピューターの構成
グループポリシー管理エディターより、スクリプト実行に関するポリシーが設定できます。
「ポリシー」>>「管理用テンプレート」>>「システム」>>「スクリプト」
下記が代表的な設定です。
ログオンスクリプトを同期的に実行する
同期的に実行すると、スクリプトの実行が完了後、ユーザーのデスクトップ環境が起動します。
スクリプトを同期して実行しない場合、スクリプトは、デスクトップのファイル・エクスプローラや他のコンポーネントのロードと同時に実行されます。
この設定は、「ユーザーの構成」でも設定できますが、「コンピューターの構成」で設定されたポリシーの方が優先されます。
グループポリシースクリプトの最大待機時間を指定する
例えば、スクリプトがハングアップした場合に、ユーザーがログオンできなくなる場合があります。
そのため、グループポリシーでスクリプトの最大待ち時間を指定することができます。
ユーザーの構成
「ポリシー」>>「管理用テンプレート」>>「システム」>>「スクリプト」より、スクリプト実行に関するポリシーが設定できます。
スクリプトの登録
スタートアップ、シャットダウンスクリプトは、下記より設定できます。
「コンピューターの構成」より「ポリシー」>>「Windowsの設定」>>「スクリプト(スタートアップ/シャットダウン)」
例えばスタートアップを選択します。
下記の画面で、スクリプトが指定できます。PowerShellのスクリプトを登録する場合は、「PowerShellスクリプト」タブより設定します。
ここでは、「スクリプト」タブで、「追加」をクリックします。
「参照」をクリックします。
スクリプトの保存画面が表示されます。
私の環境では、スタートアップスクリプトの格納場所は下記です。
C:\Windows\SYSVOL\sysvol\hirotanoblog.local\Policies\{DCC1E5F9-40AF-4920-9ABE-D672767B356F}\Machine\Scripts\Startup
{DCC1E5F9-40AF-4920-9ABE-D672767B356F}は、GPOのIDなので、適用するGPOなど、環境によって異なります。SYSVOLフォルダに配下にスクリプトを配置することにより、ドメインコントローラ間で、スクリプトが複製されます。
ログオン、ログオフスクリプトも同様ですが、「コンピューターの構成」ではなく、「ユーザーの構成」よりスクリプトを配置します。
スクリプト実行例(ログオンスクリプト)
ログオン時にポップアップメッセージを表示するスクリプトを配置し、動作を確認します。
スクリプト例:
msg Console /server:localhost “ユーザーがログオンしました”
スクリプトの配置
下記を選択します。
「ユーザーの構成」より「ポリシー」>>「Windowsの設定」>>「スクリプト(ログオン/ログオフ)」からログオンを選択
「追加」をクリックします。
「参照」をクリックします。
作成済みのスクリプト(下記では、ログオンスクリプトという名前にしています)をコピーして、表示されたフォルダにペーストします。
その後、スクリプトを選択のうえ、開くをクリックします。
スクリプトが登録されていることを確認し、OKをクリックします。
「適用」>>「OK」をクリックします。
ログオンスクリプトを同期的に実行
コンピューターの構成より、「ログオンスクリプトを同期的に実行する」を未構成から有効にします。
動作確認
設定したグループポリシーをユーザー、コンピューターが所属するOUにリンクし、GPOを更新します。
下記のとおり、ユーザーログオン時に、デスクトップ環境が表示される前に、ポップアップメッセージが出力されました。
コメント