Introducing the new SharePoint 2013 app model

  • 3,643 views
Uploaded on

Jeremy will introduce the new App Model and compare it to the existing app models available in SharePoint. Attendees will leave this session with a better understanding of: …

Jeremy will introduce the new App Model and compare it to the existing app models available in SharePoint. Attendees will leave this session with a better understanding of:

• How Windows Azure can be leveraged in SharePoint apps, showcasing the oAuth and auto provisioning features

• An overview of the new SharePoint App model to bring your products to the Marketplace

• An comparison between the new App Model and existing Solutions Model in SharePoint

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
3,643
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
165
Comments
2
Likes
6

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Getting started with SharePoint 2010 Online developmentJeremy Thake, SharePoint MVP, will introduce SharePoint 2010 Online as an application development platform inside Office 365. The session will explain how to get started with the different approaches from web UI configurations, to SharePoint Designer 2010 customizations to full blown Visual Studio development with Sandbox Solutions. Jeremy will introduce the concepts of how Application Lifecycle Management can be introduced to this along with migrating existing applications across from on-premise. From this session you should walk away with:Using SharePoint Online 2010 as an Application Development PlatformGetting Started with SharePoint Online 2010 developmentApplication Lifecycle Management with SharePoint Online 2010 in Office 365Migrating SharePoint 2010 Apps to SharePoint Online 2010 
  • OAuthallows users to authorize SharePoint to provide access tokens to apps that can be used to retrieve data from SharePointEach token can be used to access:A specific siteA specific resource (for example, documents from a folder)For a defined duration (for example, 30 minutes)No need to share username and password
  • An app uses permission requests to specify the permissions that it needsThe requests specify both the rights and scope which are neededScopes indicate where in the SharePoint hierarchy a permission request applies. SharePoint supports four different content scopes:SPSite—site collectionSPWeb—websiteSPList—listTenancy—the tenancy scope is at http://<sharepointserver>/<content>/<tenant>/There are also scopes for things like performing search queries, accessing taxonomy data, user profiles, etc.
  • Permission rights indicate what an app is permitted to do within a scope. SharePoint supports four rights levels for content (there are others for things like search, term store, etc.):Read-OnlyWriteManageFull ControlUnlike SharePoint user roles, these rights levels are not customizableIf an app is granted permission to a scope, the permission applies to all children of the scopeIf an app is granted perms to an SPWeb, the app is also granted perms to each SPList in the SPWeb, and all SPListItems in each list, but NOT each subweb

