logo NodeSeekbeta

rclone 合并了无全局管理员的 onedrive 账号的补丁挂载方案的 PR 请求

前情提要

微软 SharePoint 更新认证方式导致以 WebDAV 方式的挂载出现 403 授权错误

简单概括:

无全局管理员的 onedrive 账号,无法以 API 的形式通过 rclone 来挂载。

但是在很长的一段时间内,可以通过 WebDAV 的形式来挂载。

然而在去年秋季,微软更新了认证方式,导致了这个方案彻底失效。

补丁挂载

rclone 无管理员 Onedrive 使用

nickfox-taterli / rclone

这个补丁挂载的实现方法,是通过网页版获取到 access_token,是目前唯一有效的方案。

不过也有缺点,API 的话能够获取到一个用于刷新 access_token 的 refresh_token,但是网页版不存在这个 refresh_token,所以无法自动更新 access_token,目前在失效后需要再次手动获取。有效期似乎是6小时左右。

PR 请求

去年9月提了一次,#8822,但是没有合并

这个月又提了一次,#9444,这次终于合并了

但是现在还没有发布这个合并了 PR 的版本即 v1.74.2,暂时需要自己编译出来。

我测试了一下,发现这个挂载还是有问题(挺尴尬的)。

配置示例

由于这个完全是手动获取到的 access_token,所以没有自动配置的方案,目前是打开 rclone 的配置文件,手动填写配置,示例配置如下

[onedrive1]
type = onedrive
token = {"access_token":"v1.eyJz...z2SkU","token_type":"Bearer","refresh_token":"","expiry":"2045-12-31T23:59:59Z"}
drive_id = b!Ef...
noadmin = true
tenant_url = https://tenant1-my.sharepoint.com/_api
drive_type = business

需要修改的就只有3个参数:

  • access_token

  • drive_id

  • tenant_url

获取这3个参数的方法,打开 onedrive 主页,比如说 https://tenant1-my.sharepoint.com

然后 F12 打开开发者工具,切换到控制台选项页,输入 _spPageContextInfo.driveInfo 即可获取到这3个参数,也可以优化一下,先输入

_spPageContextInfo.driveInfo[".driveUrl"]

获取到后2个参数,再输入

_spPageContextInfo.driveInfo[".driveAccessToken"]

获取到第1个参数

然后就可以通过 rclone 挂载无全局管理员的 od 账号了(但是其实并不能,不清楚是哪里出了问题)。

nickfox-taterli / rclone 这里有编译好的版本可以测试,按照这个方法是可以成功挂载的,所以应该是合并 PR 的部分代码出了问题,等完善修复吧(我看了半天还是没看出来哪里出了问题)。

当然也可能是我编译出来的 rclone 有问题,总之测试失败。

其他

taterli 的博客所写的获取到的配置,可见 access_token 并不是 v1 开头的,所以可能是 rclone 在解析这个 jwt 的时候出了问题。

看下有没更多后续修复了。

  • 我也用rclone挂载onedrive,之前都是能申请个人api,现在我申请不到饿了,只能走公共的

  • 终于合并了

  • openlist支持这个了吗

  • onemanager还可以用

  • 新消息,挂载没问题,还没进入稳定版,可以在测试版尝鲜

    这个功能也适用于无法获得API授权许可的有管理员的全局的od账号

    弊端还是,有效期只有6小时,无法自动刷新,只能网页版重新获取

    可能搭配 python + playwright 定时任务自动写入能够实现无感刷新配置

  • @Heisen #6 发布于6/11/2026, 4:48:52 PM
    The access token has expired. It's valid from '6/10/2026 3:14:06 AM' and to '6/10/2026 9:14:06 AM'.

    token 有效期只有6个小时。太短了。

    按楼主的思路写了个用 playwright 刷新 token 的脚本。
    https://gist.github.com/4ft35t/f660dc081bbe5ef72844f4bd1cece331

    我更推荐楼主另外一篇帖子里提到的 FedAuth cookie 方法,有效期几天。
    https://www.nodeseek.com/post-453115-1

    两种方法各有优劣:

    • access_token 方案适合在服务器上跑,官方 rclone 暂时不可用
    • cookie 方案适合在本机环境跑,不用额外登陆,官方 rclone 可用

    cookie 更新方案我已回复在对应帖子里。

  • @Heisen #7 https://beta.rclone.org 这里下载最新测试版,不知道什么时候会进入稳定版

    cookie 方案的问题是,这是 webdav,文件体积不得大于2g(微软限制,非rclone或webdav限制)

  • @moonay #8
    原来还有这个限制,涨知识了。

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有64919位seeker

🎉欢迎新用户🎉