SaaS 应用已成为当今业务运营中必不可少的工具。虽然 SaaS 应用减轻了 IT 和基础设施负担,但它们也引入了传统架构难以应对的新安全挑战。如今,许多公司正处于实施零信任架构(Zero Trust architecture) ↗的过程中,该架构高度结合了身份、设备和网络信息,以更好地保护应用。
然而,SaaS 应用倾向于将安全重点放在其自身的平台上,例如以安全的方式存储静态数据,并确保其应用不会由于应用漏洞而暴露客户数据。本文档将介绍如何通过使用 Cloudflare 的 Secure Access Service Edge (SASE) 平台来解决 SaaS 应用的一些局限性。具体而言,包括我们的 Zero Trust Network Access (ZTNA) 和 Secure Web Gateway (SWG) 服务,并结合与您现有身份和设备安全厂商的集成。
在讨论为 SaaS 应用实施 SASE 的细节之前,我们应该考虑问一句:SaaS 难道还不安全吗?Salesforce、ServiceNow、Microsoft 等主要提供商已实施了强大的安全功能,包括与用于单点登录 (SSO) 的身份提供商的集成、用于所有应用通信的 SSL/TLS、静态数据加密和全面的审计日志。不幸的是,SaaS 厂商并没有试图在他们的应用中重建整个安全平台,因此他们无法提供现代零信任架构所需的许多功能。
SaaS 应用无法评估连接设备的安全姿态。一台带有有效凭证但已失陷的笔记本电脑看起来与一台安全管理的公用设备完全相同。当从 SaaS 应用下载数据时,它无法看到数据的去向,也无法判断数据下载到的设备是否安全。通常,SaaS 应用的身份验证是通过将用户重定向到身份服务来外包的,因此 SaaS 应用无法感知用户是如何通过身份验证的,从而将所有信任都寄托在身份提供商上。
这些安全挑战因糟糕的网络访问控制而变得更加复杂——大多数 SaaS 应用接受来自任何互联网源的连接,但有时它们可以被限制为仅从一组特定的 IP 地址访问,这些 IP 地址可能与一个或多个物理办公室相关联。但对于在家里工作的远程用户,或者需要访问的合作伙伴和承包商,这些粗浅的网络控制很难扩展。
Cloudflare 的 SASE 平台能够为保护 SaaS 应用带来更偏向零信任的方法。基于设备姿态、身份属性和细粒度网络位置的集中策略可以应用于一个或多个 SaaS 应用。Cloudflare 成为新的企业网络,并且可以控制对基于互联网的 SaaS 应用的访问,仅允许连接到 Cloudflare 的那些用户和设备访问。从本质上讲,它是云中的一个新企业网络。
下图展示了 Cloudflare 如何处于需要访问任何 SaaS 应用的用户、设备和网络之间。提供安全功能的两个主要服务是:
- Zero Trust Network Access:允许 Cloudflare 成为身份代理,以便您可以轻松启用各种身份提供商对单个 SaaS 应用的身份验证。该服务还整合了根据设备姿态和网络位置评估访问的能力。
- Secure Web Gateway:一旦访问 SaaS 应用的所有流量都流经我们的网关,HTTPS 连接就会在 Cloudflare 处终止,您就有能力检查进出 SaaS 应用的数据。这允许您阻止敏感数据被导出到不安全的位置。
上图显示了流量接入(on-ramp)到 Cloudflare 的各种方式,其中 ZTNA 服务确保身份验证,而 Secure Web Gateway 过滤进出 SaaS 应用的双向流量。
- 针对 SaaS 应用的初始请求作为 SSO 流程的一部分被重定向到 Cloudflare。ZTNA 服务根据现有的身份提供商对用户进行身份验证。
- 如果用户的流量不是来自 Cloudflare,则无论其是否通过身份验证,都将被拒绝访问 SaaS 应用。
- 非托管设备上的用户可以使用浏览器隔离,其中访问 SaaS 应用的浏览器在 Cloudflare 服务器上运行,渲染页面的结果被安全地传递给用户的本地浏览器。
- 托管设备使用安全隧道连接到 Cloudflare,因此从设备到 SaaS 应用的所有通信都受到过滤和保护。
- 也可以将 Cloudflare 代理的设备姿态结合到对这些设备流量的授权中。
- 连接到本地网络的设备,通过到 Cloudflare 的安全 IPsec 隧道将所有互联网流量路由到 Cloudflare,这也能确保从网络到 SaaS 应用的所有流量都受到过滤和保护。
- 流量随后通过我们的安全 Web 网关,在此可以对流量应用 DNS 和 HTTP 策略。
- HTTP 策略允许使用 DLP 配置文件检查从 SaaS 应用上传和下载的数据。
- 流量以特定 IP 流出 Cloudflare。SaaS 应用被配置为允许来自该地址的所有流量。
以下是一组示例策略,演示了如何使用 Cloudflare 来保护对 Salesforce 的访问。
第一步是使用 Cloudflare Gateway 下的流出 IP 策略(egress IP policy)。这允许您购买特定 IP 并将其分配给通过 Gateway 进行流量过滤的用户。然后,在 Salesforce 中,您强制规定仅允许源 IP 与您流出策略中匹配的流量进行访问。这种结合确保了访问 Salesforce 的唯一途径是通过 Cloudflare。
| 流出策略 | |
|---|---|
| 身份 | |
| 用户组名称 | All Employees |
| 选择流出 IP | |
| 使用专用 Cloudflare 流出 IP | 203.0.113.88 |
这不仅对于保护对 Salesforce 的访问非常重要,而且对于在使用时充分保护其内容也很重要。现在让我们来看看限制 Sales 或 Executives 组的成员访问的访问策略。我们还利用了 Crowdstrike 集成来确保用户使用公司托管的设备。
| 策略名称 | 受信任设备上的客户经理(Account executives) |
|---|---|
| 操作 | 允许(Allow) |
| 包括(Include) | |
| 组成员 | Sales, Executives |
| 要求(Require) | |
| 身份验证方法 | MFA - 多因素身份验证 |
| Gateway | 开启(On) |
| Crowdstrike 服务对服务 | 综合评分高于 80 |
这第二个策略适用于所有员工,但在授予访问权限之前,我们将应用更多步骤。
| 策略名称 | 受信任设备上的员工 |
|---|---|
| 操作 | 允许(Allow) |
| 包括(Include) | |
| 组成员 | All Employees |
| 要求(Require) | |
| 身份验证方法 | MFA - 多因素身份验证 |
| Gateway | 开启(On) |
| Crowdstrike 服务对服务 | 综合评分高于 80 |
| 其他设置 | |
| 目的合理性(Purpose justification) | 开启(On) |
| 临时身份验证 | 开启(On) |
| 审批人的电子邮件地址 | salesforce-admin@company.com |
我们将在这第二个策略中加入临时身份验证。这意味着如果 Cloudflare 确定传入的请求来自 Sales 或 Executives 部门以外的人员,管理员将需要明确授予他们临时访问权限。在这种情况下,此策略可用于为 Sales 部门以外的员工保护对 Salesforce 的访问,因为客户信息可能是敏感且机密的。
这种方法很重要,原因有几个:
- 它允许对具有潜在风险的访问尝试进行人工监督,从而降低通过失陷或不安全设备进行未经授权访问的可能性。
- 它为合法用户在设备未能达到最高安全标准时访问应用提供了灵活性。这鼓励用户在他们的设备上保持良好的安全实践。
- 此外,由于所有用户流量都路由经 Cloudflare,我们可以通过 Web 流量策略实施额外的安全措施(例如阻止下载敏感数据)。
Cloudflare 的 SASE 平台允许组织集中管理访问 SaaS 应用的安全策略。它还通过允许您利用设备姿态和网络属性来增强安全性。您可以进行配置,使得您的 SaaS 应用基本上只能通过基于 Cloudflare 构建的新企业网络进行访问。