前言

本文将介绍通过生成 Microsoft API 的 ID 和 Key 使用 Rclone 获取 Refresh Token , 在利用 Github Action 来无服务器定时调用 API 使得 E5 订阅续订.

本文为 Stille 原创文章.经实践,测试,整理发布.如需转载请联系作者获得授权,并注明转载地址.

获取 ID 和 密码

应用程序 ID

  • 左侧导航栏选择应用注册
  • 注册应用程序

  • 填写名称
  • 选择任何组织目录(任何 Azure AD 目录 - 多租户)中的帐户
  • 重定向 URI 默认选择Web地址填写 http://localhost:53682/
  • 点击注册

  • 保存生成的应用程序(客户端) ID,示例:f82c748c-a719-4a85-a84a-7bd23a6b5711

添加权限

  • 左侧导航栏选择API 权限
  • 添加权限
  • 选择Microsoft Gaph

  • 选择委托的权限

  • 依次搜索并勾选以下权限:Files.Read.AllFiles.ReadWrite.AllSites.Read.AllSites.ReadWrite.AllUser.Read.AllUser.ReadWrite.AllDirectory.Read.AllDirectory.ReadWrite.AllMail.ReadMail.ReadWriteMailboxSettings.ReadMailboxSettings.ReadWrite.
  • 添加权限
  • 点击代表 xxx 授予管理员同意


创建密码

  • 左侧导航栏选择证书和密码
  • 填写说明和期限

  • 保存生产的客户端密码,示例:CxA~M-kL9_05lbT~5xWRDO-Y4Oc.y8b.MS

获取 Refresh Token

  • 使用Windows电脑下载Rclone客户端,解压缩后进入文件夹,先不要运行.
  • 在地址栏输入CMD后回车启动命令提示符,执行以下命令获取 API .

  • 其中Client_IDClient_secret修改为上文生成的ID密码
# 示例
rclone authorize "onedrive" "f82c748c-a719-4a85-a84a-7bd23a6b5711" "CxA~M-kL9_05lbT~5xWRDO-Y4Oc.y8b.MS"

  • 执行命令会跳转至浏览器,使用管理员账号密码登录授权后,命令提示符会生成Token.
  • 找到“refresh_token”:,"expiry",复制保存两者之间的代码,并无需复制代码前后的双引号".

配置 Github Action

配置仓库及 Secrets

  • 在线修改1.txt,将上文获取的Refresh Token替换覆盖原有作者的 Token .

  • Settings - Secrets
  • 创建Secrets, Name 为CONFIG_ID, Value 为id=r'应用程序(客户端) ID'.示例:id=r'f82c748c-a719-4a85-a84a-7bd23a6b5711'.
  • 创建Secrets, Name 为CONFIG_KEY, Value 为secret=r'客户端密码'.示例:secret=r'CxA~M-kL9_05lbT~5xWRDO-Y4Oc.y8b.MS'

创建 Github Token

  • 右上角头像 - Settings
  • 左侧 Developer settings - Personal access tokens - Generate new token
  • Note 填写GITHUB_TOKEN
  • 勾选repo,admin:repo_hook,workflow点击 Generate token 完成.

测试完成

确保完成上述设置后,点击仓库的star即可在Actions中看到首次运行的workflow.其中Test Api中正常会进行 30 次调用.全部build正常完成即代表部署成功,后续仓库会依照.github/workflow/autoapi.yml配置文件定时调用 API.可自行根据需求修改触发机制或计划任务.


结语

目前 Microsoft 是根据订阅用户的账号 API 使用情况来定义你为开发者用户并为你免费续订.已有网友根据这个方案续订成功,续订的资格或者成功率也是个玄学,无法100%确定,不过使用 GitHub Action 无服务的部署也是非常省心和方便.后期成功续订在来本文更新.

本文为 Stille 原创文章.经实践,测试,整理发布.如需转载请联系作者获得授权,并注明转载地址.

本文链接 https://www.ioiox.com/archives/103.html

最后修改:2020 年 05 月 23 日 02 : 06 PM
如果喜欢我的文章,觉得对你有帮助,请随意赞赏!