Enable Remote Desktop NLA via Windows Registry
Network Level Authentication (NLA) provides an essential layer of security for Remote Desktop Protocol (RDP) connections by requiring users to authenticate to the network before a full session is established with the host. This article details the specific Windows Registry key and DWORD value used to control NLA, followed by direct instructions on how to enable or disable it using the Registry Editor (Regedit) and command-line alternatives.
The NLA Registry Value
The configuration for Network Level Authentication is managed by the UserAuthentication DWORD value.
- Registry Path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp - Value Name:
UserAuthentication - Value Type:
REG_DWORD - Value Data:
1= Network Level Authentication is Enabled (Required)0= Network Level Authentication is Disabled (Not Required)
How to Change NLA via Registry Editor (Regedit)
Press
Win + R, typeregedit, and press Enter to open the Registry Editor.Navigate to the following path:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-TcpIn the right pane, locate the DWORD value named UserAuthentication.
- If it does not exist, right-click an empty space, select New
> DWORD (32-bit) Value, and name it
UserAuthentication.
- If it does not exist, right-click an empty space, select New
> DWORD (32-bit) Value, and name it
Double-click UserAuthentication:
- Set the Value data to
1to require NLA for remote connections. - Set the Value data to
0to allow connections without NLA.
- Set the Value data to
Click OK and close the Registry Editor.
Restart the computer or restart the Remote Desktop Services (
TermService) for the changes to take effect immediately.
Quick Configuration via Command Line
Using Command Prompt (cmd)
To configure NLA without opening the GUI, run one of the following commands in an elevated Command Prompt (Run as Administrator):
Enable NLA:
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v UserAuthentication /t REG_DWORD /d 1 /fDisable NLA:
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v UserAuthentication /t REG_DWORD /d 0 /f
Using PowerShell
Run the following command in an elevated PowerShell terminal:
Enable NLA:
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name "UserAuthentication" -Value 1Disable NLA:
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name "UserAuthentication" -Value 0