Можно ли сделать семейство веб-сайтов Office 365 доступным только для чтения? Пожалуйста, помогите мне, предоставив ваш ценный ответ. Заранее спасибо.
Office 365 в режиме только для чтения
Ответы (1)
Для Office 365 вы можете рассмотреть следующие варианты:
CSOM
Предварительные требования: SDK клиентских компонентов SharePoint Online
В API администрирования клиентов SiteProperties class
предоставляет свойство SiteProperties.LockState, которое получает или устанавливает состояние блокировки сайта.
using (var ctx = GetContext(tenantUrl,username,password)) {
var tenant = new Tenant(ctx);
var siteProperties = tenant.GetSitePropertiesByUrl(siteUrl, true);
siteProperties.LockState = "NoAccess";
siteProperties.Update();
ctx.ExecuteQuery();
}
куда
public static ClientContext GetContext(Uri webUri, string userName, string password)
{
var securePassword = new SecureString();
foreach (var ch in password) securePassword.AppendChar(ch);
return new ClientContext(webUri) { Credentials = new SharePointOnlineCredentials(userName, securePassword) };
}
Дополнительные сведения о состоянии блокировки см. в разделе Управление состоянием блокировки для семейства веб-сайтов в SharePoint 2013
PowerShell
Предварительные требования: командная консоль SharePoint Online
Вы можете установить состояние блокировки для семейства веб-сайтов с помощью Set-SPOSite. команда:
Set-SPOSite https://[tenant].sharepoint.com/sites/targetsite -LockState [NoAccess|Unlock]
Ограничение: для Office 365 поддерживается установка только
NoAccess|Unlock
значений.
person
Vadim Gremyachev
schedule
05.05.2015
в моем случае я пытаюсь удалить флаг только для чтения для своего сайта. Существующее значение для LockState — ReadOnly. Другой мой сайт, доступный не только для чтения, имеет значение «Разблокировать». Итак, я запускаю код ниже и не выдает никаких ошибок, но не устанавливает значение. siteProperties.LockState = Разблокировать; Свойства сайта.Обновление(); ctx.Load (свойства сайта); ctx.ExecuteQuery();
- person Ravi Khambhati; 11.07.2019