Можно ли программно установить состояние блокировки на сайтах SharePoint Online на C#?C#

Место общения программистов C#
Anonymous
Можно ли программно установить состояние блокировки на сайтах SharePoint Online на C#?

Сообщение Anonymous »

Мне хотелось бы найти способ программно установить свойство LockState сайтов SharePoint Online на C# — либо ReadOnly, либо Unlock, если это необходимо.
Я пытался использовать PnP Фреймворк примерно такого типа:

Код: Выделить всё

using (var cc = new AuthenticationManager()
.GetACSAppOnlyContext(siteUrl, clientId, clientSecret))
{
var tenant = new Tenant(cc);
var siteProperties = tenant.GetSitePropertiesByUrl(siteUrl, true);
tenant.Context.Load(siteProperties);
await tenant.Context.ExecuteQueryAsync();

siteProperties.LockState = readOnly ? "ReadOnly" : "Unlock";

siteProperties.Update();
await tenant.Context.ExecuteQueryAsync();
}
Здесь URL-адрес сайта выглядит как https://-admin.sharepoint.com/sites/{ключ сайта
Когда я запускаю это я получаю сообщение об ошибке «Ошибка запроса токена» при попытке загрузить свойства сайта.
Это связано с разрешениями на регистрацию приложения, которая используется здесь для аутентификации? Какие разрешения необходимо настроить, чтобы разрешить обновление LockState на сайте SharePoint через TenantAdministration?
В противном случае можно ли сделать это через Graph API/GraphServiceClient вместо использования PnP Framework?
Будем благодарны за любую помощь или указание в правильном направлении. Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/790 ... tically-in

Вернуться в «C#»