Top Banner
Pushing the Boundaries Real-World SharePoint Add-In Development Eric Shupps SharePoint Server MVP
30

Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Aug 08, 2015

Download

Technology

Eric Shupps
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Pushing the Boundaries Real-World SharePoint Add-In DevelopmentEric ShuppsSharePoint Server MVP

Page 2: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

About Me

@eshupps sharepointcowboywww.sharepointcowboy.-com

slideshare.net/eshupps linkedin.com/in/eshupps

Eric ShuppsSharePoint Server MVP

Page 3: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

• Models• API’s• Security• Customizations• Deployment

Agenda

Page 4: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Models

Page 5: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

SharePoint Hosted

What Works What Doesn’t

JSOM & REST

Auto Deployment

Inherited Context

Declarative Artifacts

REST

CSOM

Compiled Code

Event Receivers

Iterative Deployment

Forms Authentication

Page 6: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Provider Hosted

What Works What Doesn’t

CSOM, REST & O365 API’sIterative Deployment

Forms Authentication

Compiled Code

Event Receivers

JSOM

Inherited Context

Auto Deployment

RequestDigest

Client Secret Expiration

Declarative Artifacts

Page 7: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Mobile

What Works What Doesn’t

REST & O365 API’s

IOS & Android

Native Code

Azure AD SSO

JSOM

Inherited Context

Declarative Artifacts

Deep Integration

Page 8: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

API’s

Page 9: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

CSOM

Managed

Typed

Coverage

Samples

Server Side

Synchronous

Authorization

.NET Only

Compiled

The Good

The Bad

The Ugly

Page 10: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

JSOM

Authorization

Context

Client-side

Asynchronous

Coverage

Samples

Dependencies

Cross Domain

SP Hosted Only

Debugging

The Good

The Bad

The Ugly

Page 11: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

REST

Cross Platform

Client-side

ODATA

Asynchronous

Authorization

Samples

Coverage

Cross Domain

Syntax

Performance

Throttling

The Good

The Bad

The Ugly

Page 12: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Office 365

Client-side

Cross Platform

Unification

Asynchronous

O365 Only

Samples

Authorization

Cross Domain

Coverage

Performance

Throttling

The Good

The Bad

The Ugly

Page 13: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

DEMOThrottling Management

Page 14: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Security

Page 15: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

PermissionsAuthorizationAuthentication

On-Premise

NTLM

Forms

SSO

High Trust

Low Trust

Anonymous

User

App

Groups

Page 16: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

PermissionsAuthorizationAuthentication

Office 365

Azure AD

NTLM

SSO

Low Trust

High Trust

Anonymous

User

App

Groups

Page 17: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

PermissionsAuthorizationAuthentication

Azure

Azure AD

SSO

NTLM

Low Trust

High Trust

Anonymous

User

App

Groups

Page 18: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

DEMOAssigning App Permissions in Azure

Page 19: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Customizations

Page 20: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

App Web

• Not primary user context

• Declarative artifacts or code

• Iterative deployments destroy content

• Only provisioned via SPHA or PHA with declarative artifacts

Host Web

• Code only – no declarative artifacts

• Requires Cross Domain calls

• Injection remnants difficult to remove

Scopes

Page 21: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

• On-Premise• Modify and manipulate – do not

replace

Master Pages

•PHA: External (CDN)•SPHA: External or App Web

Dependencies

• On-Premise: Declarative or Programmatic

• Online: ProgrammaticAssets

•Do not rely upon remote event receivers•Beware the dangers of injection

Retraction

Branding

Page 22: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

DEMOJavaScript Injection Issues

Page 23: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Data Sources

• Lists• Managed

Metadata• Search• BCS• External

Components

• Master Pages• Client Web

Parts• Scripts

Navigation

Page 24: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Sites

What Works What Doesn’t

Programmatic ProvisioningCSOM, JSOM & REST

App Deployment

Core Templates

Site/Web Templates

Stapling

STP Files

Sandbox Solutions

Features

App Authorization

Page 25: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

DEMOSite Provisioning

Page 26: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Deployment

Page 27: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

On-Premise

• Apps• SSL• DNS• [PHA] Server to Server (S2S) High Trust or Hybrid Low

Trust

Configuration

• [SHA] None• [PHA] Servers, Networking, Authentication, Admin Access

Resources

•Corporate Catalog•Developer Site•Store

Distribution

Page 28: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Office 365

• Apps

Configuration

• [SHA] None• [PHA] Servers, Networking, Authentication, Admin

Access

Resources

• Corporate Catalog• Developer Site• Store

Distribution

Page 29: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

Azure

• AD Apps• SSL• DNS• SSO• Permissions

Configuration

•Servers, Networking, Authentication, Admin Access•Azure AD Premium*

Resources

• Admin assignment

Distribution

Page 30: Pushing the Boundaries - A Deep-Dive into Real-World SharePoint Add-In and App Development.pptx

DEMOConfiguring S2S On-Premise