我正在測試OneDrive SDK .NET示例應用程序here。但是,我不清楚AadReturnUrl和AadTargetUrl常量分別與AdalAuthenticationProvider和OneDriveClient類一起使用需要哪些值。該項目的GitHub自述文件涉及此page,但該頁面也不清楚。使用OneDrive for Business進行身份驗證的問題
另外:對於本地客戶端應用程序,當您在Azure AD中配置應用程序時,您對重定向URI使用什麼值?此值是否與上面所需的網址相關?
編輯:我試圖從第一評論的建議和FormBrowser.SignIn(接收下面的錯誤,從這個代碼,其中AadReturnURL = http://myactualdomain.onmicrosoft.com;這是本機應用程序,並且我假定這可以是一個「啞「URL,如果我沒有顯示網頁)的手段:
var adalAuthProvider = new AdalAuthenticationProvider(FormBrowser.AadClientId, FormBrowser.AadReturnUrl);
this.oneDriveClient = new OneDriveClient(FormBrowser.AadTargetUrl + "/_api/v2.0", adalAuthProvider);
authTask = adalAuthProvider.AuthenticateUserAsync(FormBrowser.AadTargetUrl);
拋出異常:‘Microsoft.IdentityModel.Clients.ActiveDirectory.AdalServiceException’在Microsoft.IdentityModel.Clients.ActiveDirectory.dll 微軟.IdentityModel.Clients.ActiveDirectory錯誤:4:10/24/2016 22:05:41:e9c2c5cd-1750-4d0f-b3a2-f373f7de309a - d__0:Microsof t.IdentityModel.Clients.ActiveDirectory.AdalServiceException:AADSTS50001:在名爲myactualdomain.onmicrosoft.com的租戶中未找到名爲https://myactualdomain-my.sharepoint.com/_api/v2.0的應用程序。如果應用程序尚未由租戶的管理員安裝或由租戶中的任何用戶同意,則可能會發生這種情況。您可能已將驗證請求發送給錯誤的承租人。 跟蹤ID:16192303-40e9-4944-b376-d25d4ff52b73 相關ID:e9c2c5cd-1750-4d0f-b3a2型-f373f7de309a 時間戳:2016年10月24日22:05:40Z 在Microsoft.IdentityModel.Clients.ActiveDirectory.AcquireTokenInteractiveHandler .VerifyAuthorizationResult() 在Microsoft.IdentityModel.Clients.ActiveDirectory.AcquireTokenInteractiveHandler.PreTokenRequest() 在Microsoft.IdentityModel.Clients.ActiveDirectory.AcquireTokenHandlerBase.d__0.MoveNext() 錯誤碼:invalid_resource 的StatusCode:0
OneDriveApiBrowser。 vshost.exe錯誤:0:10/24/2016 22:05:41:e9c2c5cd-1750-4d0f-b3a2-f373f7de309a -d__0:Microsoft.IdentityModel.Clients.Active Directory.AdalServiceException:AADSTS50001:在名爲myactualdomain.onmicrosoft.com的租戶中未找到名爲https://myactualdomain-my.sharepoint.com/_api/v2.0的應用程序。如果應用程序尚未由租戶的管理員安裝或由租戶中的任何用戶同意,則可能會發生這種情況。您可能已將驗證請求發送給錯誤的承租人。 跟蹤ID:16192303-40e9-4944-b376-d25d4ff52b73 相關ID:e9c2c5cd-1750-4d0f-b3a2型-f373f7de309a 時間戳:2016年10月24日22:05:40Z 在Microsoft.IdentityModel.Clients.ActiveDirectory.AcquireTokenInteractiveHandler .VerifyAuthorizationResult() 在Microsoft.IdentityModel.Clients.ActiveDirectory.AcquireTokenInteractiveHandler.PreTokenRequest() 在Microsoft.IdentityModel.Clients.ActiveDirectory.AcquireTokenHandlerBase.d__0.MoveNext() 錯誤碼:invalid_resource 的StatusCode:0
謝謝!儘管我仍然不清楚我是否可以使用您提供的URL(當然不包括Contoso),因爲它會失敗並顯示「未找到」錯誤(在我更新的帖子中)。否則,我對發現服務doc的評論似乎意味着我實際上必須開發一個解決方案(或運行示例)以獲取正確的端點? –
另請參見:是否需要爲OneDrive4B API和/或發現服務打開圖形? –
我得到了它的工作,愚蠢的錯誤 - 我對AadTargetUrl的常量是https://contoso-my.sharepoint.com/_api/v2.0,當然我調用的代碼是冗餘地添加/_api/v2.0到網址 –