技术文档

星线隐私中心技术概览

隐私中心提供网站与账号、星线 App、星企三类隐私说明,以及同语种下载、打印和发送邮件副本。政策正文为静态文件;邮件副本由独立服务读取已发布文本发送,不依赖用户登录 Account,也不导出任何用户账户资料。

入口与文档模型

公开入口为 星线隐私中心。文档类型使用固定标识:privacy、app-privacy、xingqi-privacy。页面路径为相应 .html,下载文本位于同语种 documents/ 下。

正文与法律站共用构建、本地化和审阅/正式版区分。50个语言或地区版本中,zh-Hans 使用根路径,其余使用 /<locale>/;导航、下载、语言切换和跨站链接共同保留语言。页面运行时不调用在线翻译。法律站生成机制见 法律中心技术概览。

正式政策描述具体产品当时的数据处理事实。本页解释其技术承载方式,不重写法律权利、保留期限或产品权限说明,也不能把旧政策里的产品描述当作最新源码功能证明。

邮件副本流程

页面“发送至邮箱”先取得同源挑战,再提交所选文档、语言和收件地址。服务使用 Node.js HTTP模块及腾讯云 SES SDK,与 Account登录进程独立。

接口 输入或输出
GET /api/policy-email/challenge 返回一次性 token 与 expiresIn: 600
POST /api/policy-email JSON字段为 email、document、locale、token、空 website
成功响应 {"ok":true},表示邮件服务商已给出受理标识

服务校验精确 Origin、有效来源地址、文档和语言白名单、空诱捕字段及邮箱格式;JSON请求最多 4096字节,不允许额外字段。邮箱检查拒绝换行与控制字符,域名按 IDN规则转为 ASCII并规范化;格式有效不表示收件箱存在。

挑战由时间、随机数和来源绑定材料构成,并使用专用密钥 HMAC签名。创建后至少等待 1秒、最多 10分钟内使用,且只能使用一次。来源发生变化、签名不符、已使用或超时需要重新取得挑战,不应重复发送同一令牌。

附件选择与受理结果

服务按白名单文档和语言从正式静态目录读取 TXT,不接受客户端指定任意文件路径、正文或邮件模板。文本长度限制为 16–200000字节,首行标题必须有效且不超过 150字符。附件名由文档标识和语言组成,内容使用所选语言的完整文本,不包含用户账户数据。

发送前先持久记录令牌使用及限流预留,再调用 SES模板并附加 TXT。服务商返回 MessageId后响应成功;这代表服务商受理,仍可能出现后续退信、垃圾邮件过滤或邮箱延迟。缺少受理标识或发送异常返回失败,不能仅因 HTTP请求已到服务器就显示“送达”。

失败尝试也会占用相应发送额度,以防故障时反复调用形成邮件轰炸。客户端不应对不确定结果无限自动重试;用户可以稍后重试,或直接下载同一份公开文本。

限流与持久数据

维度 当前代码限制
获取挑战 每来源地址每小时 30次
同一规范化邮箱 5分钟 1次,24小时 3次
发信来源地址 每小时 8次
全站 24小时 100次

限流账本保存时间、事件种类及 HMAC摘要键,不将收件邮箱或来源地址明文存入该账本。文件使用受限权限并通过临时文件替换保存,过期事件按 24小时窗口清理。这里的 24小时只对应限流账本,不能推断为邮件服务商日志或产品其他数据的统一保留时间。

收件地址仍会在发送请求中交给邮件服务商用于投递。应用日志只记录受限事件和错误码,避免回显地址与正文;部署方仍需核对反向代理、服务商和错误追踪的实际记录规则。专用签名密钥与邮件服务商凭据只在服务端配置,不属于公开页面资源。

失败、部署与验证边界

格式错误返回 400,非法来源或令牌返回 403,超大请求为 413,内容类型不符为 415,限流为 429;模板、文本、服务商或必要配置不可用时为 503。健康接口的 ready只检查本地服务条件,不代表真实邮件已发送或送达。

纯静态站点部署不会自动提供邮件副本 API。部署需要正确的同源路由、正式语言文本、独立服务、受保护账本以及服务商发送配置。正文和 TXT更新需要保持一致,避免页面已更新而邮件仍发送旧政策。

资料依据 2026-10-23 源码整理。历史政策发布与受控收件记录保持原日期;新部署、语言文本变更、邮件附件一致性及真实收件仍需独立验收。使用问题见 支持中心。

源码依据

主要依据为 privacy/ 页面与阅读脚本,以及 legal/build_release.py、build_multilingual.py、localization.py、policy-mail/service.mjs、policy-mail/server.mjs 和允许语言目录。这里只公开接口契约,不包含运行凭据、账本内容或真实收件资料。

Markdown 原文完整文档文本