外观
隐私政策
适用于 NATLAN 的 DN42 身份服务 auth.natlan.io(OAuth 2.0 / OpenID Connect Provider,下称「本服务」)。本服务面向 DN42 网络参与者,只做一件事:验证用户对某个 ASN 的控制权,并在用户明确同意后,把身份信息授权给正在登录的第三方应用。
生效日期:2026-08-01。本文与服务实现同步维护,实现变更时同步更新此页。
摘要
- 本服务没有账号密码体系,身份来自公开的 DN42 registry;本服务不要求、也从不接触用户的私钥。
- 验证码、会话令牌、授权码等敏感值在服务器端只存 SHA-256 哈希;过期挑战记录定期清除。
- 人机验证是自托管 Cap(工作量证明),不经任何第三方验证码服务;页面无追踪 Cookie,性能度量至多使用 Cloudflare Web Analytics(无 Cookie 的匿名统计,见下)。
- 身份信息只在用户点击「授权」之后、并且只按用户批准的 scope 交给对应的第三方应用。
处理哪些信息
用户在页面提供的
| 数据 | 用途 | 处理方式 |
|---|---|---|
| ASN | 从 registry 定位归属信息;请求限速 | 记入挑战记录与审计日志 |
| 邮箱验证码答案 | 核验 | 服务器只存 SHA-256,与提交值做哈希比对;明文只出现在投递的邮件里 |
| PGP / SSH 签名(及必要时补交的 PGP 公钥) | 核验签名 | 仅在核验过程中处理;私钥全程不离开用户设备 |
来自公开 DN42 registry 的
本服务维护 DN42 registry 的同步副本(mntner、aut-num、person、key-cert、route 与 route6 对象)。这些数据本就由用户发布在公开的 DN42 registry。本服务用它们来:列出可用验证方式(邮箱打码显示、密钥只显示指纹或片段)、投递验证码、核验签名,以及在授权后组装身份信息。
验证与会话数据
| 数据 | 生命周期 |
|---|---|
| 挑战记录(ASN、方式、nonce、验证码哈希、尝试计数、时间戳) | 有效期 15 分钟;过期记录定期清除 |
| 会话令牌(JWT) | 有效 2 小时;服务器只存标识(jti)与整串哈希供审计。浏览器端仅存于 sessionStorage,关闭标签页即失效——不用 Cookie、不用 localStorage |
| OAuth 授权码与 refresh token | 授权码 120 秒且单次使用;refresh token 轮换式、滑动上限 120 天;服务器端均只存哈希 |
访问日志与基础设施
- 服务审计日志:挑战签发与核验结果、OAuth 事件等,含时间戳与 ASN,用于安全与排障。
- Web 服务器访问日志:标准的 IP、User-Agent、时间戳记录;限速依据 ASN 与请求来源。
- Cloudflare:
auth.natlan.io经 Cloudflare 代理(CDN 与抗 DDoS),流量经其网络转发;验证码邮件经 Cloudflare Email Service 投递。 - 性能统计(RUM):页面可能加载 Cloudflare Web Analytics 的度量脚本,用于匿名的页面性能与访问统计(加载耗时、Core Web Vitals 等)。该服务不使用 Cookie 或 localStorage、不做浏览器指纹、不跨站追踪个人(见 Cloudflare Web Analytics 说明)。
- 人机验证:自托管 Cap 实例(
challenges.natlan.io)。Cap 基于工作量证明,解题完全在浏览器本地运行——不使用 Cookie、不做用户追踪、无任何第三方调用,验证数据只在浏览器与本服务自托管的实例之间流转,不经过任何验证码厂商(详见 Cap 官方合规说明)。
不收集什么
- 密码——本服务不存在密码。
- 私钥——签名操作全部在用户自己的设备上完成。
- 追踪 Cookie、浏览器指纹、跨站追踪;除上述 Cloudflare Web Analytics 外无任何分析埋点。
交给第三方应用的信息
只有在授权页点击「授权」之后,对应应用才能获得信息,且仅限已批准的 scope:
| scope | 内容 |
|---|---|
openid | 身份标识 sub(维护者 × ASN) |
profile | 展示名(registry person) |
email | registry 登记邮箱 |
dn42 | ASN、维护者、起源前缀(route / route6)等 DN42 网络信息 |
点击「拒绝」时,应用只会收到一个标准的 access_denied 错误,不含任何身份信息。第三方应用取得数据后如何使用,适用该应用自己的隐私政策。
用户的选择与权利
- 修改或删除 registry 数据:走 DN42 registry 本身的流程(
git.dn42.dev)。本服务在下次同步后即反映变更。 - 结束会话:关闭标签页即失效;授权页的「换个身份」立即清除本地会话。
- 其他疑问或数据删除诉求:通过 DN42 registry 中
NGWORKS-MNT登记的联系方式联系维护者。
变更
本文随服务实现更新,重大变更在本文档站体现。如有翻译版本,以简体中文版为准。