es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Inicio de sesión de SharePoint a través del usuario del grupo de aplicaciones en la aplicación .Net

Estoy utilizando .net para mi aplicación web y durocodifico nombre de usuario y contraseña. El sitio de Sharepoint es fácilmente accesible.

Pero ahora quiero hacer algunos cambios en la aplicación, así que necesito iniciar sesión en Sharepoint sin pasar nombre de usuario y contraseña durocodificados.

¿Es posible conectar Sharepoint y obtener detalles de archivos mediante una aplicación web sin pasar credenciales durocodificadas?

  • Básicamente, mi usuario de apppool tiene acceso a la ruta de Sharepoint que quiero leer y quiero iniciar sesión en Sharepoint a través del usuario de appool, sin pasar credenciales durocodificadas. *

Fragmento de código que intenté pero no funcionó:

using (var ctx = new ClientContext(siteUrl))
{
    ctx.Credentials = (CredentialCache.DefaultCredentials) como SharePointOnlineCredentials;
    Microsoft.SharePoint.Client.Web web = ctx.Web;
    ctx.Load(web);
    ctx.ExecuteQuery();
}

Fragmento de código que intenté pero no funcionó:

using (var ctx = new ClientContext(siteUrl))
{
    CredentialCache credCache = new CredentialCache();
    credCache.Add(new Uri(siteUrl), "NTLM", CredentialCache.DefaultNetworkCredentials);
    ctx.Credentials = credCache;
    ctx.AuthenticationMode = ClientAuthenticationMode.Default;
    Microsoft.SharePoint.Client.Web web = ctx.Web;
    ctx.Load(web);
    ctx.ExecuteQuery();
}

Fragmento de código que intenté pero no funcionó:

using (var ctx = new ClientContext(siteUrl))
{
    ctx.Credentials = CredentialCache.DefaultNetworkCredentials;
    ctx.AuthenticationMode = ClientAuthenticationMode.Default;
    Microsoft.SharePoint.Client.Web web = ctx.Web;
    ctx.Load(web);
    ctx.ExecuteQuery();
}

Por favor ayuda.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Sí, es posible conectarse a SharePoint y obtener detalles de archivos por medio de una aplicación web sin pasar credenciales codificadas. En lugar de codificar el nombre de usuario y la contraseña, puedes utilizar la identidad del grupo de aplicaciones para autenticar con SharePoint.

    Aquí tienes un ejemplo de cómo autenticar con SharePoint utilizando la identidad del grupo de aplicaciones en C#:

    using (var ctx = new ClientContext(urlDelSitio))
    {
        ctx.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;
        Microsoft.SharePoint.Client.Web web = ctx.Web;
        ctx.Load(web);
        ctx.ExecuteQuery();
    }
    

    Al establecer la propiedad Credentials en System.Net.CredentialCache.DefaultNetworkCredentials, estás indicando a SharePoint que utilice la identidad del grupo de aplicaciones para la autenticación.

    Asegúrate de que la identidad del grupo de aplicaciones tenga los permisos necesarios para acceder al sitio de SharePoint y a los archivos que deseas obtener.

    Con este enfoque, puedes evitar codificar el nombre de usuario y la contraseña en tu aplicación, lo cual es una práctica más segura.

Comments are closed.