亚马逊AWS官方博客
使用 Firewall Manager 轻松搞定多账户 WAF 资源管理
概述
AWS WAF 是一种用于保护 Web 应用程序免受常见漏洞攻击的工具,它可以帮助抵御常见的 Web 漏洞和机器人攻击,这些攻击可能会影响应用程序的可用性、降低安全性或消耗过多的资源。AWS WAF 允许用户创建安全规则,以控制机器人流量并阻止常见的攻击模式,如 SQL 注入或跨站脚本攻击(XSS),它还能更轻松地监控和阻止常见机器人,并限制它们的速率,通过精确控制指标的发出方式,提高对 Web 流量的可见性。
如今,AWS WAF 已然成为 Web 安全的不二之选。很多企业在不同部门会使用不同账户,因此造成大量的 Web ACL 散落在不同的 AWS 账户中,运维团队在进行安全管理时将面临如下挑战:
- 需要登录到不同的账户去创建 Web ACL。
- 需要登录到不同的账户去更新 Web ACL。包括发现新的风险 IP、增添调用服务、新增白名单、增加机器人检测,业务更新后发现原有规则对新业务造成了影响,需要对规则进行调整排查。
- 安全或审计团队需要相关的只读权限,但由于涉及到的账户太多,权限配置复杂。
AWS Firewall Manager 可以集中管理和维护多个 AWS 账户中的 Web ACL。使用 Firewall Manager 创建并管理 Web ACL,用户无需登录到每个账户,只需要在一个中央位置创建和更新规则,而不必在各个账户之间来回切换。AWS Firewall Manager 还提供了灵活的权限控制,以满足安全和审计团队的需求。您可以根据需要配置只读权限,而不必为涉及多个账户而担心复杂的权限配置。这使得安全和审计团队可以更轻松地访问相关信息,并进行必要的审计和监控。
Firewall Manager 经典使用场景
用户已经使用 AWS Organization 构建企业组织,实现对于组织中所有账户和资源的集中化管理。组织中的 management account 仅仅用于对账户和资源统一管理,但不涉及具体的资源创建和日常管理。
管理目标
- Account 1 是 organization management account,用户期望 Account 1 可以将 Firewall Manager 的管理权限委托给 Account 2。
- Account 2 可以指定一部分 user 拥有管理权限,一部分 user 仅拥有只读权限。
逻辑架构图
本文主要介绍针对这种使用场景,如何进行账户之间的权限配置。
配置方法
- 确保 account 1 和 account 2 在同一个 organization 下。
- 使用 account 1 下有 organization admin 权限的用户登录 Firewall Manager 控制台,创建 Firewall Manager 默认管理员帐户,这里我们假设将 account 1 配置为 Firewall Manager 的默认管理员帐户。
- 因为 account 1 作为组织的总管理账户,不直接进行资源管理,这里操作添加 account 2 作为 Firewall Manager 的管理账户。从控制台上添加管理员账户 account 2,可根据需要授予这个管理员账户对应于不同 account、region、policy type 等的权限。
- 使用 account 2下有管理员权限的用户登录,即拥有相应的 Firewall Manager 的管理权限。可以创建、管理 WAF policy,但是管理的范围仅限于 account 2 创建的 WAF policy,既不继承 account 1 创建的 WAF policy,也不会共享其他 Firewall Manager 管理员创建的 WAF policy。所以在使用时,建议创建和管理都集中在 account 2。
- 使用 Account 2 下拥有 admin 权限的 user 登录 IAM,可以赋予账户内其他用户或者用户组 Firewall Manager 只读权限或者管理权限。
- 赋予只读权限时,操作 add permission 时,需绑定两条 policy。一条是 AWS managed policy “AWSWAFReadOnlyAccess ”,然后再自建一条 policy,仅开放 Firewall Manager 的最小只读权限,内容如下:
- 赋予管理权限时,操作 add permission 时,需绑定两条 policy。一条是 AWS managed policy “AWSWAFFullAccess ”,然后再自建一条 policy,开放 Firewall Manager 相关的权限,内容如下:
- Account 2 若需要开放更多其他权限给到相应的用户或者用户组,可按需在 IAM 中添加相应的 policy。
总结
AWS Firewall Manager 是一个功能强大的工具,能够简化跨多个 AWS 账户管理和维护 AWS WAF 的任务。它提供集中管理和维护 Web ACL 的能力,支持创建和更新规则,并提供灵活的权限控制。使用 AWS Firewall Manager,用户可以更高效地保护 Web 应用程序免受常见漏洞攻击,并简化管理过程。
其他注意事项
AWS Firewall Manager 的使用有一些先决条件,如下:
参考文档
适用于 AWS Firewall Manager 的基于身份的策略示例