我们正在 Windows server 2012R2 上为我们的组织实施一个 Web 应用程序代理 (WAP),以取代 TMG 的身份验证/SSO 功能。目前我们有一个带 SSO 的 WAP,适用于:
- SharePoint 2013
- Outlook
- Office 365
- 其他几个 Web 应用程序。
身份验证工作正常,这是一个真正无缝的身份验证环境。它的后端基于 Kerberos,因此没有对 SharePoint 或 Exchange 使用声明。在 AD 中创建了正确的 SPN。
当我使用 Web 浏览器登录(尝试了常见的方法)并尝试打开位于 SharePoint 服务器上的办公文档时,该文档可以在 Office WebApp 服务器中正常打开(再次使用 SSO),但是当我尝试在 Word(或 Excel 等)中编辑该文档时,我会从 WAP 服务器收到一个新的身份验证提示(基于表单)。
如果我再次输入我的凭据,文档会打开,一切正常。我可以保存文档等。当我打开 MS Office 应用程序并从 SharePoint 网站打开另一个文档时,我没有收到另一个身份验证提示。这不是我们在 TMG 解决方案上获得的无缝体验。
在我看来,有两个不同的会话 cookie 在起作用。一个用于浏览器,一个用于 MS Office 应用程序。当然,我在 Google 上搜索了很多次,但没有找到解决方案。似乎只有我一个人遇到这个问题!
到目前为止,我了解到 MS Office 使用 MSOFBA“引擎”作为其应用程序。也许有一种方法可以将此用户代理添加到 WAP 服务器,以便在 Web 浏览器中进行身份验证时接收正确的 cookie?我真的被困在这里了。再加上我感觉自己是唯一一个,这让我认为我在做一些非常愚蠢的事情。
感谢您的任何想法!
PS 所有对 WAP 的访问都是外部的。我们的域中没有进行内部(内部网)身份验证。我们有一个完整的 BYOD 网络,其中所有内容都显示为“如果您在家工作”。