PowerShell Web 访问身份验证类型设置为 CredSSP 的问题

Issues with PowerShell Web Access Authentication Type set as CredSSP

设置 PowerShell Web 访问身份验证时,默认情况下它使用“默认”作为身份验证类型。我设置了 CredSSP,它可以很好地用于网络身份验证。但是,我希望 CredSSP 成为默认身份验证模式而不是“默认”。我深入研究了 IIS 中 PSWA web 的配置,我看到有几个可用的值可以覆盖默认值。看到 defaultAuthentcationType 设置为 0,这是正确的设置。在网页上我可以看到 select 框有以下选项

0   Default
1   Basic
2   Negotiate
4   CredSSP
5   Digest
6   Kerberos

3 is missing 就行了。我的研究证实 3 是我的 PowerShell 5.1.15063.966 上缺少的 NegotiateWithImplicitCredential。因此,当我将 defaultAuthenticationType 设置为数字时,网页默认为一个新选项:7 Admin Specified

当我尝试 3 和 4 时,没有一个适用于 CredSSP。这只是 Kerberos,即使我将 defaultAuthenticationType 设置为 CredSSP,也不会出现 Admin 选项,它会再次返回到 Default。

任何有类似经验的人都应该分享我可以做些什么来使用 CredSSP

根据您的情况,尝试以下几个步骤

在您的本地计算机上

PS C:\> Enable-WSManCredSSP -DelegateComputer [ComputerName] -Role Client

接下来,您需要启用服务器端。

PS C:\> invoke-command {enable-wsmancredssp -Role Server -Force} -ComputerName [ComputerName]

有了这个,您现在可以 re-establish 您的远程会话指定 CredSSP 和您的凭据。

PS C:\> enter-pssession [ComputerName] -Authentication Credssp -Credential domain\user

运行 这个授权命令,它会授权你使用 CredSSP

PS C:\> Add-PswaAuthorizationRule -rulename "Rule01" -computername [computerName] -username domain\user -configuration microsoft.powershell

使用PSC:\> Get-PswaAuthorizationRule验证规则。