Automating site provisioning - SharePoint Connections 2013

1,857 views

Published on

For all its rich functionality, SharePoint does little to help provision and organize its sites and site collections. In this session, you'll learn how to customize SharePoint to automate site provisioning for greater consistency and governance. You'll also learn how to create a directory of sites for easy navigation. The speakers will demonstrate multiple approaches from real customer engagements, including a SharePoint 2013 app, a workflow-based solution for flexible approvals, and a full-featured, multi-farm solution that can scale for a large enterprise. Come and see how a little custom code can go a long way to organize and manage SharePoint sites.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,857
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
34
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Automating site provisioning - SharePoint Connections 2013

  1. 1. Bob German Principal Architect BlueMetal Architects Automating Site Provisioning for SharePoint 2010 and SharePoint 2013 @Bob1German
  2. 2. www.devconnections.com AUTOMATING SITE PROVISIONING ABOUT THE SPEAKER Bob German  Principal Architect at BlueMetal Architects  Developer and architect on the SharePoint platform since it was called “Site Server 3.0”  Co-author of SharePoint 2010 Development with Silverlight for Addison-Wesley  http://blogs.msdn.com/BobGerman BlueMetal Architects  We are experts at building solutions that exactly meet the needs of our customers by apply the right people, processes and platforms.  Our focus is on modernizing applications through expertise in Creative, Social, Development and Data.  We have offices in Boston, New York, and Chicago. @Bob1German @Bob1German
  3. 3. www.devconnections.com AUTOMATING SITE PROVISIONING 3
  4. 4. www.devconnections.com AUTOMATING SITE PROVISIONING THE CHALLENGE How do you empower end-users to create SharePoint sites while making sites consistent, organized, and discoverable? Some of us still miss the site directory, which was removed in SharePoint 2010… @Bob1German
  5. 5. www.devconnections.com AUTOMATING SITE PROVISIONING AGENDA  Sites and Site Collections  “Out of the Box” Site Creation  Three models of success Simple: Client side More Elaborate: Reusable workflow Full Production: Farm solution Key to Demos 1 2 3 1Street Performer 2Lounge Act 3Full Production @Bob1German
  6. 6. www.devconnections.com AUTOMATING SITE PROVISIONING SHAREPOINT CONTAINERS Farm Web Application Content Database Top-level Site List/Library Item Item Top-level Site List/Library Item Site List/Library Item Site List/Library Item Content Database Top-level Site List/Library Item Web Application Content Database Top-level Site List/Library Item Item List/Library Item Item Site Site Collection Site Collection Site Collectio nSite Collectio n @Bob1German
  7. 7. www.devconnections.com AUTOMATING SITE PROVISIONING Farm Web Application Content Database Top-level Site List/Library Item Item Top-level Site List/Library Item Site List/Library Item Site List/Library Item Content Database Top-level Site List/Library Item Web Application Content Database Top-level Site List/Library Item Item List/Library Item Item Site Site Collection Site Collection • Storage Management • Independent Administration • Connection to IIS and server URL(s) • Authentication and high- level policy settings • Shared Service Connections • A set of servers in one location • A common configuration database @Bob1German
  8. 8. www.devconnections.com AUTOMATING SITE PROVISIONING SITE COLLECTIONS  SharePoint Groups  Root of permission inheritance  Storage and Sandbox Quotas  Navigation  Rollups with SPQuery or Content Query Web Part  Content Types and Site Columns*  Lookup lists  Galleries (Web parts, Solutions, Master Pages, etc.) Many things are scoped at the Site Collection Farm Web Application Site Collection Top Level Site Site Site Site Collection Top Level Site Site Site Web Application Site Collection Top Level Site Site Collection Top Level Site Shared Service Provider Content DB 1 Content DB 2 Content DB 3 A site collection cannot span content DB’s, but A content DB can have many site collections @Bob1German
  9. 9. www.devconnections.com AUTOMATING SITE PROVISIONING SHAREPOINT SITE MODEL Intranet Portal Functional Portals Groups & Teams Projects & Workspaces My Sites Publishing • Employee Communications • Functional Portals (HR, Finance, etc.) • Group and Team Portals • Information Repositories • Business Intelligence Collaboration • Team / project workspaces • Social Networking • Personal publishing Shared Services • Search • Metadata • User Profile • BCS @Bob1German
  10. 10. www.devconnections.com AUTOMATING SITE PROVISIONING SHAREPOINT SITE MODEL Intranet Portal Functional Portals Groups & Teams Projects & Workspaces My Sites Shared Services • Search • Metadata • User Profile • BCS • Created by IT • Content managed by business • Self-service Customized Standardized @Bob1German
  11. 11. www.devconnections.com AUTOMATING SITE PROVISIONING A PLACE FOR EVERYTHING Shared Services • Search • Metadata • User Profile • BCS Portal PortalPortalPortalPortal DashboardDashboard App App App Repository RepositoryRepository Structured Collaboration Structured Collaboration Structured Collaboration Ad-Hoc Collaboration Ad-Hoc Collaboration Ad-Hoc Collaboration My Site My Site My SiteMy Site My Site = Site Collection AppApp App Customized Standardized • Created by IT • Content managed by business • Self-service @Bob1German
  12. 12. www.devconnections.com AUTOMATING SITE PROVISIONING Out of the BoxSelf Service Site Provisioning • In SharePoint 2010  • In SharePoint 2013  demo 0Starting Point @Bob1German
  13. 13. www.devconnections.com AUTOMATING SITE PROVISIONING SCENARIO 1: SIMPLE SITE PROVISIONING • Creates child sites in a site collection • Runs in Javascript on the browser - Access is via the Client Object Model - Can run in a Content Editor Web Part in SharePoint 2010 or 2013 (user must have permission to create) - Can run as a SharePoint 2013 app (app must have permission to create) • Lists sites directly – no separate directory @Bob1German
  14. 14. www.devconnections.com AUTOMATING SITE PROVISIONING Simple: Client Side Client-side site listing and creation demo 1Street Performer @Bob1German
  15. 15. www.devconnections.com AUTOMATING SITE PROVISIONING SCENARIO 2: SHAREPOINT 2013 WORKFLOW • Site is created by a SharePoint 2013 Workflow (Runs outside of SharePoint in Workflow Manager) • In SharePoint 2010, this required a Sandboxed Solution (Reliability challenges on Office 365!) • Workflow creates a site using RESTful services (No code but non-trivial setup) • Workflow runs as under app permissions (App Step replaces Impersonation Step in SP2013) @Bob1German
  16. 16. www.devconnections.com AUTOMATING SITE PROVISIONING Medium: Site Creation Workflow Workflow calls RESTful service demo 2Lounge Act @Bob1German
  17. 17. www.devconnections.com AUTOMATING SITE PROVISIONING SITE DEFINITIONS AND WEB TEMPLATES  Site Definitions  SharePoint ships with several site definitions – team site, blank site, etc.  A developer can build a site definition, but it’s not a good idea  Site Templates  Earlier versions of SharePoint supported site templates (.stp files) when you clicked “Save as a Template”  Now you get a declarative web template (.wsp file)  Web Templates  Contain the differences between a site definition and the site you want  End users can get them with “Save as a Template” (sometimes)  Developers can build them from scratch but it’s painful  WARNINGS:  Do not fake out “Save as a Template” for publishing sites … it doesn’t work well  Beware of the “Import .wsp file” option in Visual Studio to build web templates
  18. 18. www.devconnections.com AUTOMATING SITE PROVISIONING Creating a Site Collection from a Custom Web Template demo @Bob1German
  19. 19. www.devconnections.com AUTOMATING SITE PROVISIONING SCENARIO 3: ADVANCED SCENARIO • Create site collections, not just child sites • Use web templates to provide tailored and consistent sites • Maintain metadata and directories for multiple site types • Work robustly across farms @Bob1German
  20. 20. www.devconnections.com AUTOMATING SITE PROVISIONING APPS FARM Site Directory Site Collection Metadata Site Collection Metadata SITE COLLECTION: REQUEST AND CREATION Request List Request List Request List WorkflowWorkflowWorkflow COLLAB FARM Timer Job Timer Job Timer Job Site Collection Metadata Web app 1: Custom Apps Web app 2: Community Sites Web app 3: Project Sites
  21. 21. www.devconnections.com AUTOMATING SITE PROVISIONING Full Featured: Farm Solution Multi-farm solution Uses any approval workflow Maintains metadata and directory Could create sites or site collections with this design demo 3Full Production @Bob1German
  22. 22. www.devconnections.com AUTOMATING SITE PROVISIONING SUMMARY  Automate site creation to - Balance user empowerment with governance - Provision sites consistently - Maintain a directory and site metadata  Choose wisely between sites and site collections  In SharePoint Apps - Elevate privileges with workflow “App Steps”  In SharePoint 2013 apps - Elevate privileges via app identities @Bob1German
  23. 23. www.devconnections.com AUTOMATING SITE PROVISIONING THANK YOU! @Bob1German

×