AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 114182
Accepted
Grhm
Grhm
Asked: 2010-02-19 02:40:56 +0800 CST2010-02-19 02:40:56 +0800 CST 2010-02-19 02:40:56 +0800 CST

使用 Exchange WebDAV/Outlook Web Access 进行身份验证

  • 772

我在从除 IIS 和 Exchange 服务器之外的任何机器访问 Exchange WebDav / OWA 时遇到问题。

我们有一个运行 Windows 2003 的小型开发域。一台服务器(我们将其称为 IIS_box)运行 IIS 和 Exchange 2003。IIS_Box 在/Exchange/虚拟目录上设置了 Outlook Web Access,权限拒绝匿名用户以及基本身份验证和集成windows 身份验证已启用。

在 IIS_Box 上,访问 http://IIS_Box.ourDomain.net/Exchange/ 会向用户展示 OWA 应用程序,而不会提示输入用户名/密码。但是,转到http://IIS_Box/Exchange/时,用户会看到一个用户名/密码对话框。

如果用户没有输入用户名和密码,他们会收到401.2 Unauthorized: Access denied due to server configuration错误。如果用户尝试输入用户名和密码,他们会得到一个401.1 Unauthorized: Access is denied due to invalid credentials.

在任何其他机器上,用户都会看到用户名/密码对话框,并且无论他们使用 FQDN 还是仅使用裸服务器名称,都会收到 401 错误。

任何人都知道问题是什么以及我们如何解决它?

编辑:

继杰夫在下面的回答之后,客户正在使用 IE7。

在 IIS_Box 上,将非 FQDN URL 添加到 IIS_Box 上的“Intranet”区域允许该 URL 工作。极好的!

但是,将普通 URL 和 FQDN URL 添加到其他计算机上的“Intranet”区域不会。URL 现在显示为“本地 Intranet”,但我仍然收到基本身份验证提示和 401 错误。

如果我进入客户端 IE 设置,在 Advanced..Security 下,如果我禁用“启用集成 Windows 身份验证”,则一切正常(如果它位于 Intranet 区域中)。我不必在 IIS_Box 上关闭此设置!

但是,它只能在 IE 中正常工作,而不是在使用 WebDAV 接口的代码中 - 我尝试在 Visual Studio 中运行/调试并作为编译/独立可执行文件。啊!

编辑2:

经过 一番 挖掘,似乎“启用集成 Windows 身份验证”实际上启用了 Kerberos 和 NTLM 之间的协商(至少在 IE7 中)。

禁用它后,将使用 NTLM。
启用它后,将协商 Kerberos 或 NTLM。如果不支持 Kerberos,则使用 NTLM。如果支持但失败,则不使用NTLM 。

因此,我要去看看我们是否存在潜在的 Kerberos 问题......

exchange authentication iis webdav kerberos
  • 2 2 个回答
  • 3605 Views

2 个回答

  • Voted
  1. Jeff Atwood
    2010-02-19T03:02:05+08:002010-02-19T03:02:05+08:00

    什么网络浏览器?我知道在 IE 上,关于什么是“内部网”以及允许将 NTLM 身份验证发送到网络服务器的规则是相当拜占庭式的。

    基本上,我怀疑客户端浏览器配置,特别是如果浏览器是 IE。浏览器必须相信 URL 是有福的“内部网”才能发送 NTLM 凭据;如果它认为 URL不是Intranet,它甚至不会尝试发送 NTLM 身份验证。

    • 1
  2. Best Answer
    Grhm
    2010-02-19T07:51:16+08:002010-02-19T07:51:16+08:00

    原来我有两个问题。

    1. 该网站未被识别为“Intranet 站点”,因此它可能根本没有尝试 Kerberos/NTLM 身份验证。

    2. 我们在幕后遇到了 Kerberos 错误。我正在访问 IIS_Box 并且事件日志出现错误,并KRB_AP_ER_MODIFIED显示有关host/IIS_Box.ourDomain.net不匹配的消息HTTP/IIS_Box.ourDomain.net。

    第一个问题在 Jeff 的建议下得到解决 - 谢谢。
    第二个是通过在域控制器上运行以下命令进行排序的:
        setspn -A HTTP/IIS_Box.ourDomain.net IIS_Box

    我发布此解决方案以防其他人遇到类似问题并发现此问题。(我讨厌发现很多人和我有同样的问题,但找不到他们是如何解决的。)

    • 0

相关问题

  • 如何在使用 RPC over HTTPS 时停止 Outlook 2007 要求提供凭据

  • Exchange 备份的 NT 备份是否会使 Exchange 脱机?

  • 如何在 Exchange 2007 中设置资源邮箱日历的忙/闲权限?

  • Exchange 2007:将带有 SenderID 的邮件移动到垃圾邮件文件夹失败?

  • 如何使用 Exchange 2003 SP2 将垃圾邮件发送到个人垃圾文件夹?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve