While using pnp.Framework in .Net 6 environment. I need authenticated client context to get Sharepoint Data but facing 403forbidden while running context.ExecuteQuery().
I want to use the clientId and clientSecret mode of authentication for getting data from my client to my environment but facing 403 forbidden request.
I registered App in the particular Azure Active Directory and added the following permissions.
using PnP.Framework;
using System.Security;
using System.Web;
namespace SharePointOnlinePNPProject
{
public class Program
{
static async Task Main(string[] args)
{
string appID= "appId/clientId";
string tenantId = "<tenantId>";
string clientSecret = "";
string queueTestingLink = "Input sharepoint url";
Uri site = new Uri("https://clientDomain.sharepoint.com");
string filePath= "/Shared Documents/Case Studies"
SecureString password = new SecureString();
foreach (char c in passcode)
{
password.AppendChar(c);
}
var scopes = new string[] { hostLink + ".default" };
try
{
using (var context = new AuthenticationManager().GetACSAppOnlyContext(site.OriginalString, appID, clientSecret))
{
var folder = context.Web.GetFolderByServerRelativeUrl(filePath);
context.Load(folder);
context.ExecuteQuery();
Console.WriteLine(folder.Name);
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}