У меня есть требование загрузить документ SharePoint (Sharepoint Online) через приложение C# windows. Когда я получаю доступ к SharePoint через Интернет через свой браузер и выполняю шаги аутентификации AD (пользователь XYZ) (шаги MFA), и я могу успешно загрузить документ.
Я выполнил следующий фрагмент кода, и он всегда возвращает ошибка HTTP 403 (доступ запрещен). Могу подтвердить, что я вошел в систему как пользователь XYZ. Поэтому я предполагаю, что это проблема с полномочиями. Как я могу сделать ie SSO для онлайн-ресурса, это вообще возможно?
Ниже приведен фрагмент кода.
String ServerURL = @"https://acme.sharepoint.com/sites/Shared%20Documents";
String serverFilePath = @"MyTemp.docx";
String destPath = @"C:\Download\Temp.docx";
// Create the sharepoint URL
String url = string.Format("{0}/{1}", ServerURL, serverFilePath);
// Create the download directory instance
Directory.CreateDirectory(Path.GetDirectoryName(destPath));
// Generate HTTP request and send credentials
var request = System.Net.HttpWebRequest.Create(url);
request.Credentials = System.Net.CredentialCache.DefaultCredentials;
// Read Response
using (var sReader = new StreamReader(request.GetResponse().GetResponseStream()))
{
using (var sWriter = new StreamWriter(destPath))
{
sWriter.Write(sReader.ReadToEnd());
}
}