安全
Workflow Trigger Extensions 基于什么构建、在何处运行、您的商店数据如何被加密和隔离,以及我们如何保持该应用的更新。全程不使用 PHP。
Workflow Trigger Extensions 由 Code Creation Labs 开发并运营。本页面将说明该应用的构成、运行环境、您商店数据的保护方式,以及我们如何确保系统始终保持最新状态。本页面面向商店所有者以及填写安全问卷的任何人。 法律相关内容(隐私政策、数据处理协议、次级处理者)请参见 法律与数据保护。
该应用基于什么构建
| 图层 | 我们使用什么 |
|---|---|
| 应用程序代码 | 基于 Node.js 的 TypeScript,这是当前的长期支持版本。从管理页面到处理事件的工作进程,应用程序的每个部分都基于同一代码库。 |
| 数据库和缓存 | PostgreSQL(Google Cloud SQL)和 Redis(Google Cloud Memorystore) |
| 托管 | 位于 Google Cloud “europe-west1”(比利时,欧盟)区域的 Google Kubernetes Engine 上的容器。数据库、缓存和文件存储均位于该区域内。 |
| Shopify 集成 | Shopify |
| 您的店面 | 您的主题中没有任何内容会运行。位于 Storefront 触发器 后面的可选网页像素会在 Shopify 的像素沙盒中运行,并且仅在您启用店面触发器时才会安装。 |
该服务中完全不包含 PHP、WordPress、Java 或其他任何运行时环境。该应用已在 Shopify 应用商店上架,并通过了 Shopify 的应用审核,该审核涵盖了 Shopify 的安全要求以及客户数据保护要求。
您的数据如何得到保护
**传输过程中。**您的浏览器、Shopify 与该应用之间的所有连接均采用 TLS 协议。数据库和缓存没有公共地址:只能从我们的私有网络内部访问。
**静止状态。**所有数据库和存储在静止状态下均采用我们通过 Google Cloud KMS 管理的密钥进行加密。
在此基础上进行字段级加密。 最敏感的值会进行第二层加密:包括您商店的Shopify访问令牌,以及由“选择加入”式个人数据触发器读取的受保护客户数据(姓名、电子邮箱地址、电话号码、邮寄地址)。每条记录都会使用Cloud KMS中的独立密钥,通过AES-256-GCM算法单独加密,并支持自动密钥轮换。 这些值仅在需要时(例如触发器触发时)才在内存中解密,且绝不会写入日志。个人数据的变更检测通过比较哈希值实现,因此应用无需解密即可判断值是否发生变化。
**密钥。**API 凭据和密钥存储在 Google 密钥管理器中,并在服务启动时加载。它们既不在代码中,也不在容器镜像中,更不在构建管道中。
**数据最小化。**该应用在安装时不会请求任何数据访问权限。所有权限均采用主动授予机制,仅限于某一种数据类型,且可随时撤销。详见权限与数据访问。
谁可以访问什么
- **仅限您的商店。**每条记录都包含其所属的商店,且每次查询的范围仅限于已通过身份验证的商店。一个商店绝不能读取或修改另一个商店的数据。
- **仅处理经过验证的请求。**Shopify 管理后台中的页面均通过 Shopify 会话令牌进行身份验证。在处理任何数据之前,Webhook 和 Shopify Flow 回调会通过 Shopify 的 HMAC 签名进行验证,而内部消息则通过 Google 签名的身份凭证进行验证。每个 Shopify 事件仅处理一次,并通过其事件 ID 进行去重。
- **自定义触发器代码。**您为 自定义触发器 编写的 JavaScript 代码将在一个受隔离的沙箱环境中运行,该环境设有时间和内存限制,且与应用程序自身的服务器位于不同的基础设施上。该代码绝不会接触到应用程序的凭据或您的 Shopify 访问令牌。它访问您商店的唯一途径是一个与您的商店绑定且在一分钟内过期的短效令牌。
- **我们的团队。**仅可通过 Google Cloud IAM 及个人账户访问生产系统。内部维护工具不会暴露在互联网上。
我们如何保持应用的更新
- **每次变更在发布前都会经过扫描。**该管道会执行类型检查和代码检查、静态应用程序安全测试(SAST)、机密信息检测、依赖项漏洞扫描以及容器镜像扫描。我们的发布标准是:依赖项和镜像中不得存在任何已知漏洞。
- **运行时和操作系统。**该容器镜像(基于 Alpine Linux 的 Node.js)会在每次发布时重新构建,因此运行时和操作系统的补丁会持续推送。托管型 Kubernetes 平台会确保底层节点始终保持最新补丁状态。
- **Shopify 平台。**我们持续跟踪 Shopify 的 API 版本以及 Shopify 应用库的安全公告,并及时应用更新。该应用运行在最新的 Admin API 版本上。
- **安全审查。**在进行任何涉及身份验证、会话或数据泄露的变更之前,系统都会自动运行安全审计;此外,我们还会定期对每条路由、数据路径和数据库查询进行全面的内部审查,最近一次审查于2026年10月进行。
- **监控。**我们全天候监控系统可用性,并在我们的status页面上发布相关信息,一旦出现错误,系统会向我们发出警报。运行日志最多保存 30 天,且绝不包含令牌、密钥或客户数据。
保留与删除
- 事件记录将在30天后自动删除。
- 该应用为检测变更而保存的快照(即产品、订单或客户的最后已知状态)会在应用安装期间一直保留,因为后续的变更都是以此为基准进行检测的。
- 当您卸载该应用时,其对您商店的访问权限将立即被删除。卸载后48小时内,Shopify会发出 shop/redact 请求,该请求将清除受保护的客户数据以及您的自定义触发器所存储的所有内容。
- Shopify
- 次级处理者及完整的数据保留时间表详见privacy policy。如需获取已签署的数据处理协议,请发送邮件至workflow-trigger-extensions.app/dpa。
报告安全问题
如果您认为发现了安全漏洞,或者需要填写安全问卷,请发送电子邮件至 support@codecreationlabs.com。我们将优先处理并回复安全报告。
