数据与隐私中心 · Canvas Dashboard
Canvas Dashboard 仅围绕「汇总未完成作业、课表与个人待办」保存最小必要数据。以下直接回答关于数据的四个核心问题:保存什么、为什么保存、保存在哪里、怎么删除。
问题 1
保存什么?
各学习平台按各自接口机制保存最小必要凭据与只读同步缓存;凡是能用只读链接或访问令牌完成的平台,绝不保存你的明文密码。
| 平台 | 保存内容 | 绝不保存 | 断开连接后 |
|---|---|---|---|
| Canvas | iCal 日历订阅链接(只读 URL)与作业日历缓存 | Canvas 账号、密码与登录 Session | 订阅链接立即删除,历史作业缓存保留 |
| 好课 | 学号 + 加密密码、课程作业缓存 | 统一身份认证 Session 与明文密码 | 账号密码立即删除,历史作业缓存保留 |
| 智学盟 | 加密访问令牌(X-Access-Token)、已选课程与作业缓存 | 手机号、短信验证码与登录密码(仅当次换取令牌) | 访问令牌立即删除,历史作业缓存保留 |
| 智慧树 | 受控浏览器登录会话目录与任务缓存 | 智慧树明文密码(登录在隔离远程窗口中完成) | 浏览器登录会话立即删除,历史作业缓存保留 |
| 课堂派 | 加密访问令牌(API Token)与当学期作业/测验缓存 | 手机号、短信验证码与账号密码(仅当次换取令牌) | 访问令牌立即删除,历史作业缓存保留 |
| 同济OJ | 加密登录凭据、加密会话 Cookie、已选课程与顶层作业列表缓存 | 明文密码、短信二次验证临时验证码、题目详情与提交代码 | 登录凭据与会话立即删除,历史作业缓存保留 |
| 同济课表 | 导入后的课程表安排数据(课程名、教师、时间、地点、周次) | 同济统一身份认证密码与长期登录 Session | 认证结束后临时登录窗口立即销毁,可随时一键清空课表 |
站点账号与本地规划数据
保存你的站点用户名、密码哈希(PBKDF2-HMAC-SHA256)、自定义待办、重复待办、外部作业子任务、长期项目与周日程安排。
Agent 接入与 Apple 日历订阅
Agent API Token(cda_...)在服务端仅保存不可逆的 SHA-256 哈希值;Apple 日历订阅保存随机私密 Token,可随时一键重置或撤销。
问题 2
为什么保存?
不同学校与教学平台的技术限制不同,我们对每个平台均采用权限最小化的接入方式:
- Canvas(只读订阅):Canvas 原生提供只读 iCal 馈送链接,无需账号密码即可读取作业和考试截止时间。
- 智学盟 & 课堂派(令牌换取):登录时输入的手机号、验证码或密码仅用于当次向官方接口换取
Token,换取成功后立即丢弃输入凭据,只加密保存 Token 供后续同步。 - 好课 & 同济OJ(加密凭据自动续期):这两个平台的会话有效期较短,后台需要定期自动重新登录以刷新未交作业列表,因此需使用服务端密钥(Fernet)加密保存登录凭据。其中同济OJ严格限制为只读抓取顶层作业列表,绝不打开题目或提交代码。
- 智慧树 & 同济课表(隔离浏览器窗口):涉及滑块验证码或微信/短信加强认证,直接由你在受控远程浏览器窗口(noVNC)中操作。同济课表抓取完成后立即销毁临时浏览器环境;智慧树仅保留独立浏览器会话目录以供后台定时拉取任务。
问题 3
保存在哪里?
- 按账户独立目录隔离:每位用户的数据独立存放在服务器本地
data/users/<username>/目录下,所有接口均校验不可变账户 ID 与会话版本,严格隔离跨账户访问。 - 原子写入与加密存储:JSON 数据采用文件锁 + 临时文件原子替换写入,损坏时执行 fail-closed 保护;平台 Token、Cookie 与需要保活的密码均使用服务端密钥(Fernet 对称加密)加密后落盘,绝不在前端页面回显。
自托管维护透明说明与安全建议:
本站为个人部署与维护的工具站点。在服务器运维与故障排查过程中,站点维护者从技术上拥有服务器文件系统与密钥的访问权限。请仅在你信任站点运行者的前提下连接第三方平台,并强烈建议为本站设置独立密码,不要直接复用同济统一身份认证密码或常用重要密码。
本站为个人部署与维护的工具站点。在服务器运维与故障排查过程中,站点维护者从技术上拥有服务器文件系统与密钥的访问权限。请仅在你信任站点运行者的前提下连接第三方平台,并强烈建议为本站设置独立密码,不要直接复用同济统一身份认证密码或常用重要密码。
问题 4
怎么删除?
你可以随时在工作台按需执行三个层级的删除操作,所有删除均立即生效:
① 断开连接(仅删凭据)
在「连接与同步」中点击断开连接:立即删除该平台保存的加密密码、Token、订阅链接或浏览器登录会话;已同步的历史作业缓存与本地勾选状态保留。
② 清除平台数据(凭据 + 缓存)
在「连接与同步」中点击清除平台数据:除断开凭据外,连同该平台的作业缓存文件、本地完成/隐藏/改期状态及外部作业子任务一并物理删除。
③ 永久删除账号(全量销毁)
在「偏好设置 → 危险操作」中确认永久删除账户:一键销毁 data/users/<username>/ 全部文件与智慧树浏览器目录,并写入匿名防复活账本,防止旧备份恢复已删账户。
此外,自定义待办、长期项目与项目行动删除后均立即从服务器存储中物理移除,不保留回收站缓存。