introducing the new sharepoint 2013 app model
DESCRIPTION
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 SharePointTRANSCRIPT
![Page 1: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/1.jpg)
The SharePoint 2013 App Model: How it Impacts and Expands Azure Development Opportunities
Jeremy ThakeChief Architect, AvePoint Inc.
![Page 2: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/2.jpg)
© 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.
SpeakerAuthor
AvePoint Labs
Chief ArchitectText/Icon/Pic
Jeremy Thake
![Page 3: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/3.jpg)
Agenda
• App Model• OAuth• Marketplace• Getting started• NAPA
![Page 4: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/4.jpg)
SP Apps – From pieces to “ready to use solutions”
• Web Parts• Lists• Content types• Controls• …
• Packaged solutions• Ready to use apps• Reusable as such
animated
![Page 5: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/5.jpg)
SharePoint2007
SharePoint2010
SharePoint W15
Services (IIS, Apache, Other, …)
Services (Azure, IIS, Apache, Other…) Services
(Azure, IIS, Apache,Other, etc…)
SP2007 SP2010 SP2013
Declar. App & Workflow Events
Custom Code
Custom Code
CSOM
_vti_bin_vti_bin
_api
_api
Evolution of customizations in SharePoint
![Page 6: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/6.jpg)
Customization packaging and deployment options
Farm
• Full trust solutions
• Customizations to file system of servers
• Classic model from 2007
Sandbox
• Declarative elements
• Partially trusted code service still included for limited server side support
• Resource monitored
SP Apps
• New Apps model
• Deployed from corporate catalog or office market place
• Manage permission and licenses specifically
• Preferred option
![Page 7: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/7.jpg)
Online vs. On-premises
Farm
• Server-side OM• Client-side OM• No marketplace• On-premises
only• No OAuth• UI integration
Sandbox
• Limited Server-Side OM
• Client-side OM• No marketplace• On-premises
and Online• No OAuth• UI integration
SP Apps
• Client-side OM only
• Marketplace• Online only• OAuth• No UI
integration
![Page 8: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/8.jpg)
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
![Page 9: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/9.jpg)
© 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.
Architecture of Apps
© 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.
SharePoint
SharePoint Azure Web & Worker Roles
Web application
IIS Web Server
Site CollectionRoot Site
App 1 App 2 App 3
App 2Web
App 2Worker
App 3Web
Sub Site
App 3
![Page 10: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/10.jpg)
SP App Design - A Choice of Three Approaches
App Web (from WSP)
Parent Web
SharePoint-hosted AppProvision an isolated sub web on a parent web• Reuse web elements
(lists, files, out-of-box web parts)
• No server code allowed; use client JavaScript for logic, UX
Azure Auto-Provisioned AppWindows Azure + SQL Azure provisioned invisibly as apps are installed
Azure (from
WebDeploy,
DacPac)
SharePoint Web
Get remote events from SharePoint Use CSOM/REST + OAuth to work with SP
Cloud-based Apps
Developer-Hosted App“Bring your own server hosting infrastructure”Developers will need to isolate tenants
SharePoint
Web
Your Hosted
Site
animated
![Page 11: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/11.jpg)
App Project Anatomy
PAGES
Home.aspxMain page of the appWeb Part PageScript and Style references
Elements.xmlInstalls home page to the isolated app site
SCRIPTSApp.js
Template script fileElements.xml
Installs script file to isolated app site
STYLESApp.css
Template style sheet
Elements.xmlInstalls css to isolated app site
APP MANIFESTAppManifest.xml
ProductID, Version, TitleTile and StartPage UrlsAppEvent Urls: Installed, Uninstalling, UpgradedApp Permission requests
![Page 12: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/12.jpg)
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
![Page 13: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/13.jpg)
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
Tracking
Drivers
Service Bus
animated
![Page 14: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/14.jpg)
© 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.
Versioning
© 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.
© 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.
SharePoint
SharePoint Azure Web & Worker Roles
Web application
IIS Web Server
Site CollectionRoot Site
App 1V1.0
App 2V1.0
App 3V1.0
App 2WebV1.0
App 2Worker
V1.0
App 3WebV1.0
Sub Site
App 3V1.0
App 2WebV1.1
App 2Worker
V1.1
App 2WebV2.0
App 2Worker
V2.0
App 3V1.1
App 3WebV1.1
![Page 15: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/15.jpg)
Marketpla
ce
SP App upgrade process
animated
New Version Available
1.0.0.01.0.1.0
![Page 16: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/16.jpg)
OAuth
![Page 17: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/17.jpg)
© 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.
App Trust
![Page 18: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/18.jpg)
© 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.
OAuth Token Example
SharePoint
SharePoint Azure Web & Worker Roles
Web application
IIS Web Server
Site CollectionRoot Site
App 1 App 2 App 3
App 2Web
App 2Worker
App 3Web
Site CollectionRoot Site
App 3
![Page 19: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/19.jpg)
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.
![Page 20: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/20.jpg)
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
![Page 21: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/21.jpg)
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
![Page 22: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/22.jpg)
Marketplace
![Page 23: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/23.jpg)
© 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.
![Page 24: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/24.jpg)
© 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.
![Page 25: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/25.jpg)
© 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.
Manage license
![Page 26: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/26.jpg)
© 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.
License Management
![Page 27: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/27.jpg)
© 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.
![Page 28: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/28.jpg)
© 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.
UI integration
![Page 29: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/29.jpg)
Apps and Market place process
Marketpla
ceApp Submission
SP Platform
Sto
refro
nt
1
2 3
4 6
animated
Office AppHub Office.com
5
7
![Page 30: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/30.jpg)
© 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.
Apps Competition
http://blogs.msdn.com/b/officeapps/archive/2012/08/07/game-on-win-big-prizes-in-the-app-contest.aspx
![Page 31: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/31.jpg)
© 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.
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
![Page 32: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/32.jpg)
Getting started
![Page 33: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/33.jpg)
© 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.
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
![Page 34: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/34.jpg)
© 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.
Development Machine
Cloud-hosted Apps dev environment
SharePoint Azure Web & Worker Roles
Web application
Visual Studio 2012
SQL 2012
IIS Web Server
Site CollectionRoot Site
App 1 App 2 App 3
App 2Web
App 2Worker
App 3Web
![Page 35: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/35.jpg)
Remote Development with NAPA
![Page 36: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/36.jpg)
© 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.
Remote Development environment
• “NAPA”• Sign up for Office 365 Developer Site• SharePoint-Hosted Apps only– Client-Side only
![Page 37: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/37.jpg)
© 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.
![Page 38: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/38.jpg)
© 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.
![Page 39: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/39.jpg)
© 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.
![Page 40: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/40.jpg)
© 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.
![Page 41: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/41.jpg)
© 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.
Debugging NAPA from Visual Studio
![Page 42: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/42.jpg)
© 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.
![Page 43: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/43.jpg)
Wrapping up
![Page 44: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/44.jpg)
© 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.
Call to action!
• Sign up for Office 365 2013 Previewhttp://www.microsoft.com/office/preview/en
• Get in the competition…because I can’t ;-)• Bring your existing Apps “into SharePoint”
![Page 45: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/45.jpg)
Q&AJeremy Thakewww.NothingButSharePoint.comwww.AvePoint.com
[email protected]@jthakewww.linkedin.com/in/jeremythake
![Page 46: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/46.jpg)
References
![Page 47: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/47.jpg)
© 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.
http://sharepoint.microsoft.com/en-us/preview/sharepoint.aspx
![Page 48: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/48.jpg)
© 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.
http://msdn.microsoft.com/en-us/library/jj162979(v=office.15).aspx
![Page 49: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/49.jpg)
© 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.
http://technet.microsoft.com/en-us/sharepoint/fp142366.aspx
![Page 50: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/50.jpg)
© 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.
http://delicious.com/jthake/%23sharepoint2013
![Page 51: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/51.jpg)
© 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.
https://www.nothingbutsharepoint.com
![Page 52: Introducing the new SharePoint 2013 app model](https://reader037.vdocuments.mx/reader037/viewer/2022110118/554bdd1eb4c905ac708b54f8/html5/thumbnails/52.jpg)
© 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.
https://www.yammer.com/spyam