PowerShell Web 访问允许您选择身份验证类型。默认情况下,它使用的值为Default
,最终为Negotiate
。我已经设置了 CredSSP 以允许使用 CredSSP 登录到 PSWA 服务器本身,以便网络身份验证在会话内工作(避免双跳问题,无需在整个网络上委托凭据)。
无论如何,我希望 CredSSP 成为登录页面上的默认选项。
查看 IIS 中 PSWA Web 应用程序的配置选项,可以设置多个值来覆盖默认值。
其中一个被称为defaultAuthenticationType
which is a string
but 被设置为0
.
这似乎是正确的设置,但我无法让它工作。
如果我检查登录网页,我可以看到选择框具有以下值:
0 Default
1 Basic
2 Negotiate
4 CredSSP
5 Digest
6 Kerberos
Run Code Online (Sandbox Code Playgroud)
3
不见了。
JosefZ发现这3
是NegotiateWithImplicitCredential
根据此页面,但对我而言,在 Windows PowerShell 5.1.15063.966 上,枚举中缺少名称/值。
如果我设置defaultAuthenticationType
为一个数字,则网页默认为一个新选项:
7 Admin Specified
Run Code Online (Sandbox Code Playgroud)
我试过3
and 4
,但没有一个有效。使用 Kerberos 进行登录,不使用 CredSSP。
如果我手动选择 CredSSP,它会按预期工作。
如果我设置defaultAuthentcationType
为类似 的字符串CredSSP …
在尝试使用远程处理创建 PowerShell 脚本时,我遇到了我认为的双跳问题。在那篇文章中,Perriman 简要描述了问题以及解决问题的具体步骤(如果您知道命令,那几乎是微不足道的,但对于像我这样不太熟悉的人来说,这些信息非常宝贵!)。
我Enable-WSManCredSSP Server
在我的 Win7 服务器上运行Enable-WSManCredSSP Client –DelegateComputer <FQDN of the server>
时没有发生任何意外,但尝试在我的 Win7 客户端上运行时产生了这个错误:
Enable-WSManCredSSP : The client cannot connect to the destination specified
in the request. Verify that the service on the destination is running and
is accepting requests.
Consult the logs and documentation for the WS-Management service running
on the destination, most commonly IIS or WinRM. If the destination
is the WinRM service, run the following com mand on the …
Run Code Online (Sandbox Code Playgroud)