Я немного покопался в Reflector, чтобы посмотреть, какие разрешения на самом деле требуются. Проверьте метод ниже, который идет по цепочке вызовов от GetContentTypes()
метода обслуживания:
public string GetContentTypeTemplates()
{
SPWeb web = SPContext.GetContext(HttpContext.Current).Web;
web.CheckPermissions(SPBasePermissions.EmptyMask | SPBasePermissions.ManageLists);
web.CheckPermissions(SPBasePermissions.EmptyMask | SPBasePermissions.AddAndCustomizePages);
return this.GetGeneralContentTypes(web.AvailableContentTypes);
}
Исходя из этого, мы можем заключить, что SharePoint требует, чтобы у вас были права ManageLists
и AddAndCustomizePages
для извлечения всех типов контента.
Таким образом, одним из решений для вас может быть обеспечение того, чтобы учетная запись клиента имела эти разрешения, возможно, путем создания настраиваемого уровня разрешений или, при работе на сайте публикации, добавление учетной записи в группу «Дизайнеры».