PowerShell から secpol.msc の設定を自動化する

PowerShell から secpol.msc の設定を自動化する

PowerShell スクリプトを使用して secpol.msc の値を取得および設定する方法

ローカル セキュリティ ポリシー -> ローカル ポリシー -> セキュリティ オプション -> ユーザー アカウント制御: 管理者承認モードでの管理者の昇格プロンプトの動作

変更後に元に戻せるように、元の値を取得する必要があります。

「プロンプトなしで昇格する」ように自動的に設定する必要があります

答え1

このポリシーを含め、多くのグループ ポリシーは単なるレジストリ設定です。

ユーザーアカウント制御グループポリシーとレジストリキーの設定

この特定のポリシーは、次のレジストリにあります。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\ConsentPromptBehaviorAdmin

可能な値は次のとおりです。

  • 0 = プロンプトなしで昇格する
  • 1 = 安全なデスクトップで資格情報を要求する
  • 2 = 安全なデスクトップで同意を求める
  • 3 = 資格情報の入力を求める
  • 4 = 同意を求める
  • 5 (デフォルト) = Windows以外のバイナリに対して同意を求める

Powershell を使用すると、次のようにして値を取得できます。

$result = Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System' -Name 'ConsentPromptBehaviorAdmin' -ErrorAction SilentlyContinue

$result.ConsentPromptBehaviorAdmin

結果:5

設定するには次のようにします。

Set-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System' -Name 'ConsentPromptBehaviorAdmin' -Value 00000000

関連情報