Presentation is loading. Please wait.

Presentation is loading. Please wait.

Developing with Microsoft SharePoint Server 2010 Sandboxed Solutions

Similar presentations


Presentation on theme: "Developing with Microsoft SharePoint Server 2010 Sandboxed Solutions"— Presentation transcript:

1 Developing with Microsoft SharePoint Server 2010 Sandboxed Solutions
Tech Ed North America 2010 5/6/2019 7:54 AM Required Slide SESSION CODE: OSP308 Developing with Microsoft SharePoint Server 2010 Sandboxed Solutions Scot Hillier Scot Hillier Technical Solutions, LLC © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

2 Code for Today’s Session

3 Agenda Why do we need Sandboxed Solutions? What is the Sandbox?
0x - Lecture Title v1.0 Agenda Why do we need Sandboxed Solutions? What is the Sandbox? How does the Sandbox work? How do I build a Sandboxed Solution? What are the restrictions on a Sandboxed Solution? Can I get out of the Sandbox when necessary? How are Sandboxed Solutions managed? © 2010 Critical Path Training, LLC - All Rights Reserved

4 Microsoft SharePoint Conference 2009
5/6/2019 How to Enrage SP IT Pros Ask them to change the production farm trustLevel to Full. Ask them to make hand edits to the web.config files in the production farm. Forget to compile your production code in Release mode. Forget to run SPDisposeCheck against your assemblies before deployment. Tell them everything has to go in the GAC. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

5 Sandboxed Solutions – Why?
Security & Stability Business Agility Totally Agile Business Simple deployment model Limited restrictions on developer access to farm All resources are available to solutions Iterative development process

6 Sandboxed Solutions – Why?
Security & Stability Business Agility Totally Stable & Secure ‘Clean Room’ Datacenter 3 week change control process Formal code review Severe restrictions on resource access

7 Sandboxed Solutions – Why?
Security & Stability Business Agility Essential Agility Essential Stability Easy deployment Iterative development Safe Limited API Access Monitored

8 Microsoft SharePoint Conference 2009
5/6/2019 Supported Solutions Content Types, Site Columns Custom Actions Declarative Workflows Event Receivers, Feature Receivers InfoPath Forms Services (not admin-appr) JavaScript, AJAX, jQuery, Silverlight List Definitions Non-visual web parts Site Pages SharePoint OnLine © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

9 Key Limitations Sandboxed Solution runs in sandbox. Other artifacts like lists and declarative workflows run with full trust because they have no code. User identity is lost when running in the sandbox Business Connectivity Services requires Secure Store Service if identity is required Must run worker process as managed account to use SSS Script Manager, Page-level variables, web-part connections unavailable because solution doesn’t really run on the page.

10 The Sandbox A separate process where the solution runs
Exposes a subset of Microsoft.SharePoint Code Access Security policy limits functionality Site Collection Solution Gallery for deployment Central Administration for managing and monitoring solutions

11 A Separate Process User Code Service (SPUCHostService.exe)
Sandbox Worker Process (SPUCWorkerProcess.exe) Sandbox Worker Process Proxy (SPUCWorkerProcessProxy.exe)

12 A Subset of Microsoft.SharePoint
Microsoft SharePoint Conference 2009 5/6/2019 A Subset of Microsoft.SharePoint Microsoft.SharePoint Except SPSite constructor SPSecurity object SPWorkItem and SPWorkItemCollection objects SPAlertCollection.Add method SPAlertTemplateCollection.Add method SPUserSolution and SPUserSolutionCollection objects SPTransformUtilities Microsoft.SharePoint.Navigation Microsoft.SharePoint.Utilities Except SPUtility.Send method SPUtility.GetNTFullNameand FromLogin method Microsoft.SharePoint.Workflow Microsoft.SharePoint.WebPartPages Except SPWebPartManager object SPWebPartConnection object WebPartZone object WebPartPage object ToolPane object ToolPart object © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

13 Code Access Security Policy
Microsoft SharePoint Conference 2009 5/6/2019 Code Access Security Policy SharePointPermission.ObjectModel SecurityPermission.Execution AspNetHostingPermission.Level = Minimal Note: Several approaches can be used to “break out” of the Sandbox © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

14 12/02/08 SharePoint Developer Workshop: MS Confidential
Solution Gallery Site Collection Library Located at _catalogs/solutions Upload, activate, deactivate

15 Central Administration
12/02/08 SharePoint Developer Workshop: MS Confidential Central Administration Solution Administration Block Solutions Quota Templates Resource Monitoring

16 Tech Ed North America 2010 Creating Sandboxed Solutions
Basics Creating Sandboxed Solutions DEMO © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

17 Sandbox Architecture Host Services (SPUCHostService.exe)
5/6/2019 7:54 AM Sandbox Architecture FRONT END HOST SERVER Execution Manager (Inside Application Pool) Host Services (SPUCHostService.exe) IIS (WPW3.EXE) Worker Service (SPUCWorkerProcess.exe) Untrusted Code Subset Object Model Proxy Microsoft.SharePoint.dll © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

18 Sandbox Architecture Host Services (SPUCHostService.exe)
5/6/2019 7:54 AM Sandbox Architecture FRONT END HOST SERVER Execution Manager (Inside Application Pool) Host Services (SPUCHostService.exe) IIS (W3WP.EXE) Worker Service (SPUCWorkerProcess.exe) Untrusted Code Subset Object Model Proxy Subset-Model Request Microsoft.SharePoint.dll © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

