2016-04-26 35 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。

就是這樣,作爲響應,您將獲得可用於獲取訪問令牌的授權碼。

相關問題