Я создал приложения c в Azure, которые используют мои учетные данные для подключения к нашим сайтам SharePoint Online, а затем запускаются без моего участия. Я хочу выполнять более сложные операции на сайтах SharePoint и предпочел бы создать функциональное приложение C#. Однако я не вижу способа передать свои учетные данные на Microsoft.SharePoint.Client
без необходимости быть там для аутентификации. Я исследовал, используя сертификат, но это требует одобрения администратора, которое я не могу получить. Могу ли я использовать существующее соединение приложения SharePoint Logi c, в котором хранятся мои учетные данные, и передать его в пользовательское приложение-функцию? Вот краткое изображение того, как выглядит соединение в приложении Logi c. Вместо того, чтобы использовать встроенное действие Azure, я хочу заменить его своим собственным приложением-функцией, передавая это соединение приложению-функции.
Тогда мне понадобится использовать его для создания ClientContext:
var ctx = new ClientContext(siteUrl);
ctx.ExecutingWebRequest += (s, e) =>
{
e.WebRequestExecutor.RequestHeaders["Authorization"] = "Bearer " + authenticationResult.AccessToken;
};
return ctx;
, который затем можно будет использовать против сайта SharePoint:
using (ClientContext ctx = await csomHelper.GetClientContext(siteUrl))
{
Web web = ctx.Web;
ctx.Load(web);
ctx.ExecuteQuery();
log.LogInformation($"found site : {web.Title}");
}