Turn on PowerShell Script Block Logging
Jump to overview

Policy overview

Key metadata and intent for this policy.

Category
Windows Components > Windows PowerShell
Supported on
At least Microsoft Windows 7 or Windows Server 2008 family

Supported OS tags: Windows7, WindowsServer2008

This policy setting enables logging of all PowerShell script input to the Microsoft-Windows-PowerShell/Operational event log. If you enable this policy setting, Windows PowerShell will log the processing of commands, script blocks, functions, and scripts - whether invoked interactively, or through automation. If you disable this policy setting, logging of PowerShell script input is disabled. If you enable the Script Block Invocation Logging, PowerShell additionally logs events when invocation of a command, script block, function, or script starts or stops. Enabling Invocation Logging generates a high volume of event logs. Note: This policy setting exists under both Computer Configuration and User Configuration in the Group Policy Editor. The Computer Configuration policy setting takes precedence over the User Configuration policy setting.

Internal name
EnableScriptBlockLogging
Policy ID
1159650e2106
Elements
1

Registry values

How enabled and disabled states update the registry.

ScopeRegistry locationTypeEnabled valueDisabled valueCopy
Path
Software\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging
Value name
EnableScriptBlockLogging
REG_DWORD
HKLM
1
HKCU
1
HKLM
0
HKCU
0
Registry location
Type REG_DWORD · Both
Path
Software\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging
Value name
EnableScriptBlockLogging
Hive
HKLM
Enabled value
1
Disabled value
0
Hive
HKCU
Enabled value
1
Disabled value
0

Policy elements

Inputs and configuration options exposed by this policy.

ScopeElementTypeRegistry mappingConstraints & behaviorCopy
Log script block invocation start / stop events:
ID EnableScriptBlockInvocationLogging
boolean
Path
Software\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging
Value name
EnableScriptBlockInvocationLogging
Type
REG_DWORD
Options: true (), false ()
True: None · False: None
Log script block invocation start / stop events:
Both · Type boolean
Registry mapping
Path
Software\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging
Value name
EnableScriptBlockInvocationLogging
Type
REG_DWORD
Details
Options: true (), false ()
True: None · False: None