使用 Web 应用程序代理

 

发布日期: 2016年9月

本部分内容与 Web 应用程序代理的本地版本相关。 若要支持通过云对本地应用程序进行安全访问,请参阅 Azure AD 应用程序代理内容

Web 应用程序代理 是一个新的远程访问角色服务,在 Windows Server® 2012 R2。Web 应用程序代理 为 web 应用程序在公司网络内部,以允许用户从公司网络外部访问这些任意设备上提供反向代理功能。Web 应用程序代理 预身份验证访问 web 应用程序使用 Active Directory 联合身份验证服务 (AD FS), ,并同时充当 AD FS 代理。

提供对应用程序访问权限

Web 应用程序代理 为组织提供的功能提供给位于组织外部的最终用户在组织内部的服务器上运行的应用程序的选择性访问。 使应用程序在外部可用的过程称为发布。 与传统的 VPN 解决方案,当您发布到应用程序时不同 Web 应用程序代理 最终用户可以访问仅向您发布的应用程序。 但是, Web 应用程序代理 还可以部署与 VPN 一起作为您的组织中的远程访问部署的一部分。 请参阅 Interoperability with Other Remote Access Products。

发布应用程序

通过 Web 应用程序代理发布,最终用户可以从其自己的设备访问组织的应用程序,这样,用户不再局限于使用公司便携式计算机来完成其工作,而还可以使用他们的家庭计算机、平板电脑或智能手机。 此外,最终用户不需要在其设备来访问已发布的应用程序上安装任何其他软件。 可以在装有标准浏览器的客户端、Office 客户端或使用 OAuth 的丰富客户端(例如 Windows 应用商店应用)上使用 Web 应用程序代理。Web 应用程序代理充当通过它发布的任何应用程序的反向代理,因此,最终用户获得的体验就如同他们的设备与应用程序直接连接。

访问应用程序

Web 应用程序代理 始终必须与部署 AD FS。 这使您可以利用的功能 AD FS, ,如单一登录 (SSO)。 这使用户输入其凭据一次并在后续场合中,它们将不需要输入其凭据。 支持 SSO Web 应用程序代理 的后端服务器的使用基于声明的身份验证; 例如 SharePoint 基于声明的应用程序和集成 Windows 身份验证使用 Kerberos 约束委派。 集成的 Windows 身份验证基于应用程序可以按定义 AD FS 作为可以在应用程序的请求中定义丰富会强制执行的身份验证和授权策略的信赖方信任。

保护应用程序免受外部威胁

Web 应用程序代理 用作 Internet 和企业应用程序之间的障碍。 在许多组织而言,当您部署 Web 应用程序代理 和通过它发布应用程序,这些应用程序将可供外部用户的设备未加入到你的域; 例如,个人便携式计算机、 平板电脑或智能手机。 这些设备是未加入域且而在这种情况下,它们被称为非托管设备,并且不受信任公司网络内。 由于您想要能够访问重要信息,无论何时何地它们位于您的用户,您必须要缓解安全风险,即允许用户从这些受管理,且不受信任的设备访问公司资源。Web 应用程序代理 提供了大量的免受外部威胁保护您的企业网络的安全功能。Web 应用程序代理 使用 AD FS 进行身份验证和授权,以确保只有在用户进行身份验证和授权的设备上的用户才能访问您公司的应用程序。

深层防御

