授权流程是如何工作的
BskyDelete 使用官方的 AT Protocol OAuth 流程。你会被跳转到自己的 Bluesky 服务提供方,在那里确认授权,提供方再把授权码返回给 BskyDelete。整个过程中你不会在 BskyDelete 里输入 Bluesky 密码,BskyDelete 也不会索取 App Password。
客户端身份是公开且可查验的
OAuth 客户端由本域名上一个固定地址的元数据文档来标识。该文档声明了应用名称、唯一允许接收授权码的回调地址、请求的权限范围以及支持的授权类型。任何人都可以在确认授权前先取回这份文档自行核对。
访问令牌与发起请求的浏览器绑定
客户端元数据启用了 DPoP 绑定的访问令牌。实际效果是令牌与你浏览器持有的密钥在密码学上绑定,因此单独把令牌复制到别处并不能直接使用。这是 AT Protocol OAuth 实现本身的特性,不是 BskyDelete 额外加的一层。
权限范围是标准的过渡期范围
BskyDelete 申请的是 AT Protocol 定义的过渡期通用范围。该范围使应用可以读取你的记录,并把删除写入你自己的仓库。它不授予访问他人账号的能力,也不能让 BskyDelete 修改你的密码、邮箱或账号状态。
同一时间只连接一个账号
BskyDelete 只使用一个已连接的 Bluesky 会话。要处理另一个账号,需要先断开当前会话再授权下一个。不存在共享的账号池,也不会在后台访问你当前并未连接的账号。
会话保存在哪里、能持续多久
OAuth 会话由官方的浏览器 OAuth 客户端库创建和管理,不是我们为此另写的代码。它保存在你发起授权的那台设备上。
会话留在你浏览器自己的存储里
OAuth 库把会话保存在你浏览器的 IndexedDB 中。它不会被复制到 BskyDelete 的服务器,也不会在你的多台设备之间同步。在笔记本上授权,并不会让手机端同时处于登录状态。
BskyDelete 自己存的只是几个标记
除了库管理的会话之外,应用只在本地存储里保留几个简单标记,用来让各个页面知道当前是否存在连接、你是否主动登出、以及是否有一次授权往返正在进行。这些标记不含任何令牌,也不含任何账号内容。
会话有效期由服务提供方决定,不由我们决定
会话能保持多久有效、何时需要刷新,取决于 AT Protocol OAuth 实现和你的账号提供方。BskyDelete 不承诺固定的会话时长;清除浏览器存储会立即结束本地会话。
我们的服务器会收到什么
每一次读取和每一次删除,都直接发生在你的浏览器与你的 Bluesky 服务提供方之间。删除帖子、点赞、转发或关注时,是你的浏览器自己调用 AT Protocol 的仓库接口,记录写入的是你自己的仓库。
不存在任何 BskyDelete 服务端组件去接收、转发、检查或保存你的帖子、点赞、转发、关注列表或访问令牌。CSV 导出同样在浏览器中生成并直接下载,文件不会经过我们的服务器。这是应用的构建方式决定的,不是一条需要你凭信任接受的政策。
我们的基础设施真正会处理的,是普通的网站运行,以及与之相互独立的 BskyDelete 账号和订阅记录。这些内容在隐私政策中说明。
如何撤销授权
你可以随时收回 BskyDelete 的访问权限,并且不需要我们配合。
- 1
在 BskyDelete 内断开连接
在应用内退出 Bluesky 并不只是清掉一个本地标记。它会针对已连接的账号调用 OAuth 客户端的撤销方法,请求你的服务提供方使该会话失效,然后再清除本地标记。
- 2
从 Bluesky 账号侧撤销
你也可以直接在 Bluesky 账号设置里撤销授权,那里才是最权威的入口。即使你已经无法使用当初授权的那个浏览器,这个方式依然有效,而且不依赖 BskyDelete 是否可访问。
Bluesky 会不时调整这些控制项在界面中的位置,因此我们不在这里复述它的具体菜单名称。其当前文档与支持入口见Bluesky 官方支持页面。
删除能触及什么、不能触及什么
删除一条记录,是把它从你自己的仓库中移除。这是真实且有意义的操作,但它不等于把内容从互联网上抹掉——任何工具都不应在这一点上含糊其辞。
你自己的记录会被移除
你选中的帖子、点赞、转发和关注会从你的仓库中删除,仓库不再对外提供它们。在 BskyDelete 内部,删除是不可撤销的。
他人的记录不属于你,无法删除
如果有人引用、回复或转发了你的内容,那条记录属于他们自己的仓库。删掉你的帖子并不会删掉他们的帖子,BskyDelete 也无法对你未连接的账号执行任何操作。
联邦网络中的副本与缓存不在我们控制范围内
已经分发到其他服务、索引、feed 生成器或缓存中的内容,可能会在一段时间内继续存在,这个时长既不由 BskyDelete 决定,也不由你决定,而是由那些系统决定。
截图与存档无法收回
在删除之前已被第三方截图、复制或存档的内容,会留在持有者手里。没有任何删除工具能触及这些材料。
正因为删除无法撤销,请在删除前先导出你在意的数据。数据导出页逐项说明了每种导出包含哪些列,以及为什么导出文件不是一个还原点。
报告安全问题
如果你认为发现了 BskyDelete 的安全问题,请在公开披露之前先通过邮件报告,并提供足以复现的细节。我们会确认已收到你的报告。
请不要在报告或任何发给我们的消息中包含密码、OAuth 令牌、恢复码或支付卡信息。我们从不需要这些内容;如果你不慎发送,我们会请你立即更换。
常见问题
BskyDelete 需要我的 Bluesky 密码吗?
不需要。授权在你的服务提供方自己的页面上通过 AT Protocol OAuth 完成。BskyDelete 不会收到你的密码,也不使用 App Password。
你们会把我的帖子存在服务器上吗?
不会。读取、删除和 CSV 导出都在你的浏览器中针对你的服务提供方执行。我们没有任何服务端组件会接收你的账号内容。
你们能保证内容在所有地方都消失吗?
不能,任何人都不能。我们能做的是从你的仓库中删除记录。第三方持有的副本、缓存或截图,超出任何删除工具的能力范围。
你们通过第三方安全审计了吗?
没有。我们不声称任何外部安全认证或审计。本页描述的是应用的实际构建方式,其中的 OAuth 行为可以对照公开的客户端元数据自行核验。
延伸阅读
想看同一批主题的更长篇说明,可以读我们的安全总览。涉及整个账号的隐私取舍,见Bluesky 隐私指南。如果某次删除的结果和你预期不同,删除故障排查指南梳理了可观察到的原因。