跳到主要内容

安全

安全应当成为平台架构、集成模式和日常运营流程的一部分,而不是在生产系统外围事后补上的措施。

Zayloft 围绕受控访问、范围受限的凭据、租户边界、安全传输、事件验证、可审计性以及通信与身份工作流中的实用运营防护进行设计。

安全始于明确的边界。

安全的通信平台应明确谁能访问什么、哪个应用正在执行操作、密钥存放在哪里、事件如何获得信任,以及重要变更如何被记录。

最小权限

用户和应用仅应获得履行其职责所需的权限。

租户隔离

组织和项目数据应在资源访问与处理过程中保持相互隔离。

纵深防御

安全应结合身份控制、传输保护、应用防护和运营审查。

可追溯性

重要的身份验证、凭据、配置和管理事件应能够追溯到相应主体。

面向人员与应用的身份和访问控制。

人员访问和机器访问面临不同风险。Zayloft 的架构将用户身份验证与应用凭据分离,并为两者提供受控访问模式。

基于角色的访问

根据工程、运营、财务、支持和管理等职责分配权限。

强身份验证

对敏感账户访问使用适当的多因素认证和现代身份验证控制。

单点登录与联合身份

在已配置的情况下,企业身份模式可采用 SAML 2.0 和 OpenID Connect 等标准。

服务凭据

应用应使用范围受限的机器凭据,而不是共享人员凭据。

凭据轮换

及时轮换已暴露、过期或高风险凭据,并移除不再需要的访问权限。

配置生命周期

使用结构化的入职、角色变更和离职流程,使访问权限与组织当前状态保持一致。

密钥应保存在可信的服务器端系统中。

API 密钥、SMPP 凭据、Webhook 签名密钥和其他敏感值绝不应嵌入公开代码,也不应分发到无法妥善保护的位置。

受保护的存储

将密钥存放在受保护的服务器配置或适当的密钥管理系统中。

环境隔离

开发、测试和生产环境的凭据应相互独立。

范围受限的访问

仅为应用所需的项目、环境和能力签发凭据。

撤销

当访问发生变化或怀疑凭据泄露时,应迅速移除或轮换凭据。

保护系统之间传输的数据。

公共 API 和受支持的持久协议连接应使用现代安全传输。应用还应验证其连接的系统,而不是关闭证书或签名检查。

HTTPS 与 TLS

API 和浏览器传输应使用现代 TLS。

安全持久连接

对于受支持的持久协议,在可用且适当的情况下使用安全连接选项。

Webhook 签名

在信任事件数据之前验证已签名的 Webhook 载荷。

防重放

使用事件标识符、时间戳和幂等处理,降低重放与重复处理的风险。

应用安全应以安全方式失败。

分布式系统会遇到无效请求、意外输入、重试和部分故障。安全集成应将这些视为正常情况并进行明确处理。

输入验证

在处理前验证结构化请求、资源标识符、格式和允许值。

安全错误处理

返回有用的机器可读错误,同时避免暴露提供商密钥、内部凭据或不必要的基础设施细节。

幂等性

使用幂等请求模式,确保重试不会悄然重复执行敏感的客户操作。

速率控制

使用适当的速率和吞吐量控制,以减少滥用并保护依赖系统。

滥用防护

在存在显著滥用风险时,结合账户验证、抑制、审查和行为控制。

安全默认值

新凭据、新环境和新集成应从保守访问开始,而不是默认授予广泛权限。

在数据的整个生命周期内保护数据。

安全并不限于存储。数据的收集、访问、处理、保留、导出和删除都需要与服务及客户配置相适应的明确边界。

数据最小化

仅收集和暴露运行所请求服务所需的信息。

访问隔离

根据角色、项目和服务职责限制对客户数据和运营数据的访问。

保留

根据产品行为、客户配置和适用要求定义保留期限。

删除

在数据符合删除条件且运营依赖允许时支持删除工作流。

导出

将数据导出视为敏感操作,并实施适当的授权与审计。

日志

日志应足以支持运营,但不应无必要地记录密钥或敏感载荷内容。

可审计性帮助团队了解发生了什么变化。

当账户配置、凭据或管理设置发生变化时,团队需要足够的上下文来调查该操作及其运营影响。

管理事件

记录有意义的账户、访问和配置变更。

凭据事件

跟踪凭据创建、轮换、撤销及其他重要生命周期操作。

请求标识符

使用稳定标识符跟踪重要的 API 与 Webhook 活动。

运营调查

在诊断事件或异常行为时关联日志、送达事件和账户变更。

安全开发是一项持续的工程责任。

当团队把架构、依赖项、代码变更和运营行为的审查纳入日常交付,而不是等到事件发生后才处理时,应用安全会得到改善。

代码审查

在生产发布前审查与安全相关的变更和访问路径。

依赖管理

跟踪第三方依赖,并对相关安全更新作出适当响应。

环境控制

将生产凭据、配置和数据与开发工作流隔离。

测试

围绕高影响工作流开展适当的应用、集成和滥用场景测试。

事件处理应优先考虑遏制、证据与恢复。

发现可疑活动或安全问题时,应重点限制影响、保存有用证据、恢复安全运行,并在适当情况下与受影响方沟通。

检测

利用运营信号、身份验证事件、错误模式和报告识别可疑情况。

遏制

必要时限制受影响的凭据、账户、路由或服务,以降低进一步影响。

调查

使用日志、账户历史和技术上下文了解影响范围与根本原因。

恢复

通过已验证的配置、凭据轮换和纠正措施恢复服务。

安全责任由平台与客户环境共同承担。

Zayloft 可以提供平台控制,但客户也控制自己的用户、凭据、集成、消息内容、端点和下游系统。

客户访问

客户应负责地管理其用户、角色、设备和凭据。

集成安全

客户应用应验证事件、保护密钥,并安全处理重试和错误。

端点安全

Webhook 和 API 端点仍属于客户的安全边界。

内容与受众

客户仍负责其通信内容的适当性、授权情况以及目标收件人。

负责任地报告安全问题。

如果您认为发现了影响 Zayloft 的安全问题,请提供足够的技术细节以供审查,同时不要公开披露敏感的利用信息。

请提供

受影响的 URL 或服务、复现步骤、观察到的行为、预期行为以及相关时间戳。

请避免

不要访问不属于您的数据、干扰生产服务,也不要在问题得到审查前公布漏洞利用细节。

联系方式

请将安全相关报告发送至 support@zayloft.com,并在主题中注明“Security report”。

保留上下文

在有帮助时附上请求 ID、截图或日志,但请移除密钥、密码和无关个人数据。

常见问题

把安全融入运营模型,而不是围在系统外围。

将范围受限的访问、受保护的密钥、租户边界、签名事件、安全传输和可审计性作为通信与身份验证日常运营的一部分。

如有安全或技术咨询,请联系 support@zayloft.com。

Zayloft 在线客服
AI 优先 · 随时转人工
智能助手在线 · 可随时转人工
请勿发送密码、API 密钥、支付卡信息或其他机密信息。