发布

数据安全最佳实践

更新时间: 2025年10月1日
除了开发者平台术语开发者数据安全最佳实践指南,以下内容将详细说明 Meta 对开发者如何保护用户数据和/或设备用户数据的期望。这些信息会对应用的技术审核产生重大影响,因此请仔细了解。

信息安全实践

为遵守开发者数据使用政策第 6 条中的规定,您的团队应该制定适用的信息安全实践,将人员、流程、技术、资产和风险纳入考量。这些实践可确保您的团队已采取措施保障用户数据和/或设备用户数据的保密性、完整性和可用性。您应了解存储和/或传输用户数据和/或设备用户数据的相关风险。为防止发生未经授权访问或丢失用户数据和/或设备用户数据的情况,您应采取以下信息安全措施:
  • 访问管理:采取措施保障用户数据和/或设备用户数据,使其免遭未经授权的访问。
  • 更改管理:利用安全编码实践来防范代码中安全漏洞的威胁,并防范可能危及用户数据和/或设备用户数据的未经授权的更改操作。
  • 操作:采取措施,对存储和/或传输用户数据和/或设备用户数据的系统进行修补和更新,以防范已知漏洞的威胁以及利用漏洞以未经授权的方式访问用户数据和/或设备用户数据的行为。

信息安全标准

您应使用已知的行业信息安全标准来指导信息安全实践。信息安全标准是一套综合计划框架,可帮助您为团队设计、颁布和运营有效的安全计划。下面列举一些实用行业安全标准示例。
Meta 并不要求您遵循特定的信息安全标准或获得特定的数据安全认证,以下示例仅供参考:

信息安全标准

  • ISO 27001:ISO 27001 是国际标准化组织 (ISO) 安全管理体系的标准之一,旨在帮助团队有效管理常见安全领域的信息安全计划,例如访问控制、事件管理和响应、系统开发和维护,以及合规性。各个团队可以根据这项标准采取控制措施,然后接受经认证的审计机构的审计,以获得 ISO 27001 认证。
  • ISO 27018:ISO 27018 是用于保护云存储空间中个人信息的国际标准。
  • NIST CSF美国国家标准技术研究所 (NIST) 的网络安全框架 (CSF) 是一项包含五大重要支柱的计划:识别、保护、检测、响应和恢复。采用 NIST 网络安全框架的团队将采用相应的流程和技术,并雇用和培训这些领域的人员,以实现其安全目标。
  • OWASPOpen Web Application Security Project® (OWASP) 是一个非营利组织,致力于提高软件安全性。通过由社区主导的开源软件项目、全球数百个本地分会、成千上万的成员,以及领先的教育和培训会议,OWASP 基金会为开发者和技术专家提供了保障互联网安全的资源。
  • COBIT:信息与相关技术控制目标 (COBIT) 是由 ISACA 创建的一套框架,旨在进行信息技术 (IT) 管理和 IT 治理。该框架以业务为导向,定义了一系列通用 IT 管理流程,每个流程都包括流程输入和输出、关键流程活动、流程目标、绩效指标以及基础的成熟度模型。
  • 通用数据保护条例通用数据保护条例第 32 条讨论了为保护个人信息的机密性、完整性和可用性所需的技术和团队措施。如果您需要遵守通用数据保护条例的规定,可能已经具备信息安全标准。

数据安全认证

  • ISO 27001 认证:审计员检查组织对 ISO27001 要求的实施情况后做出的一项评估,证明团队符合相关要求。
  • ISO 27018 认证:ISO27018 确立了用于实施个人身份信息 (PII) 保护措施的控制目标、控制措施和准则。ISO 27018 认证是审计员检查团队对上述控制目标、控制措施和准则的实施情况后做出的一项评估,证明团队符合相关要求。
  • SOC2 2 类报告:SOC2 2 类报告是审计员在团队实施 SOC2 信托服务标准 6 个月后,对团队实施该标准的有效性做出的评估。SOC2 1 类报告的不同之处在于,它是在特定时间点对程序设计做出的评估,并未观察程序在一段时间内的实施情况。

静止数据加密

Meta 通常期望所有以静止状态存储的用户数据和/或设备用户数据都应该经过加密处理。静止数据加密通过将数据转换为不可读的格式,在数据保存到存储空间时保护数据。未经授权的人员即使访问加密的磁盘或文件,也无法读取数据,除非他们也拥有解密数据的密钥。
您可采取以下措施来执行静止数据加密:
  • 识别用户数据和/或设备用户数据的存储位置。
  • 对用户数据和/或设备用户数据的存储位置实施加密。
  • 通过政策和审计确保这种做法没有例外(例外是指用户数据和/或设备用户数据以未加密的格式保存的情况)。
