我有两台机器,一台是 EXTERNAL 一台是 INTERNAL(我们称它们为 EXT 和 INT)。这两台机器都不属于 AD(没有网络帐户,只有本地帐户),并且两台机器都有管理员帐户,使用不同的凭证(因此忘记传递)。
现在我所做的是
- 在 INT 上创建目录 C:\shareme
- 为所有管理员账户共享此目录
- 在 EXT 上打开资源管理器并输入 \INT\shareme
- 输入 INT 帐户的凭据(INT\Admin 和密码),一切正常,我看到内容
- 问题来了……
- 在 EXT 上打开 IIS,点击添加虚拟目录
- 别名:remote,物理路径:\\INT\shareme,连接身份:特定用户,用户名:INT\Admin + 密码
- 测试设置失败,显示
Logon failure: unknown user name or bad password
- 我可以在 IIS 中探索,但是仅有的因为我已经在 Windows 资源管理器中进行了身份验证
- 访问
http://localhost/remote
返回错误 500.19
显然 IIS 并不关心网络凭证。它抱怨未知用户名,因为它大概检查本地机器上的帐户,而不是通过远程机器进行身份验证。
更改 logonMethod 没有帮助(Interactive、ClearText 等)有什么想法吗?
答案1
应用程序池运行所用的用户帐户也需要访问 UNC 路径。我相信 IIS 7 中的默认帐户是“NETWORK SERVICE”,它无法访问远程计算机。您需要将应用程序池配置为以在两个系统上都存在的帐户运行,并且具有相同的凭据。
答案2
从技术上讲,如果您想避免在多台服务器上重复用户,您可以设置一个非常基本的 Active Directory 服务器(可以安装在现有服务器上)。这样,您就可以在多台服务器上使用一个域用户。