2013-10-07 5 views
0

У меня есть приложение asp.net, которое отправляет файлы в библиотеку документов sharepoint. Каждый раз, когда он пытается отправить мне получитьПолучение 401 Несанкционированная ошибка при загрузке файла

The remote server returned an error: (401) Unauthorized

Вот C# код

    byte[] buffer = new byte[length]; 
        postedFile.InputStream.Read(buffer, 0, length); 


        Uri address = new Uri(url); 
        HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest; 
        request.Method = "POST"; 

        request.UseDefaultCredentials = true; 

        request.Accept = "application/json;odata=verbose"; 
        request.Headers.Add("X-RequestDigest", dvalue); 
        request.ContentType = "application/json; charset=utf-8"; 
        request.ContentLength = length; 
        using (Stream postSTream = request.GetRequestStream()) 
        { 
         postSTream.Write(buffer, 0, length); 
        } 
        using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) 
        { 
         StreamReader reader = new StreamReader(response.GetResponseStream()); 
        }      

Это прекрасно работает на моей локальной машине, но когда я развернуть его в нашей тестовой среде, возникает 401. IIS настроен для анонимной аутентификации. Я думаю, что это связано с загрузкой файла? Любые идеи или мысли оценены!

Благодаря

+0

Вы включили анонимную аутентификацию, которая работает по назначению, но действие, которое вы пытаетесь выполнить, может быть несанкционированным. Это может помочь - http://www.asp.net/web-api/overview/security/authentication-and-authorization-in-aspnet-web-api – JuStDaN

+0

Это связано только с веб-апи? Я не использую MVC. Это просто вызывается нажатием кнопки – prawn

+0

Не уверенный помощник, просто хотел подчеркнуть, что авторизация и аутентификация - это две отдельные вещи. Возможно, это связано с разрешениями на папку. Проверьте ответ на http://forums.asp.net/t/1165237.aspx, поскольку это может быть полезно (в частности, подкоды и разрешения). – JuStDaN

ответ

0

Вы должны дать разрешение папки записи в учетную запись пользователя Приложеинего бассейна.

+0

Я попробовал. учетная запись службы имеет полный контроль над библиотекой документов – prawn

Смежные вопросы