在建议的部署中, Web 应用程序代理 在面向 Internet 的防火墙和企业网络防火墙之间的外围网络中部署。 但是,除了防火墙本身,所提供的保护 Web 应用程序代理 提供额外的保护您免受外部威胁的应用程序。

  • 当 HTTPS 通信到达时,它是定向到由发布地址 Web 应用程序代理, ,它将终止通信并启动新发布的应用程序的请求。 它因此充当外部设备和发布的应用程序之间的会话级缓冲区。 也就是说,当用户访问发布的应用程序,它们并不直接访问应用程序,相反,它们访问应用程序通过 Web 应用程序代理。

  • 到达的任何其他流量 Web 应用程序代理 删除并不会转发到发布的应用程序。 这包括任何非法的 HTTP 或 HTTPS 请求,可能会作为拒绝服务攻击的一部分使用零时差攻击、 SSL 攻击,等等。

  • 任何身份验证的请求到达 Web 应用程序代理 包含身份验证令牌从 AD FS 将检查以确保收到的令牌适用于客户端发送该令牌。 这通过检查设备 (通过工作区加入证书) 对应于标识设备时通过身份验证的令牌中声明 AD FS。

身份验证和授权

若要保护对您的组织中的应用程序的访问,建议只允许访问经过身份验证和授权的用户。 当你发布应用程序通过 Web 应用程序代理, ,这实现使用 AD FS, ,提供身份验证并实施发布的应用程序的授权。

备注

Web 应用程序代理 此外允许传递预身份验证,这样就可以发布,不需要预身份验证或可用的身份验证功能不支持的客户端应用程序。

身份验证的用户和设备

当你发布应用程序通过 Web 应用程序代理, ,所依据的用户和设备进行身份验证才能获得访问应用程序的过程被称为预身份验证。Web 应用程序代理 支持两种形式的预身份验证︰

  • AD FS 预身份验证-使用时 AD FS 进行预身份验证,要求用户进行身份验证到 AD FS 服务器之前 Web 应用程序代理 将用户重定向到已发布的 web 应用程序。 这可确保对已发布的 web 应用程序的所有通信进行身份都验证。

  • 传递预身份验证,用户无需输入凭据,在连接到发布的 web 应用程序之前。

    备注

    传递预身份验证已对应用程序是否需要用户的凭据提供给应用程序没有影响。 也就是说,使用传递预身份验证配置的应用程序不需要用户输入凭据以使接入公司网络,但可能要求用户输入凭据以查看应用程序内容。

可以轻松地访问应用程序发布的 Web 应用程序代理, ,并使用 AD FS 预身份验证的最终用户应使用以下客户端之一︰

  • 任何支持 HTTP 重定向; 客户端例如,web 浏览器。Web 应用程序代理 对传入请求,将用户重定向到身份验证地址并返回到原始的 web 地址,这次它带有身份验证概念执行相应的措施。

  • 富客户端使用 HTTP 基本版,例如,Exchange ActiveSync。

  • 使用 MSOFBA; 任何客户端例如,Word、 Excel 或 PowerPoint。 在这种情况下,用户尝试访问从公司网络内的服务器存储其最近的文档中的文档。

  • Windows 应用商店应用程序和 RESTful 应用程序与使用 Web 身份验证代理进行身份验证的客户端。 用户可以打开其设备获取的令牌上的应用程序 AD FS 通过 Web 身份验证代理,并在 HTTP Authorization 标头中对应用程序的后续请求中包含该令牌。

备注

具体取决于客户端用来访问已发布应用程序, Web 应用程序代理 决定如何处理该请求。

身份验证功能

当您使用 AD FS 进行身份验证,也可以使用的所有功能, AD FS 提供︰

当你发布应用程序通过 Web 应用程序代理 不要求您配置 AD FS 上面提到的身份验证功能。 这使您可以提供对不能以加入工作区中,或提供其他因素的身份验证,如网亭的设备的访问。

Web 应用程序代理技术概述

当您决定使用 Web 应用程序代理 在您的组织,我们建议您部署您 Web 应用程序代理 后面前端防火墙以将其分隔从 Internet 中访问,或两个防火墙; 在前端防火墙与 Internet 隔开和后端防火墙以将其分隔从公司网络之间的服务器。 在这种拓扑, Web 应用程序代理 提供针对来自 Internet 的恶意用户一个保护层。 没有其他服务器所需位于外围网络;也就是说,您 AD FS 服务器位于公司网络,并且只能通过达到 Web 应用程序代理 使用其内置 AD FS 代理功能。

