2020年6月12日:该教程已经失效

正式开始讨论这个问题之前,先吐槽一波。

这是一个我个人觉得及其不怎么负责任的开发者开发出来的App。为什么我说他不负责任?我慢慢细数。

首先,对权限的申请毫不负责任。大众PHP程序“OneIndex”大家都知道,它能用简简单单的一个普通用户级别的Azure Application完成对该用户的Onedrive For Business的读和写,相当程度上对用户的个人隐私和安全问题做出了极好的保护。而这个应用,MDZZ,直接要对Sharepoint的根目录的读写权限。这个权限只能由全局管理员赋予,而一旦公开给用户使用,就极有可能被稍微会一点技术的人钻空子,随便写写删删别人的文件我认为绝对可以做得到。这是我认为它极其不负责任的一个方面。

另一个方面,由于这个权限的特殊性,导致了该Application的权限不能跨全局共享。也就是说,我的API你不能用,除非你是我全局里面的人。由于这个特殊性,导致了他人在使用的时候,就不得不向自己的全局管理员申请API。而这个开发者,不仅把自己的API集成在这个应用里面,而且没有一点提示!无论是开发文档还是在答水友问的时候,从头到尾没有提到过如何创建这个API,如何修改本体自带的API。以下是他对某水友的回复的原话:

You need to enter client id and redirect uri in the advanced settings to make it work. It's 100$ per year and I didn't pay for it.

大意是:“哦,你可能要改改里面的两个参数才能正常运行。大概要一百美元才能做得到,我才不干呢!”。

无语了,这种开发者眼中可能是没有小白吧。

好了,吐槽完毕,开始正题:

如何以全局管理员的身份创建这样一个API供用户使用?

首先你得有全局管理员的权限,否则下面的都不用看了。
  • 登陆并打开管理中心

登陆Office.com,打开“管理”->“管理中心”->“Azure Active Directory”

  • 注册新应用程序

如下图所示依次选择,直到“新应用程序注册”

  • 配置

填写名称(任意),选择应用程序类型为“本机”,填写重定向URI为:

https://sharepoint.com

如图所示:

然后点击创建,创建成功。

创建成功后显示应用程序ID,复制下来保存好,然后点击设置。

  • 赋予权限

点击“设置”后,进入设置界面,点击“所需权限”:

(唉,忘记打码了,就这样吧。)

然后授予第一个权限:

点击保存。然后点击左上角“添加”:

选择API为“Office 365 SharePoint Online”,然后确定,赋予权限:

这里我不太清楚各个权限的区别以及用途,索性全部选上了:

然后保存。

这样你就可以看到两个API,然后将这两个API的权限赋值给这个应用程序。

点击上方的“授予权限”:

然后提示成功:

理论上你在整个创建过程中能看到这四个成功的提示。

  • 使用MiXplorer登陆

打开安卓手机,左上方添加存储器:

选择“OneDrive Business”,然后开始配置:

“链接地址”无法修改;

显示姓名请自定义;

请在client_id=后面填写你前面复制得到的“应用程序ID”,如果忘记了可以回去找到;

请在redirect_uri=后面填写https://sharepoint.com,然后点击保存。

设置密码,然后登陆,就可以使用了。

一些需要注意的问题

如我前面吐槽所述,该API不能跨全局使用。

注意保护个人信息资料安全。