| external help file | Microsoft.PowerShell.Commands.Management.dll-Help.xml |
|---|---|
| Locale | en-US |
| Module Name | Microsoft.PowerShell.Management |
| ms.date | 10/01/2021 |
| online version | https://learn.microsoft.com/powershell/module/microsoft.powershell.management/test-computersecurechannel?view=powershell-5.1&WT.mc_id=ps-gethelp |
| schema | 2.0.0 |
| title | Test-ComputerSecureChannel |
Tests and repairs the secure channel between the local computer and its domain.
Test-ComputerSecureChannel [-Repair] [-Server <String>] [-Credential <PSCredential>] [-WhatIf] [-Confirm]
[<CommonParameters>]
The Test-ComputerSecureChannel cmdlet verifies that the channel between the local computer and its
domain is working correctly by checking the status of its trust relationships. If a connection
fails, you can use the Repair parameter to try to restore it.
Test-ComputerSecureChannel returns $true if the channel is working correctly and $false if it is
not. This result lets you use the cmdlet in conditional statements in functions and scripts. To get
more detailed test results, use the Verbose parameter.
This cmdlet works much like NetDom.exe. Both NetDom and Test-ComputerSecureChannel use the
NetLogon service to perform the actions.
Note
This cmdlet only works on Domain Member computers. When you run it on Domain Controllers, it
returns false positive errors. To verify and reset the secure channels for Domain Controllers,
use netdom.exe or nltest.exe.
Test-ComputerSecureChannelThis command tests the channel between the local computer and the domain to which it is joined.
Test-ComputerSecureChannel -Server "DCName.fabrikam.com"
True
This command specifies a preferred domain controller for the test.
Test-ComputerSecureChannel -RepairThis command resets the channel between the local computer and its domain.
Test-ComputerSecureChannel -VerboseVERBOSE: Performing operation "Test-ComputerSecureChannel" on Target "SERVER01".
True
VERBOSE: "The secure channel between 'SERVER01' and 'net.fabrikam.com' is alive and working correctly."
This command uses the Verbose common parameter to request detailed messages about the operation. For more information about Verbose, see about_CommonParameters.
if (!(Test-ComputerSecureChannel)) {
Write-Host "Connection failed. Reconnect and retry."
}
else {
&(.\Get-Servers.ps1)
}This example shows how to use Test-ComputerSecureChannel to test a connection before you run a
script that requires the connection.
The if statement checks the value that Test-ComputerSecureChannel returns before it runs a script.
Specifies a user account that has permission to perform this action. Type a user name, such as User01 or Domain01\User01, or enter a PSCredential object, such as one that the Get-Credential cmdlet returns. By default, the cmdlet uses the credentials of the current user.
The Credential parameter is designed for use in commands that use the Repair parameter to repair the channel between the computer and the domain.
Type: System.Management.Automation.PSCredential
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseIndicates that this cmdlet removes and then rebuilds the channel established by the NetLogon service. Use this parameter to try to restore a connection that has failed the test.
To use this parameter, the current user must be a member of the Administrators group on the local computer.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalseSpecifies the domain controller to run the command. If this parameter is not specified, this cmdlet selects a default domain controller for the operation.
Type: System.String
Parameter Sets: (All)
Aliases:
Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: FalsePrompts you for confirmation before running the cmdlet.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases: cf
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalseShows what would happen if the cmdlet runs. The cmdlet isn't run.
Type: System.Management.Automation.SwitchParameter
Parameter Sets: (All)
Aliases: wi
Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: FalseThis cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.
You cannot pipe input to this cmdlet.
This cmdlet returns $true if the connection is working correctly and $false if it is not.
- To run a
Test-ComputerSecureChannelcommand on Windows Vista and later versions of the Windows operating system, open Windows PowerShell by using the Run as administrator option. Test-ComputerSecureChannelis implemented by using the I_NetLogonControl2 function, which controls various aspects of the Netlogon service.
Use Netdom.exe to reset machine account passwords of a Windows Server domain controller