OneDrive身份验证&共享URL访问权限

时间:2015-02-13 00:31:28

标签: onedrive

几个问题:

我使用OneDrive实现了身份验证过程。我的桌面应用程序专为最终用户设计。每次启动应用程序时,弹出一个小浏览器窗口,要求用户确认访问...如果超过1小时,用户需要提供用户名和密码。有没有任何方式最终用户使用SOME SORT的保存凭据(或用户代码+用户密码,或API代码+ API密码)将能够调用应用程序而不会被浏览器表单提示(目前需要登录 - 如果访问令牌已过期 - 或确认)?

我的应用程序的目标是文件共享 - 也就是说,一个最终用户可以将URL(到他上传到OneDrive的文件)发送给另一个用户,后者应该能够通过单击链接下载文件(没有任何提示,就像在OneDrive中共享链接到文件的手动过程一样。可能吗?如果是的话,如何实现呢?也就是说,我该如何获得该URL? Redandent说我正在寻找一种程序化的方法来获得一个能够实现上述目标的URL

1 个答案:

答案 0 :(得分:2)

OneDrive身份验证过程使用支持OAuth 2.0的Microsoft帐户。您应该能够将用户指向:

https://login.live.com/oauth20_authorize.srf?client_id=CLIENT_ID&scope=SCOPE&response_type=code&redirect_uri=REDIRECT_URI

用户对您的应用进行身份验证和授权后,系统会将用户转到REDIRECT_URI /?code = CODE,您的应用可在此处将代码替换为访问令牌:

https://login.live.com/oauth20_token.srf?client_id=CLIENT_ID&client_secret=CLIENT_SECRET&code=CODE&grant_type=authorization_code&redirect_uri=REDIRECT_URI

http://onedrive.github.io/auth/msa_oauth.htm有更多详细信息。