有没有办法让特定用户也可以访问共享点网站?

时间:2019-04-10 09:58:57

标签: c# sharepoint microsoft-graph

我正在创建一个应用程序,它将允许用户扫描打印机上的文档并将文档直接上载到Sharepoint。我已经在Azure中使用管理员凭据设置了该应用程序,并且已授予对该应用程序的访问权限,以允许它读写Sharepoint。

我遇到的问题是,当我通过MS Graph API请求Sharepoint中的网站列表时,我正在获取根目录中所有网站的列表,并且想知道是否有一种方法可以过滤此内容列出只有特定用户可以访问的那些?

我可以使用以下代码获取访问令牌:

var cca = new ConfidentialClientApplication(appId, string.Format("https://login.microsoftonline.com/{0}/v2.0", tenantId), redirectUri, new ClientCredential(appSecret), null, appTokenCache.GetMsalCacheInstance());
var authResult = await cca.AcquireTokenForClientAsync(new[] { "https://graph.microsoft.com/.default" });
return authResult.AccessToken;

此代码可以正常工作,我可以使用该访问令牌创建一个客户端来访问图形。然后,我使用以下代码获取网站:

var sites = await graphClient.Sites["Root"].Sites.Request().GetAsync();

此行也有效,并返回Root中的子站点。但是它会返回所有站点,因此我需要以某种方式过滤此列表,以便仅返回正在使用该应用程序的任何用户的那些站点。

0 个答案:

没有答案
相关问题