svspug leveraging saas using app model

33
Leveraging SaaS Applications using the SharePoint App Model Brian Prigge

Upload: brian-prigge

Post on 03-Aug-2015

78 views

Category:

Technology


0 download

Tags:

TRANSCRIPT

Page 1: SVSPUG Leveraging SaaS using App Model

Leveraging SaaS Applications using the SharePoint App ModelBrian Prigge

Page 2: SVSPUG Leveraging SaaS using App Model

About Brian

• SharePoint Architect @ RAMP (@rampinc)

• Blog: brianprigge.com• Twitter: @brprigge• LinkedIn:

http://www.linkedin.com/in/brianprigge• Email: [email protected]

Page 3: SVSPUG Leveraging SaaS using App Model

Agenda

• App Model Overview• App Design• Pedal to the Metal – Azure Deployment

App• Speed Bumps• Alternative Implementations

Page 4: SVSPUG Leveraging SaaS using App Model

App Model Overview

Page 5: SVSPUG Leveraging SaaS using App Model

SharePoint Love Triangle

App Model Entities

Host Web

Remote Web App Web

Page 6: SVSPUG Leveraging SaaS using App Model

App Types• SharePoint Hosted• Auto Hosted• Provider Hosted

Page 7: SVSPUG Leveraging SaaS using App Model

SharePoint Hosted Paradigm

Host Web App Web

Page 8: SVSPUG Leveraging SaaS using App Model

Provider/Auto Hosted ParadigmHost Web App Web

Remote Web

Page 9: SVSPUG Leveraging SaaS using App Model

App Design

Page 10: SVSPUG Leveraging SaaS using App Model

App Type

• SharePoint Hosted• Client-Side Only

• Auto-Hosted• Server-Side Code Available• Not available On-Premises

• Provider-Hosted• Server-Side Code Available• Slight Modifications to use On-Premises

Page 11: SVSPUG Leveraging SaaS using App Model

Storage

• Host Web• Limited Control• Multiple Instances

• App Web• Full Control within SharePoint• No Orphans

• Remote Web• Full Control• No Automatic Authorization• Not Searchable

Page 12: SVSPUG Leveraging SaaS using App Model

User Experience

• App Web• Limited Code Samples• Lots of UX pieces are already included• Some bugs and some “features” exist

• Remote Web• Complete control of UX

Page 13: SVSPUG Leveraging SaaS using App Model

App Permissions• Full Control• Disqualified from App Store

• Permission Scopes• Full control required for grantor

Page 14: SVSPUG Leveraging SaaS using App Model

Pedal to the Metal

Page 15: SVSPUG Leveraging SaaS using App Model

Desired Design• Provider Hosted App• Storage – App Web (partially)• UX – App Web• No Special Permissions

Page 16: SVSPUG Leveraging SaaS using App Model

Provider/Auto Hosted ParadigmHost Web App Web

Remote Web

Page 17: SVSPUG Leveraging SaaS using App Model

Context Management• Cross Domain• Cookies vs. Sessions• Pseudo-expired Cookie

Page 18: SVSPUG Leveraging SaaS using App Model

Context Demo

Page 19: SVSPUG Leveraging SaaS using App Model

Remote Web Service Layer• Context Management Problem• Same Origin Policy• Context Token Request• IFrame Custom Proxy• Reusable Instantiation

Page 20: SVSPUG Leveraging SaaS using App Model

Custom Proxy Demo

Page 21: SVSPUG Leveraging SaaS using App Model

Asynchronous Processing

Page 22: SVSPUG Leveraging SaaS using App Model

Pushing Data Down• No Anonymous Pages• Anonymous = Unprotected• Alternative Authentication• DSA Signing• Service Bus Queue

Page 23: SVSPUG Leveraging SaaS using App Model

Speed Bumps

Page 24: SVSPUG Leveraging SaaS using App Model

Display Templates• No More XSLT!• Entirely HTML and JavaScript• Awkward Conversion

Page 25: SVSPUG Leveraging SaaS using App Model

Display Templates – Result Type

Page 26: SVSPUG Leveraging SaaS using App Model

Display Templates – Result Type

Page 27: SVSPUG Leveraging SaaS using App Model

Display Templates• Debug when deployed• Valid XML Schema Required for Conversion• Use Web Debugger to debug• Be careful on property changes

Page 28: SVSPUG Leveraging SaaS using App Model

Web Part Management• Context Management• Edit Mode• Hovering on Ribbon Styles• Saving Custom Properties

Page 29: SVSPUG Leveraging SaaS using App Model

Alternative Implementations

Page 30: SVSPUG Leveraging SaaS using App Model

SaaS Backwards• Utilize On-Prem data in Office 365• Provider Hosted Only• Remotely Accessible Web Servers

Page 31: SVSPUG Leveraging SaaS using App Model

Standard Provider Hosted App

Host Web

Remote Web App Web

Page 32: SVSPUG Leveraging SaaS using App Model

SaaS Backwards Provider Hosted App

Host Web

Remote Web App Web

Fi r e

wa

l l

Page 33: SVSPUG Leveraging SaaS using App Model

Questions?