2015-10-06 81 views
0

我有portal.office.com帳戶,並希望通過我的REST應用程序訪問Tenant-my.sharepoint.com上的OneDrive業務。 我已經註冊了我的Azure的Active Directory和應用程序啓動的oauth2認證是這樣的:OneDrive與REST的業務Oauth2

https://login.windows.net/common/oauth2/authorize?response_type=code&client_id= '+ App.Key +' & REDIRECT_URI = http://localhost:8889/「;

在這個階段我從Azure獲得了AuthCode,下一個階段是獲取會話令牌。在認證

作爲下一步驟我做POST請求https://login.windows.net/common/oauth2/token 使用參數: '的client_id =' + App.Key + 'client_secret =' + App.Secret + '碼=' +校驗碼 + 'redirect_uri = http://localhost:8889/' +'grant_type = authorization_code' +'resource ='+ URLEncode('syncovery1');

不幸的是我得到的錯誤響應: {「錯誤」:「invalid_resource」,「ERROR_DESCRIPTION」:「AADSTS50001:應用程序名爲syncovery1沒有名爲konnov.onmicrosoft.com租戶發現這可能發生如果應用程序尚未由租戶的管理員安裝或由租戶中的任何用戶同意,那麼您可能已將驗證請求發送給錯誤的租戶。\ r \ n跟蹤ID:1af2ced2-b2bb-4568-8a87-bd2d1186cf9a \ r \ n相關ID:15dcda2c-0599-4279-8744-27c61e6912a9 \ r \ n時間戳:2015-10-06 07:46:03Z「,」error_codes「:[50001],」timestamp「:」2015-10-06 07:46:03Z「,」trace_id「:」1af2ced2-b2bb-4568-8a87-bd2d1186cf9a「,」correlation_id「:」15dcda2c-0599-4279-8744-27c61e6912a9「}'

請建議通往可能解決方案的途徑。在我的portal.office.com帳戶中,我找不到第三方應用程序可能與該帳戶相關聯的任何地方。你能猜出最後一次請求中「資源」參數的含義嗎? portal.office.com中的哪些服務或許可證應該處於活動狀態以允許進行身份驗證?也許我只是沒有激活OneDriveForBusiness訂閱?

由於提前,

回答

0

資源的請求,意味着要在特定租戶訪問資源。因此,資源應該是應用Id,您已在azure廣告(「不是應用名稱」)中註冊。如果'syncovery1'是應用程序的名稱,那麼它會返回錯誤。還有一點要補充的是,不要將資源編碼爲端點可能無法識別的資源。和

例如,如果你想獲得office365的所有資源端點,那麼資源將是 - _https://api.office.com/discovery/。

同樣,如果我的應用程序的應用程序ID是_https://mydrive.sharepoint.com/以應用程序名稱註冊爲「mydrivesync」,那麼資源應該是_https://mydrive.sharepoint.com/。

請按照此official documentation瞭解完整的詳細信息。

相關問題