none
Error 401UnAuthorized RRS feed

  • Pregunta

  • Estoy realizando algo similar a lo que esta en el foro titulado como "Utilizar un control FileUpload de ASP.NET en WebPart de Sharepoint ".

    Cuando intento cargar el archivo a la bibliotecade documentos me tira error "401 UNAUTHORIZED", probe de usar servicios para autenticar la persona ya que lo q tengo realizado es una aplicaicon y no la tengo implementada aun.. entonces no puedo acceder al currentuser..

    Como puedo solucionar este problema.. copio el código debajo:

    protected void Button1_Click1(object sender, EventArgs e)
            {
                String sharePointSite = "http://www...com.ar/";
                String documentLibraryName = "Archivos Prueba";
          
                using (AuthenticationSvc.Authentication authSvc = new AuthenticationSvc.Authentication())
                {
                    authSvc.Url = @"http://www.bcr.com.ar/_vti_bin/authentication.asmx";
                    authSvc.CookieContainer = new System.Net.CookieContainer();
                    authSvc.AllowAutoRedirect = true;
                    AuthenticationSvc.LoginResult result = authSvc.Login("pepe", "123");
                    if (result.ErrorCode == AuthenticationSvc.LoginErrorCode.NoError)
                    {
                        try
                        {
                            using (SPSite oSite = new SPSite(sharePointSite))
                            {
                                using (SPWeb oWeb = oSite.OpenWeb())
                                {
                                    string sRuta = FileUpload1.PostedFile.FileName;
                                   
                                    if (FileUpload1.HasFile)
                                    {
                                        Label1.Text = "Tamaño del Archivo: " + FileUpload1.FileBytes.Length +
                                        "<br />" + "Nombre del Archivo: " + FileUpload1.FileName; //+
                                    }
                                    else
                                    {
                                        Label1.Text = "Archivo no subido.";
                                    }

                                    SPFolder myLibrary = oWeb.Folders[documentLibraryName];

                                    // Prepare to upload
                                    Boolean bReemplazarArchivosExistentes = true;
                                    string sNombreArchivo = Path.GetFileName(sRuta);
                                    FileStream fsStream = File.OpenRead(sRuta);
                                   
                                    // Subimos el documento
                                    SPFile spfile = myLibrary.Files.Add(sNombreArchivo, fsStream, bReemplazarArchivosExistentes);

                                    // Guardamos los cambios
                                    myLibrary.Update();

                                    //InsertarDatos();
                                }
                            }
                        }
                        catch
                        {
                            Response.Write("Entro al catch");
                        }
                    }
                }
            }

    Gracias

    martes, 31 de enero de 2012 17:01

Todas las respuestas

  • Hola,

    ¿tienes configurada la autenticación por formularios en tu sitio? Si no es así, no deberías de utilizar ese servicio de autenticación.

     


    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin | MVP SharePoint Server
    miércoles, 1 de febrero de 2012 1:08
  • Si, exactamente!
    miércoles, 1 de febrero de 2012 12:00
  • El código parece correcto, ¿el usuario pepe tiene permisos en la biblioteca que intentas acceder?

     


    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin | MVP SharePoint Server
    miércoles, 1 de febrero de 2012 12:03
  • Si, de hecho tiene permisos de Control Total!

    Estuve haciendo controles y el error se da a partir de la linea que dice SPFolder myLibrary = ..., es decir cuando intenta acceder a la bibiloteca.. como puedo solucionarlo?

    Gracias por la ayuda!!

    • Editado ce_ miércoles, 1 de febrero de 2012 13:51
    miércoles, 1 de febrero de 2012 13:49
  • Hola,

    explícanos mejor que es lo que estás intentando hacer. Según veo, utilizas el API de servidor para acceder a SharePoint desde una aplicación web? o desde un web part?

    Si es desde una aplicación web, esto no está soportado, para esos casos tienes los servicios web, el api rest o el api de cliente, pero no el api de servidor.

     


    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin | MVP SharePoint Server
    jueves, 2 de febrero de 2012 10:31
  • Desde una aplicación web.. probe con tomar datos de una lista y los trae, pero si trabajo con una biblioteca de documentos no.

    No tienes un código para pasarme en el cual pueda hacer en una aplicación web lo que estoy haciendo, es decir, cargar un archivo y alojarlos en una Bibiloteca de documentos..

    Sdos!

    jueves, 2 de febrero de 2012 12:08