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不能跨全局使用。
注意保护个人信息资料安全。
请到客户端“主题--自定义配置--valine”中填入ID和KEY