200 likes | 389 Vues
Sandboxed solutions в SharePoint 2010. Илья Бойко Разработчик SharePoint UMSOFT. Разработка для SharePoint 2007. Для развертывания нужны права администратора фермы Сборки размещаются в GAC или bin Любое установленное решение может нарушить работу всей фермы
E N D
Sandboxed solutions в SharePoint 2010 Илья Бойко Разработчик SharePoint UMSOFT
Разработка для SharePoint 2007 • Для развертывания нужны права администратора фермы • Сборки размещаются в GAC или bin • Любое установленное решение может нарушить работу всей фермы • Код исполняется в рамках w3wp, owstimer • Возможность разделения с помощью CAS • Не удобство для хостинг провайдеров
Sandboxed в SharePoint 2010 • Решение с обрезанными возможностями и правами • Развертываются в рамках коллекций сайтов • Могут управляться администратором узла • Гибкая система, квот, блокировок и балансировки нагрузки
Архитектура Веб-сервер Сервер приложений Менеджер исполнения Хост сервис (SPUCHostService.exe) Исполняемый процесс (SPUCWorkerProcess.exe) IIS (w3wp.exe) Недоверенный код Ограниченная объектная модель Полная объектная модель
Где использовать? • При разработке тестовых решений • При работе с внешними поставщиками • При разработке решений для хостинг-провайдеров • При разработке решений для Office 365
Особенности разработки • Необходимо явно указать тип в свойствах проекта
Что разрешено в Sandboxed? • Sandboxed решенияпредлагают ограниченный доступ к SharePoint API • Возможности сайтов и семейств сайтов • Доступны XML определения • JavaScript и Silverlight для доступа к внешним данным
Что запрещено в Sandboxed? • Подключения к внешним данным:http, web services, и другие • ADO.net • Работа с Enterprise возможностями (Search, BCS) • Работа с потоками • P-Invoke • Работа с файловой системой • Обращение к другим сайтам
CAS в Sandboxed решениях AspNetHostingPermission, Level=Minimal SharePointPermission, ObjectModel=true SecurityPermission, Flags=Execution Sandbox My.dll wss_usercode.config Other.dll System DLL Пользовательский код SharePoint DLL Полное доверие Код платформы Объектная модель SharePoint
Полезное разработчику • Visual Studio 2010 SharePoint Power Tools • Visual Web Parts • ВалидаторыSandboxed решений http://visualstudiogallery.msdn.microsoft.com/8e602a8c-6714-4549-9e95-f3700344b0d9/ • CKSDEV • Trusted proxy • Расширенные возможности развертывания http://cksdev.codeplex.com/
Разработка решения Демонстрация
Квоты и блокировки • Глобальные квоты (память, процессорное время) • Квоты на сайты • Блокировать отдельных решений администратором фермы
Мониторинг ресурсов • [System.Reflection.Assembly]::Load("Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c") • $s=[Microsoft.SharePoint.Administration.SPUserCodeService]::Local • $s.ResourceMeasures| Select-Object Name,ResourcesPerPoint
Администрирование решения Демонстрация
Дополнительные материалыи ссылки • http://www.techdays.ru/videos/2416.html • http://msdn.microsoft.com/ru-ru/library/ee721992.aspx • http://www.slideshare.net/spsaturdayny/mostafa-elzoghbi-sharepoint-2010-sandbox-solutions-best-practices…