隐私政策
简要说明:我们不出售你的个人信息。私人书签默认仅对你的账户可见。我们只处理提供登录、同步、收藏、内容预览、安全和产品改进所必需的信息。
适用范围
本政策适用于书签鸭(Ducklet)的 iOS、Android 应用、Chrome 扩展与官方网站,并说明我们如何处理你的信息。
我们处理的信息
账户信息:当前版本仅提供邮箱密码注册和登录。我们会处理邮箱地址、账户标识符、显示名称,以及你在设置中主动填写的头像。
你保存的内容:包括你主动保存的网页 URL、标题、来源、预览图片、收藏夹、排序信息、创建和更新时间。请勿保存无权处理的敏感或机密资料。
设备与本地数据:应用和扩展可能在设备上保存登录会话、语言、主题、搜索引擎、提醒和界面偏好。Chrome 扩展读取当前标签页、标签页分组、页面标题和站点图标,用于展示和执行你主动触发的整理、保存或关闭操作。
广告与网络信息:当前 iOS 版本默认不启用移动广告,也未接入独立的分析 SDK。若后续版本明确启用并配置 Google Mobile Ads,我们会在发布前更新本政策和 App Store 的隐私披露;届时广告 SDK 可能处理设备标识符、IP 地址、广告互动及诊断数据。
我们如何使用信息
- 创建账户、验证身份并保持登录;
- 保存、同步、展示和管理你的书签、收藏夹及阅读内容;
- 提取网页标题、图片和站点图标,以生成链接预览;
- 提供跨设备同步、稍后处理、收藏夹和其他核心服务;
- 保障服务安全、防止滥用、排查故障并改进产品;
- 履行法律义务并处理你的隐私请求。
第三方服务与信息共享
我们仅在提供功能或法律要求所必需时,与服务提供商共享有限信息:Supabase 提供邮箱账户认证、PostgreSQL 数据库存储和实时同步;网页与图标服务为你主动保存的 URL 获取页面元数据、预览图片或 favicon。若未来启用广告或其他第三方 SDK,我们会在相应版本发布前更新本政策和商店隐私披露。
我们不会出售或出租个人信息,也不会将私人书签公开给其他用户。服务提供商可能在你所在国家或地区以外处理数据,并依适用法律采取相应保障。
数据存储、保留与安全
云端数据由 Supabase 托管。数据库启用 PostgreSQL Row Level Security(行级安全策略),以账户 ID 限制 profiles、bookmarks、favorites、favorite_folders 及关联数据的读取和修改。客户端只使用可公开的 anon key;Service Role Key 仅存放在受控的服务端环境中,绝不提交到 App、扩展或公开仓库。数据传输使用 HTTPS/TLS。
只要账户有效或为提供服务所需,我们会保留账户与同步数据。你删除的内容可能先进入回收站或短期备份,并在合理期限内清理;法律、安全、反欺诈或争议处理要求可能需要延长保留。没有任何互联网传输或存储方式绝对安全,但我们会采取与风险相称的技术和组织措施。
你的权利与选择
根据你所在地区的法律,你可能有权访问、更正、导出、删除或限制处理个人信息,以及撤回同意或提出异议。你可在应用中删除单条书签或退出登录;账户级删除方式见账户删除。你也可以通过系统设置管理广告跟踪、通知和相关权限。撤回某些权限可能使对应功能无法使用。
未成年人、跨境处理与政策更新
Ducklet 并非专为 13 岁以下儿童设计,我们不会故意收集明知属于儿童的个人信息。我们可能因产品、法律或服务变化更新本政策;重大变化会通过应用、网站或其他合理方式通知,页面顶部会显示最新日期。
联系我们
隐私咨询、数据访问、账户删除或安全问题请联系 jazzlin559@gmail.com。经营者及个人开发者:林佳泽(Ducklet / 书签鸭)。
使用条款
使用 Ducklet 即表示你同意以下规则。Ducklet 提供链接收藏、标签页整理、跨端同步、内容预览及相关功能;服务可能随产品迭代而调整、暂停或终止,我们会在合理情况下提前通知重大变化。
你应提供准确的信息、妥善保护登录凭据,并对账户内的活动负责。你保留对所保存链接和自行提交内容的权利,并授予我们为提供同步、预览和展示功能所必需的有限处理许可。你不得绕过访问控制、干扰服务、上传恶意代码、侵犯他人隐私,或利用服务传播违法、侵权、恶意或危害他人安全的信息。
第三方网页及内容由其各自权利人负责。服务按“现状”和“可用”基础提供;我们会努力维护稳定与安全,但不保证永久不中断、所有预览均准确或第三方链接始终可访问。在法律允许的范围内,我们不对间接、附带或由第三方内容、网络中断及用户不当使用造成的损失承担责任。本条不排除法律不得限制的责任。
你可以停止使用服务并申请删除账户。若账户严重违反条款、危害服务或法律要求我们采取措施,我们可能限制或终止访问。条款更新后继续使用服务,代表你接受更新内容;重大更新会通过合理方式通知。
条款相关问题请联系 jazzlin559@gmail.com。服务由个人开发者林佳泽运营。
安全说明
安全边界:这里总结当前代码中的主要安全控制,不代表绝对安全承诺,具体能力会随产品上线阶段持续完善。
架构与访问控制
- Supabase Auth 负责账户认证与会话管理。
- PostgreSQL Row Level Security 按
auth.uid() 隔离 profiles、bookmarks、favorites、favorite_folders 及关联数据。
- 客户端使用 Supabase anon key,访问权限仍由数据库 RLS 决定。
- Service Role Key 不应进入 App、扩展或公开仓库;如服务端任务需要使用,只能放在受控环境中。
- 客户端与云服务之间使用 HTTPS/TLS。
运维与发布
- 生产、测试环境分离,敏感密钥只通过托管平台环境变量配置。
- 数据库结构变更通过版本化 migration 审核和部署。
- 定期复核 RLS、Auth Redirect URL、数据库 RPC 权限、CORS 和 Edge Function secrets。
- 上线前启用依赖漏洞、密钥泄漏和异常登录监控,并建立备份恢复演练。
- 正式发布前,根据实际启用的广告功能完成适用的平台同意流程与商店数据披露。
如果你发现漏洞,请发送复现步骤、影响范围和相关版本至 jazzlin559@gmail.com。请避免访问、修改或公开其他用户的数据。
账户删除
账户删除应删除账户资料、云端书签、收藏、收藏夹及其关联关系;删除账户后无法恢复。为履行法律义务、处理安全事件、防止欺诈或解决争议而必须保留的有限记录,可能在法律允许的最短期限内保留;匿名化且无法再关联到你的汇总数据可能不受影响。
你可以在 iOS 和 Android 应用的“设置 → 删除账户”中发起删除;该入口会使用当前登录会话调用受认证的服务端删除流程。Chrome 扩展提供同一账户删除说明和人工联系入口。若入口暂时不可用,可以使用注册邮箱发送请求至 jazzlin559@gmail.com,主题填写“Ducklet 账户删除请求”;请勿发送密码或登录验证码。我们会通过该邮箱完成身份验证并确认处理时间。
提交审核前:邮件流程只能作为人工兜底,不能替代 iOS/Android 要求的易发现删除入口和实际数据删除实现。
Chrome 扩展数据说明
书签鸭 Chrome 扩展替换新标签页,并在你主动操作时保存页面、整理标签页或设置稍后再读提醒。扩展不会将完整浏览历史上传到服务器。
处理的数据与用途
- 账户和会话:邮箱、账户标识、显示名称和 Supabase 登录会话,用于登录与跨设备同步。
- 当前标签页:标签页 URL、标题、网站图标和标签组信息,用于新标签页展示、聚焦、关闭、分组和用户主动触发的保存操作;主要在浏览器本地处理。
- 用户主动保存的页面:URL、标题、来源、预览图片和保存时间,用于稍后再读与收藏夹。
- 设置与提醒:语言、主题、搜索引擎、标签分组、到期提醒和通知设置,保存在 Chrome 本地存储或同步账户中。
- 页面预览与图标请求:当你主动保存页面时,扩展可能请求该公开 URL 的 HTML 元数据,并向 Google 或 DuckDuckGo 图标服务请求 favicon;这些请求可能包含常规网络信息。
Chrome 权限说明
tabs、tabGroups:读取、展示、聚焦、关闭和整理当前标签页及标签组。
activeTab、scripting:仅在你点击保存当前页面后读取页面公开元数据或提取预览图片。
storage:保存登录会话、界面设置和提醒记录。
favicon:显示浏览器缓存的站点图标。
alarms、notifications:根据你开启的稍后再读设置安排到期提醒。
http://*/*、https://*/*:仅用于用户主动保存网页时获取公开预览信息和图标;扩展不会出售或用于广告定位浏览记录。
显著说明与同意
首次登录、注册或保存页面前,扩展会在界面中显示本节的数据类型和用途,并提供隐私政策与账户删除链接。你需要主动确认后,扩展才会继续处理相应数据。扩展不使用远程 JavaScript 或 WebAssembly 代码。