Transcript

  • 1. The SharePoint 2013 App Model:How it Impacts and Expands AzureDevelopment OpportunitiesJeremy ThakeChief Architect, AvePoint Inc.
  • 2. Jeremy Thake © 2012 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 3. Agenda• App Model• OAuth• Marketplace• Getting started• NAPA
  • 4. SP Apps – From pieces to “ready to usesolutions” animated
  • 5. Evolution of customizations in SharePoint _api_vti_bin _vti_bin Declar. App & Workflow Events CSOM _api
  • 6. Customization packaging and deploymentoptions Farm Sandbox SP Apps• Full trust • Declarative • New Apps model solutions elements • Deployed from• Customizations to • Partially trusted corporate catalog file system of code service still or office market servers included for place• Classic model limited server • Manage from 2007 side support permission and • Resource licenses monitored specifically • Preferred option
  • 7. Online vs. On-premises Farm Sandbox SP Apps• Server-side OM • Limited Server- • Client-side OM• Client-side OM Side OM only• No marketplace • Client-side OM • Marketplace• On-premises only • No marketplace • Online only• No OAuth • On-premises and • OAuth• UI integration Online • No UI integration • No OAuth • UI integration
  • 8. SharePoint Hosted App – what is it?• Sub web of site collection• ―One app – one Web (SPWeb)‖ – Host header SPWeb – each app has its own http address• Apps can deploy only web scoped features – Site collection resources deployed using classic solution options• None of app deployed features are visible outside of app• End users cannot manipulate app web to avoid breaking of the apps using browser or SharePoint Designer• Apps can not talk to each other
  • 9. Architecture of Apps SharePoint SharePoint Azure Web & Worker Roles Web application App 2 App 2 Site Collection Web Worker Root Site App 1 App 2 App 3 IIS Web Server App 3 Web Sub Site App 3 ©© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent ofof AvePoint, Inc. without the prior written consent AvePoint, Inc.
  • 10. SP App Design - A Choice of Three Approaches Developer-Hosted AppCloud-based “Bring your own server hosting SharePoint Your HostedApps infrastructure” Web Site Developers will need to isolateGet remote tenantsevents fromSharePoint Azure Auto- AzureUse CSOM/REST Provisioned App SharePoint (from+ Windows Azure + SQL AzureOAuth to work provisioned invisibly as apps Web WebDeploy,with SP are installed DacPac) SharePoint-hosted App Parent Provision an isolated sub web on a parent web Web • Reuse web elements App Web (lists, files, out-of-box web (from WSP) parts) • No server code allowed; use client JavaScript for logic, UX animated
  • 11. App Project AnatomyPAGES SCRIPTSHome.aspx App.js Main page of the app Web Part Page Template script file Script and Style Elements.xml referencesElements.xml Installs script file to Installs home page to isolated app site the isolated app site STYLES APP MANIFEST App.css AppManifest.xml Template style ProductID, Version, Title sheet Tile and StartPage Urls Elements.xml AppEvent Urls: Installed, Installs css to Uninstalling, isolated app site Upgraded App Permission requests
  • 12. Example use cases for SP Apps• Services and applications hosted in Azure to provide extended services for portal users• On-premises LOB systems hosted in other web applications – Examples – HR systems, vacation booking, travel expenses – Easy integration of existing applications to SharePoint without requirement to host them there• Integration of other cloud based systems to on- premises or hosted SharePoint environments without requirements to install customizations
  • 13. Scenario - B2B sales models –Case Office Supplies• B2B app for Intranet’s of larget enterprises• Exposes simple UI for ordering Office Supplies• Hosted in cloud – orders processed using Azure service bus from numerious customers animated
  • 14. Versioning SharePoint SharePoint Azure Web & Worker Roles Web application App 2 App 2 Site Collection Web Worker Root Site V2.0 V1.1 V1.0 V2.0 V1.1 V1.0 App 1 App 2 App 3 V1.0 V1.0 V1.0 IIS Web Server App 3 App 3 Web Web V1.0 V1.1 Sub Site App 3 V1.0 V1.1 ©© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent ofof AvePoint, Inc. without the prior written consent AvePoint, Inc.
  • 15. SP App upgrade process animated
  • 16. OAuth
  • 17. App Trust © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 18. OAuth Token Example SharePoint SharePoint Azure Web & Worker Roles Web application App 2 App 2 Site Collection Web Worker Root Site App 1 App 2 App 3 IIS Web Server App 3 Web Site Collection Root Site App 3 © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 19. App Scopes• SPSite—site collection• SPWeb—website• SPList—list• Tenancy—the tenancy scope is at http://<sharepointserver>/<content>/<tenant>/• performing search queries, accessing taxonomy data, user profiles, etc.
  • 20. App Rights• Rights: – Read-Only – Write – Manage – Full Control• Not customizable!• If an app is granted permission to a scope – the permission applies to all children of the scope
  • 21. Setting App Rights• App rights are set when: – An app is installed by an SPWeb administrator – An app is explicitly granted permission by a tenant administrator or SPWeb administrator – An end user gives consent – An app is removed• Once provisioned, the rights for an app cannot change – they can only be revoked in whole – This ensures the app will not have to account for missing rights, i.e. become broken after installation
  • 22. Marketplace
  • 23. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 24. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 25. Manage license © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 26. License Management © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 27. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 28. UI integration © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 29. Apps and Market place process 7 2 3 SP Platform App Submis sion 4 61 5 animated
  • 30. Apps Competition http://blogs.msdn.com/b/officeapps/archive/2012/08/07/game-on-win-big-prizes-in-the-app-contest.aspx © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 31. Concerns• Submission process approves SharePoint manifest – No control over external changes – Once App granted permissions • App can do what it likes in that scope• Trust element of vendor – Will hurt small unknown companies – Different to phone market – corporate data © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 32. Getting started
  • 33. Local Development environment• Has to be on Windows Server• 10Gb RAM server (SharePoint, SQL, VS2012)• Don’t develop in Production! – Debug Provider-Hosted• VM’s © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 34. Cloud-hosted Apps dev environment Development Machine SharePoint Azure Web & Worker Roles Web application App 2 App 2 Site Collection Web Worker Root Site App 1 App 2 App 3 IIS Web Server App 3 Web SQL 2012 Visual Studio 2012 © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 35. Remote Development with NAPA
  • 36. Remote Development environment• ―NAPA‖• Sign up for Office 365 Developer Site• SharePoint-Hosted Apps only – Client-Side only © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 37. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 38. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 39. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 40. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 41. Debugging NAPA from Visual Studio © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 42. © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 43. Wrapping up
  • 44. Call to action!• Sign up for Office 365 2013 Preview http://www.microsoft.com/office/preview/en• Get in the competition…because I can’t ;-)• Bring your existing Apps ―into SharePoint‖ © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 45. Q&AJeremy Thakewww.NothingButSharePoint.comwww.AvePoint.comjeremy.thake@avepoint.com@jthakewww.linkedin.com/in/jeremythake
  • 46. References
  • 47. http://sharepoint.microsoft.com/en-us/preview/sharepoint.aspx © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 48. http://msdn.microsoft.com/en-us/library/jj162979(v=office.15).aspx © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 49. http://technet.microsoft.com/en-us/sharepoint/fp142366.aspx © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 50. http://delicious.com/jthake/%23sharepoint2013 © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 51. https://www.nothingbutsharepoint.com © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.
  • 52. https://www.yammer.com/spyam © 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.