下图显示了典型的部署拓扑 Web 应用程序代理 在外围网络中两个防火墙之间。

Web 应用程序代理拓扑

Web 应用程序代理服务器配置存储

Web 应用程序代理 配置存储上 AD FS 服务器在您的组织; 因此, Web 应用程序代理 服务器需要连接到 AD FS 服务器。 此外,在配置第一个之后 Web 应用程序代理 服务器上,您可以安装其他 Web 应用程序代理 服务器以创建群集部署。 当在群集中的新服务器上安装角色服务时,配置将自动传输到新的服务器完成后 Web 应用程序代理 配置向导。

由于 Web 应用程序代理 将其配置存储上 AD FS 它没有本地服务器存储配置信息。

AD FS 代理功能

Web 应用程序代理 角色服务也是 AD FS 代理。 也就是说, Web 应用程序代理 侦听的所有端点, AD FS 侦听。Web 应用程序代理 此外将从 Internet 到转发的任何请求 AD FS 和响应的 AD FS 到 Internet。 请注意, Web 应用程序代理 角色服务是对的替代 AD FS 代理角色。

在您的组织中创建代理的联合身份验证服务中添加额外的安全层到您 AD FS 部署。 请考虑部署 Web 应用程序代理 时您希望您的组织的外围网络中︰

  • 防止外部客户端计算机直接访问您 AD FS 服务器。 通过部署 Web 应用程序代理 外围网络中的服务器,您有效地将隔离您 AD FS 服务器。Web 应用程序代理 服务器不能用于生成令牌的私钥的访问。

  • 提供区分来自 Internet 而不是来自于您使用集成 Windows 身份验证的企业网络的用户的用户的登录体验的简便方法。

管理 Web 应用程序代理

Web 应用程序代理 使用多个提供的工具和功能 Windows Server 2012 R2 使您能够轻松地安装、 部署和管理企业部署中。

  • Web 应用程序代理 是中的角色服务 Windows Server 2012 R2。 这使您可以轻松地安装 Web 应用程序代理 在您部署使用 服务器管理器 或 Windows PowerShell。

  • Web 应用程序代理 集成到远程访问管理控制台中,从而允许你管理你 Web 应用程序代理 服务器和其他远程访问技术,如 DirectAccess 和 VPN 从同一个远程访问管理控制台。

  • Web 应用程序代理 提供通过一组的全部功能 Windows PowerShell 命令和 Windows Management Instrumentation (WMI) API。

  • 为帮助排除故障, Web 应用程序代理:

    • 将事件写入到 Windows 事件日志。

    • 公开了大量性能计数器。

    • 具有专用的最佳做法分析器 (BPA)。

与其他远程访问产品的互操作性

Web 应用程序代理 是一项角色服务中的远程访问角色 Windows Server 2012 R2。 您可以安装 Web 应用程序代理 -并排提供的远程访问在以下方案︰

DirectAccess VPN Web 应用程序代理
单服务器部署 单服务器部署 单服务器部署
多站点部署 多服务器部署 在同一台服务器上不受支持
在同一台服务器上不受支持 多服务器部署 多服务器部署
群集部署1 多服务器部署 多服务器部署2

备注

1 - 在预先存在的 DirectAccess 群集部署中,只能使用 Web 应用程序代理 安装 Windows PowerShell。

2 - 在预先存在的多服务器 Web 应用程序代理部署中,只能使用 Windows PowerShell 安装 DirectAccess。

Web 应用程序代理 提供了应用程序发布功能,到 Forefront Unified Access Gateway (UAG) 类似。 但是, Web 应用程序代理 与其他服务器和服务,以提供更加简化的部署进行交互。 这可帮助你专注于配置您的部署中,仅有必要部分。 建议的任何新的部署,需用上面描述的方案的应用程序发布功能,您应使用 Web 应用程序代理。

请参阅

规划使用 Web 应用程序代理发布应用程序