Cookie 与本地存储
结论:营销站一个都没有,工作台只有一个
多数 Cookie 政策要写很长,因为要交代十几个追踪脚本。我们这一页短,是因为真的没有 —— 而正因为短,更值得把每一项都摊开,让你可以自己验证。
1一句话版本#
| 地方 | Cookie | 分析 / 追踪 | 本地存储 |
|---|---|---|---|
| 营销站 octoryn.studio | 没有,一个都没有 | 没有 | 没有 |
| 工作台 studio.octoryn.app | 一个,用于保持登录 | 没有 | 一项:界面语言 |
| 移动端应用 | 不使用 cookie | 没有 | 登录令牌存在系统钥匙串里 |
| 分享页 /s/… | 没有 | 没有 | 没有 |
没有广告 cookie、没有第三方追踪像素、没有跨站跟踪、没有用户画像。 这不是因为我们克制,而是因为这些东西在代码里根本不存在。
2营销站:零 cookie#
你正在看的这个站是一个纯静态站点。它不设置任何 cookie,也不读取任何 cookie。
- 没有分析工具。 没有 Google Analytics、Google Tag Manager、Plausible、Umami、Fathom、PostHog、Mixpanel、Segment、Hotjar、Sentry —— 一个都没有。
- 没有第三方脚本、iframe 或追踪像素。
- 字体是自托管的。 品牌字放在我们自己的服务器上,不走 Google Fonts —— 那样做等于每个访客都要向第三方发一次请求。
- 没有表单、没有留资、没有邮件订阅框。 页面上唯一的出站链接是指向工作台的按钮。
- 没有社交插件或分享按钮。
站上确实有一段 JavaScript
说「零客户端框架」不等于「零脚本」,所以说清楚:全站有且只有一段客户端脚本,负责顶部导航的展开与收起。它不读写任何存储,不发任何网络请求,不做任何识别。除此之外还有一段结构化数据标记(给搜索引擎读的 JSON-LD),那是静态文本,不会执行。
你可以自己验证
打开浏览器开发者工具的「网络」标签刷新这一页:所有请求都指向本站域名,没有一个第三方域名;响应头里没有 Set-Cookie。「应用 / 存储」标签下的 cookie 列表是空的。
3工作台:一个必要 cookie#
登录之后,工作台会设置一个 cookie,让你在刷新和跳转之间保持登录状态。就这一个。
| 名称 | 作用 | 内容 | 有效期 |
|---|---|---|---|
| studio_session | 保持登录。这是必要 cookie —— 没有它就没法登录使用 | 一个随机令牌,不含你的邮箱、姓名或任何可读信息。服务器上只保存它的哈希 | 30 天;每次使用会顺延。退出登录、或修改密码时立即失效 |
- 标记为 HttpOnly:页面上的脚本读不到它,可以降低脚本注入盗取会话的风险。
- 标记为 SameSite=Lax:别的站点发起的跨站请求不会带上它。
- 它是服务端会话,不是自包含的令牌 —— 所以「立刻退出所有设备」是真的能立刻生效,而不是等令牌自己过期。
这个 cookie 不用于分析、不用于广告、不用于跨站跟踪。 会话记录里也不含 IP 和 User-Agent(见隐私政策第 4 节)。
4浏览器本地存储#
| 键 | 存什么 | 为什么 |
|---|---|---|
| octoryn.lang | 你选的界面语言(中文 / 英文) | 下次打开还是这个语言。只存一个语言代码,不含任何其它信息 |
整个工作台只有这一项。它存在你自己的浏览器里,不会发到服务器。清除浏览器数据就没了,界面会回到默认语言。
营销站不使用 localStorage 或 sessionStorage —— 上面那个语言选择只在工作台里存在,营销站的语言是由 URL 路径决定的(/ 是中文,/en/ 是英文)。
5移动端应用#
移动端不使用 cookie。登录令牌存在操作系统的安全存储(iOS 钥匙串 / Android Keystore)里,而不是普通的应用存储 —— 这是刻意的:普通存储在设备被 root 或越狱后更容易被读走。请求时以标准的授权头发送。
移动端没有集成任何分析、崩溃上报或广告 SDK。如果你开启了推送通知,设备会有一个推送 token,它的用途和删除方式见隐私政策第 2 节。
6内容分发网络能看到什么#
即使我们自己不记录任何东西,你的请求仍然要经过网络中间层,它们出于安全与分发的需要会看到连接信息。这是事实,应该讲明白。
| 谁 | 在链路的哪个位置 | 能看到什么 |
|---|---|---|
| Cloudflare | 营销站的 CDN 与 DNS | 请求的 IP、User-Agent、访问的路径 —— 这是任何 CDN 转发请求时都会看到的。当前配置下 Cloudflare 没有向访客设置任何 cookie(我们核对过线上响应头)。它会带一个网络错误上报头,只在请求失败时向 Cloudflare 回报错误,成功的请求不上报 |
| Amazon Web Services | 工作台与媒体分发 | 连接层面的信息。我们没有开启访问日志(见隐私政策第 3 节),所以我们这边没有留下按请求记的记录 |
Cloudflare 在启用了机器人防护或访问验证之类的功能时会设置自己的安全 cookie。我们目前没有启用这类功能;如果将来启用了,这一页会先更新。
7为什么没有 cookie 同意横幅#
因为没有可供选择的东西。同意横幅的意义是让你拒绝非必要的 cookie —— 而我们的营销站一个 cookie 都不设,工作台那一个是登录必需的,拒绝它等于拒绝登录。给这种情况做一个横幅,只是给每个访客加一次多余的点击。
这是我们对现状的判断,不是法律意见
「必要 cookie 是否需要同意」在不同法域下的具体要求不一样。我们没有做过针对性的合规审查(见隐私政策第 13 节)。这里陈述的是我们实际设了哪些 cookie、为什么设,以及为什么在此基础上认为不需要横幅。
8如果哪天变了#
这一页是全站最容易过期的一页:任何人往站里加一个分析脚本,它立刻就变成假话。所以我们把顺序写在这里 ——
- 先改这一页,再上线那个功能。 顺序反了的话,这一页就成了摆设。
- 如果引入的是非必要的 cookie 或第三方分析,同时会加上选择机制(横幅或设置项),而不是默认打开。
- 变更会记在页面顶部的版本与日期上。
发现这一页和实际情况对不上,请告诉我们:[email protected]。这一页写错了是个 bug,应该按 bug 报。