2016-04-26 38 views
0

我正在开发一个Web应用程序,以显示One Drive帐户中的所有内容(文件&文件夹)。使用client_id&secrect_key实施Business Drive for Business API

目前,我使用ADAL.js库从一个驱动器获取业务内容。但是,它提示登录屏幕。

enter image description here

不知何故,我想给在配置文件中的这些凭据或我需要以编程方式传递这些凭据(硬编码)。

任何人都可以帮我解决这个问题吗?

在此先感谢

回答

1

鉴于这样的事情通常是令人难以接受的,我认为这只是在.NET ADAL库支持。即使有这种情况,也有许多限制 - 如果需要用户同意,呼叫将失败,因此必须配置租户管理员同意。有关更多详情,请参阅http://www.cloudidentity.com/blog/2014/07/08/using-adal-net-to-authenticate-users-via-usernamepassword/

您最好登录一次,同意,然后缓存刷新令牌。然后,它可以用于获取将来的访问令牌,以及用于更新缓存令牌的新刷新令牌,以确保不会发生到期。

+0

谢谢你的回答。我正在寻找一个使用** client_id **&** secretct_key **的实现来限制可访问性。 –

1

你可以做到。 获取HTML登录页面后。使用jsoup或其他库(在java中)解析它(检查其他语言中的类似文件)并从HTML页面获取输入元素。您应该获得4个元素作为用户名,密码,CTX和flowToken。 CTX和flowTkoen是提供用于识别会话的值。添加用户名和密码值并将它们存储为名称值对。 现在发送一条请求到https://login.microsoftonline.com/tenantId/login与这些名称值对作为正文。

用您的Web应用程序租户ID替换tenantId。

就是这样,作为响应,您将获得可用于获取访问令牌的授权码。

相关问题