1 / 33

SharePoint is not Just On-Premise: Developing and Deploying S olutions for SharePoint Online

PR10. SharePoint is not Just On-Premise: Developing and Deploying S olutions for SharePoint Online. Rob Howard Program Manager Microsoft Corporation. Agenda. Overview of SharePoint Online Categories of hosted SharePoint solutions Introducing s andboxed solutions

oceana
Télécharger la présentation

SharePoint is not Just On-Premise: Developing and Deploying S olutions for SharePoint Online

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PR10 SharePoint is not Just On-Premise:Developing and Deploying Solutions for SharePoint Online Rob Howard Program Manager Microsoft Corporation

  2. Agenda • Overview of SharePoint Online • Categories of hosted SharePoint solutions • Introducing sandboxed solutions • Developing and deploying sandboxed solutions • Sandboxed solutions architecture

  3. The Power of Choice! On-Premises and Online Hosting On-Premises Deployments SharePoint Online Standard SharePoint Online Dedicated • Self-hosted and managed • Direct access to physical machines • Central admin access • Hosted within own data centers • Entire environment customizable • All accounts, machines, and data within a single AD Forest • Available to companies of any size. • Multi-tenant hosting • Shared Hardware • Outsourced IT management • Hosted within MS data centers • No support for “farm” code • Support for SharePoint Designer based customizations • Certificate authentication (today) or Forms based authentication (2010) • Available for companies with 5+ seats • Dedicated Hosting • Dedicated Hardware • Outsourced IT management • Hosted within MS data centers • Most of the environment is customizable (“farm” code is supported) • Machine and Process accounts in a different AD Forest • NTLM Authentication • Available for companies with 5000+ seats

  4. Better Every Day Simplified Management Always up-to-date capabilities at a predictable cost • Key Benefits • Up and running quickly • Latest software • No more server upgrades • Subscription-based • Predictable cost • Optimize productivity $ Software + Services Accelerate the Journey Basic Rationalized Standardized Dynamic IT Is An Efficient Cost Center IT Is A Business Center IT Is A Strategic Asset IT Is A Cost Center

  5. SharePoint Application ComponentsSharePoint 2007 “No-server-code” Site Solutions Farm Solutions Custom server components Web parts, workflow actions, InfoPath form logic, eventand feature receivers Timer jobs Windows services Web services Field types Doc parsers, more… • Custom markup • HTML, ASP.Net, web part configuration, XSLT, XOML • Server component white-list • ASP.Net controls, web parts, workflow actions • Client-side technologies • JavaScript, Silverlight • Consume Web services or local data sources

  6. “No-server-code” site solutionsImprovements in SharePoint 2010 • XSLT-based list views • Reusable declarative workflows • Silverlight web part • Client object model • REST list apis • Business Connectivity Services • External data lists • CustomActions in the database

  7. SharePoint Designer 2010No code tool for SharePoint • Free for creating and editing SharePoint artifacts • New Tools • BDC Entities • List Schema • Custom Actions • Task / Approval Designer • Improved Tools • Workflow Designer • Page Editor • SharePoint Designer work can be migrated to Visual Studio 2010 • “Save site as template” in SharePoint Site Settings creates WSP • WSP imports into Visual Studio 2010 as new project

  8. “No-server-code” applications demo

  9. SharePoint Application ComponentsSharePoint 2007 “No-server-code” Site Solutions Farm Solutions Custom server components Web parts, workflow actions, InfoPath form logic, eventand feature receivers Timer jobs Windows services Web services Field types Doc parsers, more… • Custom markup • HTML, ASP.Net, web part configuration, XSLT, XOML • Server component white-list • ASP.Net controls, web parts, workflow actions • Client-side technologies • JavaScript, Silverlight • Consume Web services or local data sources

  10. SharePoint Application ComponentsSharePoint 2010 “No-server-code” Site Solutions Farm Solutions Custom server components Web parts, workflow actions, InfoPath form logic, eventand feature receivers Timer jobs Windows services Web services Field types Doc parsers, more… Sandboxed Solutions • Custom markup • HTML, ASP.Net, web part configuration, XSLT, XOML • Server component white-list • ASP.Net controls, web parts, workflow actions • Client-side technologies • JavaScript, Silverlight • Consume Web services or local data sources • All the capabilities of site solutions • Custom server components • Web parts, Workflow actions, InfoPath form logic, Eventand feature receivers • Xml Definitions • WSP-based deployment

  11. A Sandboxed Solution demo

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

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

  14. Sandboxed Solutions – Why? Security & Stability BusinessAgility Essential Agility Essential Stability • Easy deployment • Iterative development • Safe • Limited API Access • Monitored

  15. The Sandbox • A separate, rights-restricted process where the solution runs • Exposes a subset of Microsoft.SharePoint • Code Access Security policy limits functionality • Site collection solution gallery for deployment • Resource usage monitoring and site collection quotas

  16. Supported Solutions • Code components: • Event receivers • Feature receivers • Web parts • InfoPath forms logic • SharePoint Designer Workflow activities • Declarative components: • Content types, site columns • Lists and list definitions • Custom actions, ribbon extensions • Client-side technologies • Site pages, page layouts, and master pages

  17. Upgrade and PackagingWSP as the SharePoint Installer • WSS Solution Package (WSP) • SharePoint UI Save as Template • Better-defined Upgrade Semantics • Declarative upgrade mappings • Upgrade callouts for features • Application discovery in SharePoint Sites • WSPs as unified developer format • Works in both site collections and farm deployment

  18. Visual Studio 2010Developer Tools for SharePoint Develop, Deploy and Debug • Web Part, BDC and Workflow designers • Package and Deploy SharePoint projects • Generate WSP for Production Deployment • View SharePoint site in Server Explorer • Team Foundation Server Integration Web Part Designer Broad SharePoint Support • Support for SharePoint Sandboxed Solutions • Import WSP from SharePoint Designer including Workflow • Build Workflow Steps for SharePoint Designer • Extensibility for Development of Additional SharePoint Artifacts • SharePoint Business Connectivity Services support Project Types

  19. Developing a Sandboxed Solution demo

  20. A Subset of Microsoft.SharePoint • Microsoft.SharePointExcept • SPSite constructor • SPSecurity object • SPWorkItem and SPWorkItemCollection objects • SPAlertCollection.Addmethod • SPAlertTemplateCollection.Add method • SPUserSolution and SPUserSolutionCollection objects • SPTransformUtilities • Microsoft.SharePoint.Navigation • Microsoft.SharePoint.UtilitiesExcept • SPUtility.SendEmail method • SPUtility.GetNTFullNameandEmailFromLogin method • Microsoft.SharePoint.Workflow • Microsoft.SharePoint.WebPartPagesExcept • SPWebPartManager object • SPWebPartConnection object • WebPartZone object • WebPartPage object • ToolPane object • ToolPart object

  21. Code Access Security Policy • SharePointPermission.ObjectModel • SecurityPermission.Execution • AspNetHostingPermission.Level = Minimal No timer jobs No web service calls No elevation/impersonation Note: A fully-trusted “proxy class” can be created to gain access to additional resources

  22. Sandbox Architecture FRONT END BACK END Host Service (SPUCHostService.exe) Execution Wrapper(Inside Application Pool) Worker Process (SPUCWorkerProcess.exe) IIS(W3WP.EXE) Untrusted Code Proxy Process (SPUCWorkerProcessProxy.exe) Full Object Model Subset Object Model

  23. Sandbox Architecture FRONT END BACK END Host Service (SPUCHostService.exe) Execution Wrapper(Inside Application Pool) Worker Process (SPUCWorkerProcess.exe) IIS(W3WP.EXE) Untrusted Code Proxy Process (SPUCWorkerProcessProxy.exe) Full Object Model Subset Object Model Subset-Model Request

  24. Sandbox Architecture FRONT END BACK END Host Service (SPUCHostService.exe) Execution Wrapper(Inside Application Pool) Worker Process (SPUCWorkerProcess.exe) IIS(W3WP.EXE) Untrusted Code Proxy Process (SPUCWorkerProcessProxy.exe) Full Object Model Subset Object Model Full-Model Request

  25. Sandbox Architecture FRONT END BACK END Host Service (SPUCHostService.exe) Execution Wrapper(Inside Application Pool) Worker Process (SPUCWorkerProcess.exe) IIS(W3WP.EXE) • while(true) • { • //Do a Bad Bad Thing! • } Untrusted Code Proxy Process (SPUCWorkerProcessProxy.exe) Run for 30sec Full Object Model Subset Object Model Resource Wasting Call

  26. Running a Bad Solution demo

  27. Full-Trust Proxy Worker Process (SPUCWorkerProcess.exe) Proxy Process (SPUCWorkerProcessProxy.exe) Untrusted Code Fully Trusted Code SPProxyOperationsArgs SPProxyOperationsArgs SPUtility SPProxyOperation SecuredResource

  28. Summary • No-server-code components are simple but powerful • Developers can write server code for hosted environments with sandboxed solutions • Sandboxed solutions balance agility and stability • Sandboxed solutions are the future of SharePoint extensibility

  29. Related Content • PDC Talks • PR02 Overview of SharePoint 2010 Programmability • PR06 Developing Solutions with Business Connectivity Services in Microsoft SharePoint Server 2010 • PR03 Developer Patterns to Integrate Microsoft Silverlight 3.0 with Microsoft SharePoint 2010 • PR07 Developing Solutions for Microsoft SharePoint Server 2010 Using the Client Object Model • PR09 Document Assembly and Manipulation on Microsoft SharePoint Server 2010 Using Word Services and Open XML • PR12 It's All about the Services: Developing Custom Applications for Microsoft SharePoint Server 2010 Using Microsoft ASP.NET, WCF, and REST • More about SharePoint Online • http://www.microsoft.com/online/sharepoint-online.mspx

  30. YOUR FEEDBACK IS IMPORTANT TO US! Please fill out session evaluation forms online at MicrosoftPDC.com

  31. Learn More On Channel 9 • Expand your PDC experience through Channel 9 • Explore videos, hands-on labs, sample code and demos through the new Channel 9 training courses channel9.msdn.com/learn Built by Developers for Developers….

More Related