19 Sandbox Architecture Host Services (SPUCHostService.exe)
5/6/2019 7:54 AM Sandbox Architecture FRONT END HOST SERVER Execution Manager (Inside Application Pool) Host Services (SPUCHostService.exe) IIS (W3WP.EXE) Worker Service (SPUCWorkerProcess.exe) Untrusted Code Subset Object Model Proxy Full-Model Request Microsoft.SharePoint.dll © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

20 Sandbox Architecture Host Services (SPUCHostService.exe)
5/6/2019 7:54 AM Sandbox Architecture FRONT END HOST SERVER Execution Manager (Inside Application Pool) Host Services (SPUCHostService.exe) IIS (W3WP.EXE) Worker Service (SPUCWorkerProcess.exe) while(true) { //Do a Bad Bad Thing! } Untrusted Code Run for 30sec Subset Object Model Proxy Resource Wasting Call Microsoft.SharePoint.dll © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

21 Microsoft SharePoint Conference 2009
5/6/2019 Full-Trust Proxy Worker Service (SPUCWorkerProcess.exe) GAC SPProxyOperationsArgs SPProxyOperationsArgs SPProxyOperation SPUtility Secured Resource © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

22 Client-Side Solutions
Worker Service (SPUCWorkerProcess.exe) Silverlight App Silverlight Web Part Host JavaScript Uncustomized Page Web Service (or Client OM) Secured Resource

23 Breaking-Out of the Sandbox
Tech Ed North America 2010 5/6/2019 7:54 AM Breaking-Out of the Sandbox Full-trust and Client-Side Solutions DEMO © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

24 12/02/08 SharePoint Developer Workshop: MS Confidential
Administration Load Balancing Validation Monitoring Resource Restriction

25 12/02/08 SharePoint Developer Workshop: MS Confidential
Load Balancing Partial Trust can be run in two modes Local Mode Execute code on WFE Low administration overhead Lower scalability Remote mode Execute on back-end farm machine Load balanced distribution of code execution requests Create custom Load balancers

26 12/02/08 SharePoint Developer Workshop: MS Confidential
Solution Monitoring Farm Administrators Set absolute limits Site Administrators Identify expensive solutions Server Resources: CPU, Memory, SQL, Exceptions, Critical Errors, Handles, Threads, …

27 12/02/08 SharePoint Developer Workshop: MS Confidential
Resource Quotas Central Admin Solution Gallery Measured in ‘Resource Points’

28 DEMO Administration Tech Ed North America 2010 5/6/2019 7:54 AM
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

29 Summary Sandboxed Solutions greatly improve farm stability
0x - Lecture Title v1.0 Summary Sandboxed Solutions greatly improve farm stability The Sandbox is a separate process where our applications run The Sandbox has OM and CAS restrictions Many solution types are supported Full-Trust Proxies and client-side solutions allow access to resources Developers create, Site Collection admins install, Farm admins manage © 2010 Critical Path Training, LLC - All Rights Reserved

30 Play the Microsoft Office & SharePoint Track Tag Contest
Tech·Ed  North America 2009 5/6/2019 7:54 AM Play the Microsoft Office & SharePoint Track Tag Contest Download the Microsoft Tag Reader Open the internet browser on your mobile phone and visit Grand Prize (1) Xbox 360 Prize Package and Microsoft® Office 2010 Daily Prizes 40 copies of Microsoft® Office 2010 Come to the Expo Hall – Yellow Section OSP Info Desk for Official Rules & Collect Additional Tags from all OSP Track Sessions, Speakers and Expo Hall! © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

31 Track Resources For More Information – http://sharepoint.microsoft.com
Required Slide Track PMs will supply the content for this slide, which will be inserted during the final scrub. Tech Ed North America 2010 5/6/2019 7:54 AM Track Resources For More Information – SharePoint Developer Center – SharePoint Tech Center – Official SharePoint Team Blog – © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

32 Required Slide Speakers, please list the Breakout Sessions, Interactive Sessions, Labs and Demo Stations that are related to your session. Tech Ed North America 2010 5/6/2019 7:54 AM Related Content Breakout Sessions – See Conference Guide for full list of OSP Track Sessions Interactive Sessions – OSP Track has 10 Interactive Sessions – OSP01-INT – OSP10-INT Hands-on Labs – OSP01-HOL – OSP20-HOL Product Demo Stations – Yellow Section, OSP Office 2010, SharePoint 2010, Project Server 2010, Visio have kiosks and demos © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

33 Resources Learning Required Slide www.microsoft.com/teched
Tech Ed North America 2010 5/6/2019 7:54 AM Required Slide Resources Learning Sessions On-Demand & Community Microsoft Certification & Training Resources Resources for IT Professionals Resources for Developers © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

34 Complete an evaluation on CommNet and enter to win!
Tech Ed North America 2010 5/6/2019 7:54 AM Required Slide Complete an evaluation on CommNet and enter to win! © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

35 Sign up for Tech·Ed 2011 and save $500 starting June 8 – June 31st
You can also register at the North America 2011 kiosk located at registration Join us in Atlanta next year

36 Tech Ed North America 2010 5/6/2019 7:54 AM
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

37 Required Slide Tech Ed North America 2010 5/6/2019 7:54 AM
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Download ppt "Developing with Microsoft SharePoint Server 2010 Sandboxed Solutions"

Similar presentations


Ads by Google