Zagadnienia dotyczące rozwiązania w trybie piaskownicy
Rozwiązania w trybie piaskownicy to funkcja w programie Microsoft SharePoint 2010, która umożliwia użytkownikom zbioru witryn przekazywanie własnych niestandardowych rozwiązań kodu. Typowym rozwiązaniem w trybie piaskownicy jest przekazywanie własnych składniki Web Part przez użytkowników.
Aplikacja programu SharePoint w trybie piaskownicy jest uruchamiana w bezpiecznym, monitorowanym procesie, który ma dostęp do ograniczonej części farmy sieci Web. Program Microsoft SharePoint 2010 używa kombinacji funkcji, galerii rozwiązań, monitorowania rozwiązań i struktury weryfikacji w celu włączenia rozwiązań w trybie piaskownicy.
Określanie poziomu zaufania projektu
Program Visual Studio obsługuje rozwiązania w trybie piaskownicy za pośrednictwem właściwości projektu logicznego o nazwie Rozwiązanie w trybie piaskownicy. Tę właściwość można ustawić w dowolnym momencie w projekcie lub można ją określić podczas tworzenia projektu w Kreatorze dostosowywania programu SharePoint.
Uwaga
Zmiana właściwości Rozwiązania w trybie piaskownicy projektu po jego utworzeniu może spowodować błędy walidacji.
Rozwiązanie jest uznawane za rozwiązanie o zakresie farmy, jeśli właściwość Rozwiązanie w trybie piaskownicy ma wartość false lub wybierz opcję Wdróż jako rozwiązanie farmy. Jednak rozwiązanie jest traktowane inaczej niż rozwiązanie farmy, jeśli właściwość Rozwiązanie w trybie piaskownicy jest ustawiona na wartość true lub wybierz opcję Wdróż jako rozwiązanie w trybie piaskownicy w kreatorze.
Hierarchia lokacji programu SharePoint
Aby zrozumieć, jak działają rozwiązania w trybie piaskownicy, warto wiedzieć, że witryny programu SharePoint są hierarchiczne w zakresie. Górny element jest znany jako farma sieci Web, a inne elementy są do niego podrzędne:
Farma sieci Web
Aplikacja internetowa A
Zbiór witryn A1
Witryna A1a
Aplikacja internetowa B
Zbiór witryn B1
Witryna B1a
Witryna B1b
Zbiór witryn B2
Witryna B2a
Jak widać, farmy sieci Web mogą zawierać co najmniej jedną aplikację sieci Web, która z kolei może zawierać co najmniej jeden zbiór witryn, które mogą mieć podwitryny itd. Zmiany wprowadzone w jednym zbiorze witryn mają wpływ tylko na ten zbiór witryn, a nie inne. Jednak zmiany wprowadzone na poziomie farmy sieci Web mają wpływ na wszystkie zbiory witryn w farmie.
Program Windows SharePoint Services (WSS) 3.0 umożliwia wdrażanie rozwiązań tylko na poziomie farmy, ale program Microsoft SharePoint Foundation umożliwia wdrożenie na poziomie farmy (rozwiązanie farmy) lub na poziomie zbioru witryn (rozwiązanie w trybie piaskownicy).
Dlaczego rozwiązania w trybie piaskownicy?
W programie WSS 3.0 rozwiązania można wdrożyć tylko na poziomie farmy. Oznaczało to, że potencjalnie szkodliwe lub destabilizujące rozwiązania można wdrożyć, które miały wpływ na całą farmę sieci Web i wszystkie inne zbiory witryn i aplikacje, które są w nim uruchomione. Jednak przy użyciu rozwiązań w trybie piaskownicy można wdrażać rozwiązania w obszarze podrzędnym farmy — określonym zbiorze witryn. Aby zapewnić dodatkową ochronę, zestaw rozwiązania nie jest ładowany do głównego procesu usług IIS (w3wp.exe). Zamiast tego jest ładowany do oddzielnego procesu (SPUCWorkerProcess.exe). Ten proces jest monitorowany i implementuje przydziały i ograniczanie przepustowości w celu ochrony farmy przed rozwiązaniami w trybie piaskownicy, które wykonują szkodliwe działania, takie jak uruchamianie ciasnych pętli korzystających z cykli procesora CPU.
Galeria rozwiązań zbioru witryn
Program Windows SharePoint Services 2010 ma funkcję znaną jako "galeria rozwiązań zbioru witryn". Dostęp do tej funkcji można uzyskać na stronie Administracja istration programu SharePoint 2010 Central lub otwierając menu Akcje witryny, wybierając pozycję Ustawienia witryny, a następnie wybierając link Rozwiązania w obszarze Galerie w witrynie programu SharePoint. Galerie rozwiązań to repozytoria rozwiązań, które umożliwiają administratorom zbioru witryn zarządzanie rozwiązaniami w ich zbiorach witryn.
Galeria rozwiązań to biblioteka dokumentów przechowywana w głównej sieci Web witryny programu SharePoint. Galeria rozwiązań zastępuje szablony witryn i obsługuje pakiety rozwiązań. Po przekazaniu pliku pakietu rozwiązania programu SharePoint (.wsp) jest on przetwarzany jako rozwiązanie w trybie piaskownicy.
Ograniczenia rozwiązania w trybie piaskownicy
Po wdrożeniu rozwiązania w trybie piaskownicy tablica dostępnych funkcji programu SharePoint jest ograniczona, aby zmniejszyć wszelkie luki w zabezpieczeniach, które mogły wystąpić. Niektóre z tych ograniczeń obejmują następujące kwestie:
Rozwiązania w trybie piaskownicy mają ograniczony podzestaw elementów rozwiązania, które można wdrożyć. Potencjalnie podatne na zagrożenia szablony projektów programu SharePoint, takie jak definicje witryny i przepływy pracy, nie są dostępne.
Program SharePoint uruchamia kod rozwiązania w trybie piaskownicy w procesie (SPUCWorkerProcess.exe) niezależnie od głównego procesu puli aplikacji usług IIS (w3wp.exe).
Nie można dodać zamapowanych folderów do projektu.
Typy w zestawie programu Microsoft SharePoint Server Microsoft.Office.Server nie mogą być używane w rozwiązaniach w trybie piaskownicy. Ponadto w rozwiązaniach w trybie piaskownicy można używać tylko typów w zestawie Microsoft SharePoint Foundation Microsoft.SharePoint.
Należy pamiętać, że określenie rozwiązania programu SharePoint jako rozwiązania w trybie piaskownicy nie ma wpływu na serwer programu SharePoint; Określa on tylko sposób wdrażania projektu programu SharePoint w programie SharePoint z poziomu programu Visual Studio i zestawów, z którymi się wiąże. Nie ma to wpływu na wygenerowany plik wsp, a plik wsp nie zawiera danych, które bezpośrednio skorelują się z właściwością Rozwiązanie w trybie piaskownicy.
Możliwości i elementy w rozwiązaniach w trybie piaskownicy
Rozwiązania w trybie piaskownicy obsługują następujące możliwości i elementy:
Typy zawartości/pola
Akcje niestandardowe
Deklaratywne przepływy pracy
Odbiorniki zdarzeń
Objaśnienie funkcji
Definicje listy
Wyświetlanie listy wystąpień
Moduł/pliki
Nawigacja
Onet.xml
SPItemEventReceiver
SPListEventReceiver
SPWebEventReceiver
Obsługa wszystkich składniki Web Part, które pochodzą z
System.Web.UI.WebControls.WebParts.WebPart
Części sieci Web
Elementy funkcji WebTemplate (zamiast Webtemp.xml)
Visual składniki Web Part
Rozwiązania w trybie piaskownicy nie obsługują następujących możliwości i elementów:
Strony aplikacji
Niestandardowa grupa akcji
Funkcje o zakresie farmy
HideCustomAction
, elementFunkcje w zakresie aplikacji internetowej
Przepływy pracy z kodem