Test-ComputerSecureChannel

测试和修复本地计算机与其域之间的安全通道。

语法

Default (默认值)

Test-ComputerSecureChannel
    [-Repair]
    [-Server <String>]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

说明

Test-ComputerSecureChannel cmdlet 通过检查其信任关系的状态来验证本地计算机与其域之间的通道是否正常工作。 如果连接失败,可以使用 修复 参数尝试还原它。

Test-ComputerSecureChannel 如果通道正常工作,则返回$true;如果通道未正常工作,则返回$false。 通过此结果,可以在函数和脚本中的条件语句中使用 cmdlet。 若要获取更详细的测试结果,请使用 详细 参数。

此 cmdlet 的工作方式非常类似于 NetDom.exe。 NetDom 和 Test-ComputerSecureChannel 都使用 NetLogon 服务来执行作。

注释

此 cmdlet 仅适用于域成员计算机。 在域控制器上运行它时,它将返回误报错误。 若要验证和重置域控制器的安全通道,请使用 netdom.exenltest.exe

示例

示例 1:测试本地计算机与其域之间的通道

Test-ComputerSecureChannel

此命令测试本地计算机及其加入域之间的通道。

示例 2:测试本地计算机和域控制器之间的通道

Test-ComputerSecureChannel -Server "DCName.fabrikam.com"
True

此命令指定测试的首选域控制器。

示例 3:重置本地计算机与其域之间的通道

Test-ComputerSecureChannel -Repair

此命令重置本地计算机与其域之间的通道。

示例 4:显示有关测试的详细信息

Test-ComputerSecureChannel -Verbose
VERBOSE: Performing operation "Test-ComputerSecureChannel" on Target "SERVER01".
True
VERBOSE: "The secure channel between 'SERVER01' and 'net.fabrikam.com' is alive and working correctly."

此命令使用 详细 通用参数来请求有关操作的详细消息。 有关 详细的详细信息,请参阅 about_CommonParameters

示例 5:在运行脚本之前测试连接

if (!(Test-ComputerSecureChannel)) {
    Write-Host "Connection failed. Reconnect and retry."
}
else {
    &(.\Get-Servers.ps1)
}

此示例演示如何在运行需要连接的脚本之前使用 Test-ComputerSecureChannel 测试连接。

if 语句在运行脚本之前检查 Test-ComputerSecureChannel 返回的值。

参数

-Confirm

在运行 cmdlet 之前,提示你进行确认。

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False
别名:cf

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Credential

指定有权执行此作的用户帐户。 键入用户名(如 User01 或 Domain01\User01),或输入 PSCredential 对象,例如 Get-Credential cmdlet 返回的用户名。 默认情况下,cmdlet 使用当前用户的凭据。

Credential 参数旨在用于使用 Repair 参数修复计算机和域之间的通道的命令。

参数属性

类型:PSCredential
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Repair

指示此 cmdlet 删除,然后重新生成 NetLogon 服务建立的通道。 使用此参数尝试还原测试失败的连接。

若要使用此参数,当前用户必须是本地计算机上的 Administrators 组的成员。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-Server

指定要运行命令的域控制器。 如果未指定此参数,则此 cmdlet 会为操作选择默认域控制器。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-WhatIf

显示 cmdlet 运行时会发生什么情况。 cmdlet 未能运行。

参数属性

类型:SwitchParameter
默认值:False
支持通配符:False
不显示:False
别名:无线

参数集

(All)
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters

输入

None

不能通过管道将输入传递给此 cmdlet。

输出

Boolean

如果连接正常工作,则此 cmdlet 返回 $true;如果连接未正常,则返回 $false

备注

  • 若要在 Windows Vista 和更高版本的 Windows作系统上运行 Test-ComputerSecureChannel 命令,请使用“以管理员身份运行”选项打开 Windows PowerShell。
  • Test-ComputerSecureChannel 是使用 I_NetLogonControl2 函数实现的,该函数控制 Netlogon 服务的各个方面。