全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 4720|回复: 18

回应下GoIndex获取token的风险问题以及临时解决方案。

[复制链接]
发表于 2019-9-6 22:05:18 | 显示全部楼层 |阅读模式
本帖最后由 donwa 于 2019-9-6 22:57 编辑



1、如果直接使用 install.gd.workers.dev 通过验证,理论上是否会有风险?
     理论确实可以储存用户的refresh_token,从而长期读取GD的文件。因为refresh_token是在install.gd.workers.dev上生成的,必定经过我的wokers。虽然我没存储,但确实可以实现。

2、为什么要通过install.gd.workers.dev生成代码而不直接部署?
        降低部署难度。因为wokers没有储存功能,kv功能是要付费的。auth_code 是一次性的,必须生成refresh_token并写入代码使用,否则就没有办法实现列目录功能。实际生成代码和开源代码的唯一区别就是帮用户填写了refresh_token。

3、为什么会出现rclone授权?
        没错,我用了rclone的client_id和client_secret。我觉得rclone相对可信些,如果我默认部署我的项目client_id争议可能更多吧。用户自己申请client_id难度更大。如果有使用oneindex的也许有印象,早期版本就是有默认内置secret的,直接授权就可以使用,后期为了避免争议,就引导用户自己申请了。

4、是否会开源 install.gd.workers.dev 源代码?
        应该不会。如果有心人利用代码搭建并引导用户使用,并内置后门,算谁的?


当前放出的版本本身就是预览版本,出现问题是正常的,欢迎提出,探讨。后期尽量修复和避免。


//------------临时解决方案------------------------

如何撤销授权:
访问:https://myaccount.google.com/security
通过“具有帐号访问权限的第三方应用” 进行管理撤销

通过rclone进行生成代码(如果你们更信任rclone的话):
安装部署方案1
1、在本地安装 rclone
2、按照 https://rclone.org/drive/ 流程进行授权。
3、执行 rclone config file 查看 rclone.conf 路径。找到root_folder_id和refresh_token记录下来。
4、下载 https://github.com/donwa/goindex 中的 index.js 并填入 root 和 refresh_token
5、复制代码 到 CloudFlare 部署。



发表于 2019-9-6 22:09:38 | 显示全部楼层
本帖最后由 ApkB 于 2019-9-6 22:15 编辑

谢谢你的解惑,我对goindex授权方式上,确实有些误解。

我能想到的其它方法,估计就是通过rclone的配置文件去获取refresh_token了
或者直接去看rclone的源代码,看看是如何通过谷歌授权码生成refresh_token的。
发表于 2019-9-6 22:45:59 | 显示全部楼层
我昨天看到授权页出现rclone的owner是ncw就知道用的是公共API
然后一看token开头就明白了,这不就是refresh token嘛
没想到今天还有开小号上来质疑的
还一直用点评功能让大家无法直接回复他
应该是哪位觉得dalao开发的东西伤害了他的利益专门搞小号来黑的吧
可这又是伤害了哪位的利益了,dalao开发的这个东西难道不是促进edu邮箱销量提高吗
发表于 2019-9-6 22:26:32 | 显示全部楼层
ilovesunshine 发表于 2019-9-6 22:22
GD接口只提供client_id 和 client_secret,没有access_token基本上没有安全问题

access_token和refresh_to ...

谢谢大佬,我去学习学习啊
发表于 2019-9-6 22:10:22 | 显示全部楼层
无需回应,在mjj论坛都是常混的,不至于。基本的信赖还是有的,再说GD盘存的破数据有啥好担心的。
发表于 2019-9-6 22:10:45 | 显示全部楼层
出售瓜子花生矿泉水。
发表于 2019-9-6 22:17:34 | 显示全部楼层
第一时间,安装上了,相信第一个吃螃蟹并开放的人。
发表于 2019-9-6 22:22:53 | 显示全部楼层
本帖最后由 ilovesunshine 于 2019-9-6 22:24 编辑

GD接口只提供client_id 和 client_secret,没有access_token基本上没有安全问题

access_token和refresh_token建议在本地生成,不要上传第三方,gd python sdk里面有示例代码
from pydrive.auth import GoogleAuth
gauth = GoogleAuth()
gauth.LocalWebserverAuth()

详细操作流程参考pydrive文档 https://pythonhosted.org/PyDrive/quickstart.html
发表于 2019-9-6 22:25:46 来自手机 | 显示全部楼层
支持楼主,担心的人可以选择不用
发表于 2019-9-6 22:36:43 | 显示全部楼层
多数人不会把重要文件存到网盘尤其共享的无限盘吧,那么重要买两块移动硬盘不就解决了。
支持楼主
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-3-29 15:07 , Processed in 0.062030 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表