svspug leveraging saas using app model
TRANSCRIPT
Leveraging SaaS Applications using the SharePoint App ModelBrian Prigge
About Brian
• SharePoint Architect @ RAMP (@rampinc)
• Blog: brianprigge.com• Twitter: @brprigge• LinkedIn:
http://www.linkedin.com/in/brianprigge• Email: [email protected]
Agenda
• App Model Overview• App Design• Pedal to the Metal – Azure Deployment
App• Speed Bumps• Alternative Implementations
App Model Overview
SharePoint Love Triangle
App Model Entities
Host Web
Remote Web App Web
App Types• SharePoint Hosted• Auto Hosted• Provider Hosted
SharePoint Hosted Paradigm
Host Web App Web
Provider/Auto Hosted ParadigmHost Web App Web
Remote Web
App Design
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
Storage
• Host Web• Limited Control• Multiple Instances
• App Web• Full Control within SharePoint• No Orphans
• Remote Web• Full Control• No Automatic Authorization• Not Searchable
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
App Permissions• Full Control• Disqualified from App Store
• Permission Scopes• Full control required for grantor
Pedal to the Metal
Desired Design• Provider Hosted App• Storage – App Web (partially)• UX – App Web• No Special Permissions
Provider/Auto Hosted ParadigmHost Web App Web
Remote Web
Context Management• Cross Domain• Cookies vs. Sessions• Pseudo-expired Cookie
Context Demo
Remote Web Service Layer• Context Management Problem• Same Origin Policy• Context Token Request• IFrame Custom Proxy• Reusable Instantiation
Custom Proxy Demo
Asynchronous Processing
Pushing Data Down• No Anonymous Pages• Anonymous = Unprotected• Alternative Authentication• DSA Signing• Service Bus Queue
Speed Bumps
Display Templates• No More XSLT!• Entirely HTML and JavaScript• Awkward Conversion
Display Templates – Result Type
Display Templates – Result Type
Display Templates• Debug when deployed• Valid XML Schema Required for Conversion• Use Web Debugger to debug• Be careful on property changes
Web Part Management• Context Management• Edit Mode• Hovering on Ribbon Styles• Saving Custom Properties
Alternative Implementations
SaaS Backwards• Utilize On-Prem data in Office 365• Provider Hosted Only• Remotely Accessible Web Servers
Standard Provider Hosted App
Host Web
Remote Web App Web
SaaS Backwards Provider Hosted App
Host Web
Remote Web App Web
Fi r e
wa
l l
Questions?