最小权限
用户和应用仅应获得履行其职责所需的权限。
安全的通信平台应明确谁能访问什么、哪个应用正在执行操作、密钥存放在哪里、事件如何获得信任,以及重要变更如何被记录。
用户和应用仅应获得履行其职责所需的权限。
组织和项目数据应在资源访问与处理过程中保持相互隔离。
安全应结合身份控制、传输保护、应用防护和运营审查。
重要的身份验证、凭据、配置和管理事件应能够追溯到相应主体。
人员访问和机器访问面临不同风险。Zayloft 的架构将用户身份验证与应用凭据分离,并为两者提供受控访问模式。
根据工程、运营、财务、支持和管理等职责分配权限。
对敏感账户访问使用适当的多因素认证和现代身份验证控制。
在已配置的情况下,企业身份模式可采用 SAML 2.0 和 OpenID Connect 等标准。
应用应使用范围受限的机器凭据,而不是共享人员凭据。
及时轮换已暴露、过期或高风险凭据,并移除不再需要的访问权限。
使用结构化的入职、角色变更和离职流程,使访问权限与组织当前状态保持一致。
API 密钥、SMPP 凭据、Webhook 签名密钥和其他敏感值绝不应嵌入公开代码,也不应分发到无法妥善保护的位置。
将密钥存放在受保护的服务器配置或适当的密钥管理系统中。
开发、测试和生产环境的凭据应相互独立。
仅为应用所需的项目、环境和能力签发凭据。
当访问发生变化或怀疑凭据泄露时,应迅速移除或轮换凭据。
公共 API 和受支持的持久协议连接应使用现代安全传输。应用还应验证其连接的系统,而不是关闭证书或签名检查。
API 和浏览器传输应使用现代 TLS。
对于受支持的持久协议,在可用且适当的情况下使用安全连接选项。
在信任事件数据之前验证已签名的 Webhook 载荷。
使用事件标识符、时间戳和幂等处理,降低重放与重复处理的风险。
分布式系统会遇到无效请求、意外输入、重试和部分故障。安全集成应将这些视为正常情况并进行明确处理。
在处理前验证结构化请求、资源标识符、格式和允许值。
返回有用的机器可读错误,同时避免暴露提供商密钥、内部凭据或不必要的基础设施细节。
使用幂等请求模式,确保重试不会悄然重复执行敏感的客户操作。
使用适当的速率和吞吐量控制,以减少滥用并保护依赖系统。
在存在显著滥用风险时,结合账户验证、抑制、审查和行为控制。
新凭据、新环境和新集成应从保守访问开始,而不是默认授予广泛权限。
安全并不限于存储。数据的收集、访问、处理、保留、导出和删除都需要与服务及客户配置相适应的明确边界。
仅收集和暴露运行所请求服务所需的信息。
根据角色、项目和服务职责限制对客户数据和运营数据的访问。
根据产品行为、客户配置和适用要求定义保留期限。
在数据符合删除条件且运营依赖允许时支持删除工作流。
将数据导出视为敏感操作,并实施适当的授权与审计。
日志应足以支持运营,但不应无必要地记录密钥或敏感载荷内容。
当账户配置、凭据或管理设置发生变化时,团队需要足够的上下文来调查该操作及其运营影响。
记录有意义的账户、访问和配置变更。
跟踪凭据创建、轮换、撤销及其他重要生命周期操作。
使用稳定标识符跟踪重要的 API 与 Webhook 活动。
在诊断事件或异常行为时关联日志、送达事件和账户变更。
当团队把架构、依赖项、代码变更和运营行为的审查纳入日常交付,而不是等到事件发生后才处理时,应用安全会得到改善。
在生产发布前审查与安全相关的变更和访问路径。
跟踪第三方依赖,并对相关安全更新作出适当响应。
将生产凭据、配置和数据与开发工作流隔离。
围绕高影响工作流开展适当的应用、集成和滥用场景测试。
发现可疑活动或安全问题时,应重点限制影响、保存有用证据、恢复安全运行,并在适当情况下与受影响方沟通。
利用运营信号、身份验证事件、错误模式和报告识别可疑情况。
必要时限制受影响的凭据、账户、路由或服务,以降低进一步影响。
使用日志、账户历史和技术上下文了解影响范围与根本原因。
通过已验证的配置、凭据轮换和纠正措施恢复服务。
Zayloft 可以提供平台控制,但客户也控制自己的用户、凭据、集成、消息内容、端点和下游系统。
客户应负责地管理其用户、角色、设备和凭据。
客户应用应验证事件、保护密钥,并安全处理重试和错误。
Webhook 和 API 端点仍属于客户的安全边界。
客户仍负责其通信内容的适当性、授权情况以及目标收件人。
如果您认为发现了影响 Zayloft 的安全问题,请提供足够的技术细节以供审查,同时不要公开披露敏感的利用信息。
受影响的 URL 或服务、复现步骤、观察到的行为、预期行为以及相关时间戳。
不要访问不属于您的数据、干扰生产服务,也不要在问题得到审查前公布漏洞利用细节。
请将安全相关报告发送至 support@zayloft.com,并在主题中注明“Security report”。
在有帮助时附上请求 ID、截图或日志,但请移除密钥、密码和无关个人数据。