未写入存储空间的数据无需进行静止数据加密。通过识别不需要存储用户数据和/或设备用户数据的目标存储位置(例如日志文件),并更改您的软件或流程,以从这些不必要的数据存储中移除数据,您可以简化复杂的静止数据加密工作。

传输加密

Meta 通常期望在传输期间,所有用户数据和/或设备用户数据都应该经过加密处理。传输中加密在数据通过网络连接发送时,将数据转换为不可读的格式,从而保护数据(例如,使用 TLS 1.2 或能提供等效网络通信安全性的替代方案进行加密)。
您可采取以下措施来执行传输中加密:
  • 识别传输用户数据和/或设备用户数据的所有网络连接,考虑网页和移动应用等客户端,以及任何服务器到服务器的传输。
  • 配置您的软件和基础设施,要求使用加密的网络连接,并重定向或禁止未加密的连接。
  • 通过政策和审计确保这种做法没有例外(例外是指用户数据和/或设备用户数据以未加密的格式传输的情况)。
请参阅 Amazon Web Services (AWS) 文档,查看如何在 AWS 中强制实施传输中加密的示例。

漏洞管理和安全测试

测试软件是否存在漏洞和安全问题,可帮助您尽快发现和修复安全问题。为协助解决此问题,Meta 会在上传时对您的应用二进制文件进行漏洞扫描。不过,如果您将用户数据和/或设备用户数据存储在非 Meta 服务器上,您应该采取相应的措施来管理漏洞,并对您维护的任何软件和硬件执行安全测试。下面提供一些最佳实践以供参考:
  • 采取适当的措施,通过使用静态和动态工具及人工代码评审来识别、分类、监控和减轻代码中的漏洞或错误。
  • 对存储或访问用户数据和/或设备用户数据的系统进行合规性评估,以确保它们符合安全政策、框架和监管要求。
  • 执行内部或外部渗透测试,以评估存储或访问用户数据和/或设备用户数据的系统。渗透测试需要安全专家使用与不法分子相同的技术来测试您的产品,以查找漏洞并确定其优先级。与渗透测试相似,道德黑客可能会发现您系统中的漏洞,并通过您的漏洞披露计划 (VDP) 披露这些漏洞。
  • 为存储或访问用户数据和/或设备用户数据的系统制定并实施漏洞管理和补丁程序。
  • 对存储或访问用户数据和/或设备用户数据的系统执行漏洞扫描/检测,以识别漏洞并评估风险。
  • 与存储或访问用户数据和/或设备用户数据的系统负责人合作,根据漏洞的严重程度和定义的服务级别解决这些漏洞。
  • 使用静态分析来检查您的源代码是否存在可能导致安全问题的代码错误。例如,GitHub 支持在其存储库内执行代码扫描,您也可以配置 GitHub 以使用第三方扫描产品
无论以何种方式发现漏洞,都应该根据其优先级进行分类和解决,尤其是对于严重程度为严重、高、中级别的漏洞。

保护登录信息和访问口令

登录信息和访问口令属敏感信息,因为它们用于验证对 API 等服务的访问。如果不法分子能够读取访问口令,便可冒充相关用户,在未经授权的情况下访问数据。
以下方法可助您保护这些敏感的登录信息和口令:
  • 使用工具(例如 GitHub 的秘密扫描功能)确保您的代码存储库内没有记录任何登录信息或访问口令。
  • 以合适方式存储登录信息和访问口令,确保只有管理员才能访问它们。
  • 尽可能在云端或服务器环境中使用口令库。
  • 尽可能在移动设备上使用系统登录信息存储功能。

多重验证及其执行

多重验证 (MFA) 要求用户必须提供至少两种形式的身份验证,才能获得访问权限。此类示例包括使用来自身份验证应用的口令或发送到用户手机的验证短信。不法分子可能会盗用账户并利用该访问权限侵入您的系统,而要求完成多重验证可降低这样的风险。
对远程访问执行多重验证的一种方法是:要求使用虚拟专用网络 (VPN) 连接,然后要求完成多重验证才能访问 VPN。还有一种方法是,您可以为所有用户定义一项组策略,要求进行多重验证并停用其他验证类型。您需要查看提供商文档,获取在您的环境中要求进行多重验证的方法说明。请参阅 Amazon AWS 身份和访问管理工具文档,查看可用于要求进行多重验证的政策模板示例。

账户维护系统

身份提供商,例如 Microsoft AzureAD、Okta 或其他用于集中管理用户账户的工具。
无论您选择实现哪种技术,都应考虑以下原则:
  • 应该由管理员创建账户,且仅在必要时创建。
  • 根据最小权限原则配置账户。
  • 应尽可能将进程配置为在普通用户账户下运行(而不是超级用户或管理员帐户)。
  • 及时禁用不再需要的账户(例如当用户离开团队时)。
  • 定期审计账户,了解是否存在任何与这些原则不一致的情况。

