安全加固
安全加固是实施配置、控制和最佳实践的过程,以最大限度地减少漏洞并保护系统免受未经授权的访问或攻击。在 API 网关的背景下,安全加固至关重要,因为网关通常充当众多后端服务、数据源和敏感业务逻辑的单一入口点。通过加强网关的安全性,组织可以减少潜在的攻击面,并确保只有经过授权、经过适当身份验证的请求才能到达关键资源。此外,了解敏感信息的存储位置和方式对于规划实施强大的安全措施并防止未经授权的访问、数据泄露或恶意攻击非常重要。API 网关的安全加固不仅对于保护敏感数据至关重要,而且对于保持性能、法规遵从性和对系统的信任也至关重要。
以下是说明 API7 企业版各个组件及其交互方式的架构图:

安全加固功能
- 控制台和 DP 管理器之间的通信默认使用 HTTPS。
- 在日志保存到数据库之前,审计日志中的敏感数据会被脱敏。禁止对审计日志进行任何额外更改。
- 用户 凭证,包括用户名和密码以及访问令牌,在保存到数据库之前会加盐并进行 PBKDF2 加密。
- 敏感插件配置(如 Redis 密码)在插件模式的
encrypted_fields中指定。这些字段中的信息在保存到数据库之前使用 AES256 加密。 - 用于加密敏感信息的密钥环因网关组而异。它们在保存到数据库之前也会被加密。
安全加固措施
以下是一些你可以选择的其他安全措施,以加强 API7 企业版的安全性。
保护数据平面通信
为了确保客户端和 API7 企业版之间以及 API7 企业版和上游服务之间交换数据的机密性和完整性,可以使用 API7 企业版中的 SSL 配置为通信配置 TLS 或 mTLS(双向 TLS)。 通过启用 TLS,在客户端和 API7 企业版之间或在 API7 企业版和上游服务之间传输的数据将被加密,防止拦截和篡改。此设置确保未经授权的各方无法读取或更改传输中的数据,从而在可能不安全的网络上提供安全通道。
使用 mTLS,双方(API7 企业版及其客户端或上游服务)相互验证身份。这种双向身份验证对于高安全性环境特别有价值,在这些环境中,验证通信双方的身份可以防止未经授权的访问。mTLS 通常用于保护与敏感后端系统的通信或在数据保护至关重要的内部服务之间进行通信。