![]() |
1
1
在使用时,您似乎是双跳问题的受害者 Integrated Windows Authentication (IWA)和 Kerberos 。第一跳是从浏览器跳到web应用程序;第二个跃点是从web应用程序到WCF服务。 以下是一些资源,可以更全面地解释这个问题,并可能提供解决方案:
您可以将Active Directory配置为支持 Kerberos delegation (通常基础设施人员不喜欢这样),或者您可以关闭模拟,并为web应用程序和IIS应用程序池使用“服务”帐户,该帐户可以代表最终用户使用WCF服务进行身份验证。 |
![]() |
2
1
开发服务器上的默认凭据是什么?试着在那里做一个日志,看看你得到了什么。 这就是我所怀疑的:在本地运行时,凭据就是您的windows凭据。当您从dev调用dev服务器时,凭据将是网站运行的任何帐户。如果该特定帐户没有访问权限,那么它就会爆炸。 |
![]() |
3
1
他们之前怎么说的,这看起来像是一个模仿问题。 您是否尝试使用“运行方式”启动客户端程序以更改凭据? 此外,您可以更改这行代码
到
看看它是否有效。此外,您需要在web服务器上创建带有“MyPassword”的帐户“MyUserName”才能使其工作。 |
|
4
1
当经过身份验证的用户无法访问承载WCF服务的物理路径时,可能会导致这些错误。在开发服务器上,打开IIS管理器并导航到服务的虚拟目录。在操作栏的右侧,单击“基本设置”。在“物理路径”文本框下方,单击“连接为…”。选择“特定用户”并尝试将其设置为您知道有权访问开发服务器上物理文件夹的用户帐户。通常,这将是一个密码不会过期的服务帐户。 |
![]() |
5
1
从浏览器运行时,浏览器将发送您的身份验证凭据。此外,iis-express将作为登录用户运行,因此这也将发送您的凭据。Iis不同,它将作为本地帐户运行。即使您在前端iis上进行了身份验证,也不会将其传递到后端。Windows模拟令牌的允许跃点数有限,通常为0。这样做是为了防止你正在做的事情。 如果您希望前端身份验证流到后端,那么您可能应该自己进行身份验证,并在通过时获取用户/通行证。或者,如果你自己进行身份验证,你可以创建一个模拟令牌,允许跳到另一台机器,它应该可以工作。 |
![]() |
Mike Bruno · 访问模拟帐户的私钥 7 年前 |
![]() |
molnarm · 使用模拟时Mutex创建挂起 9 年前 |
![]() |
user1336827 · 安全windows模拟? 10 年前 |
![]() |
Joshy · 未将凭据传递给WCF服务,导致401 11 年前 |