系统更新

为防止不法分子利用安全漏洞,应将软件保持为最新版本。这包括您的服务器、应用程序和团队人员开展工作所用设备中运行的软件。下面提供一些最佳实践以供参考:
  • 确定用来构建、运行和管理您应用程序的相关资产(例如:服务器、软件、应用程序、依赖项和设备)。
  • 制定策略,令这些资产一直保持为最新状态。
  • 尽可能采用相关技术自动执行这些策略。
  • 定期审计您的资产,以免出现任何偏差。
下面举例说明了用于保持软件为最新版本的一些不同工具和技术。

系统维护

生产环境中的系统会处理您用户的合法请求,但也容易受到不法分子的直接访问。下面提供一些最佳实践以供参考:
  • 确定您的系统需要哪些服务并禁用或删除所有不必要的服务。
  • 制定程序来及时安装可用的安全补丁和升级程序,令系统保持为最新状态。
  • 定期审计系统,了解是否有任何偏离计划的情况。

配置管理

为帮助您更轻松地维护上述系统,下面提供一些其他最佳实践以供参考:
  • 对于依赖数据库的应用,使用标准的加强配置模板。
  • 提供明确的资产购置流程和经批准的购置渠道,包括接收请求和购置审批。
  • 维护资产清单,在所有资产的整个生命周期中对它们进行跟踪。
  • 利用报废资产管理程序对所有弃用产品和非易失性存储介质进行清理和销毁,包括在适当情况下提供清理/销毁证明。
  • 实施移动设备管理方案,允许以受控方式访问网络且能够远程擦除丢失或被盗移动设备中的数据。
  • 使用系统开发生命周期来管理系统。
  • 定期评估是否存在未经授权、未经许可和不受支持的硬件/软件。
  • 利用资产的安全配置基线,维护服务器、移动设备和网络设备的基线。
  • 在中央存储库中存储基线配置,并定义各系统上可用的服务及应该如何配置这些服务。
  • 为网络设备建立标准配置。
  • 定期检查系统是否符合上述安全配置基线。
  • 通过配置管理和变更控制流程管理安全配置。
  • 使用集中管理且会定期更新的反恶意程序软件。

记录和监控

对访问日志采用一致的监控做法有助于更有效控制您的系统。下面提供一些最佳实践,用于监控对 Oculus 和/或设备用户数据的访问,参考:
  • 尽量减少存储用户数据和设备用户数据的位置数量。
  • 使用网段隔离用户数据和设备用户数据,防止未经授权的访问行为。
  • 记录对受保护网段的所有访问情况和数据。
    注意:应采取措施,防止审计日志在事后遭到篡改,让不法分子无法轻易隐藏其活动。
  • 记录对访问权限级别的变更,以便用于分析和调查。
  • 监控存储或传输用户数据和/或设备用户数据的资产,防止未经授权的人员、连接、设备和软件接入。
  • 建立日志记录和监控系统,生成有助发现安全相关活动的事件类型日志。
  • 收集并关联来自多个来源和传感器的事件数据。
  • 将日志发送到远程日志聚合系统。
  • 将时钟同步到单个参考时间源。
  • 在适当的情况下保护传输中的安全日志。
  • 保护日志,使其免遭未经授权的更改或访问。
  • 根据既定时间表和保留政策备份日志。
  • 实施适当的程序,确保将来自检测系统的通知发送给专门的安全人员进行调查,以及在适当情况下上报。
  • 使用端点监控软件记录和监控受管理 IT 资产上的活动。
  • 使用云监控服务。
  • 对外围和边缘信息系统使用防火墙、主机过滤、DDoS 检测/缓解技术、反欺骗技术。
  • 使用基于网络的 IDS 传感器和基于网络的入侵预防系统,并保持为最新。

事件响应

如果您发现有未经授权访问用户数据和/或设备用户数据的行为,应当制定相应的流程来对可能危及数据机密性、完整性或可用性的事件加以分类并做出回应。下面提供一些最佳实践以供参考:
  • 建立正式制定的安全事件响应方案来发现、记录、优先处理和应对安全事件,包括明确的角色和责任分工。
  • 在事件响应计划中建立升级和隔离/遏制的流程。
  • 在未来的活动中运用汲取的经验教训,制定恢复计划和流程。
  • 开展培训,让员工和承包商知道如何识别和报告安全事件。
  • 通过事件响应桌面演习、事件响应蓝队演习或紫队合作演习(渗透测试的一部分),定期测试、检查和更新您的事件响应系统或流程。