小编Tom*_*nik的帖子

WinRM - 没有 CredSSP 的第二跳

我想问是否可以仅使用 Kerberos(委托)在 WinRM 服务的“第二跳”进行模拟?

CredSSP 对我来说不是解决方案,因为我无法提示用户密码..我使用的是 Windows 2008 R2、C#、.NET 4.0 ...

场景:我有客户端/服务器应用程序(客户端使用 ODBC 驱动程序与服务器通信)。客户端获取当前用户的 Windows 凭据并传递给服务器。服务器创建线程并模拟调用者。从这个模拟线程中,我尝试使用 Kerberos 身份验证调用远程 WinRM 服务(PowerShell),但它总是失败:

System.Management.Automation.Remoting.PSRemotingTransportException:处理来自远程服务器的数据失败,并显示以下错误消息:访问被拒绝。有关详细信息,请参阅 about_Remote_Troubleshooting 帮助主题。

所以看起来调用者没有权限..

如果我调试,差异在于当前主体的 ImpersonationLevel 属性(无与委派)。

  • 如果我从控制台应用程序运行相同的代码,它就可以工作
  • 我的客户端和服务器现在在同一台机器上

感谢您的任何建议

c# powershell kerberos delegation winrm

6
推荐指数
0
解决办法
989
查看次数

标签 统计

c# ×1

delegation ×1

kerberos ×1

powershell ×1

winrm ×1