the sharepoint 2013 app model martin loitzl 19 12 2012 n.
Download
Skip this Video
Download Presentation
WELCOME

Loading in 2 Seconds...

play fullscreen
1 / 34

WELCOME - PowerPoint PPT Presentation


  • 175 Views
  • Uploaded on

The SharePoint 2013 App Model Martin Loitzl 19.12.2012. WELCOME. Introduction. Martin Loitzl 3.5 years in SharePoint Development 1 year @ Trivadis AG > 15 years Web Development Studied Information Systems @ TU Graz, Austria MCTS, MCPD, MCT for SharePoint 2010. Agenda.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'WELCOME' - julian-best


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
the sharepoint 2013 app model martin loitzl 19 12 2012
The SharePoint 2013

App Model

Martin Loitzl

19.12.2012

WELCOME

SharePoint 2013 App Model

introduction
Introduction
  • Martin Loitzl
  • 3.5 years in SharePoint Development
  • 1 year @ Trivadis AG
  • > 15 years Web Development
  • Studied Information Systems @ TU Graz, Austria
  • MCTS, MCPD, MCT for SharePoint 2010

SharePoint 2013 App Model

agenda
Agenda

Introduction

A look back – Why a new App Model?

Where do Apps run?

The Shape of Apps

The ApplicationProgramming Interface (API)

Authentication andAuthorization

Wrap-up

SharePoint 2013 App Model

what cool and new in sharepoint 2013
Whatcool andnew in SharePoint 2013?
  • Yammer Integration (Corporate SocialWeb)
  • 1 unified Search (FAST everywhere)
  • Branding Designer (canbeusedby Designers)
  • New Workflow Engine (Windows AzureWorkflows)
  • SkyDrivePro
  • ... andmanymore

SharePoint 2013 App Model

the new sharepoint 2013 app model
The new SharePoint 2013 App Model

Common Model

Common approach to development across client and server embracing web technologies including HTML5, JavaScript, OpenData and OpenAuth2 – Service Orientation

Cross-Device, Online & On-Prem

Apps run across devices with cloud deployment options for both SharePoint and Office.

In-Product Marketplace

New opportunities to monetize apps through an in- product marketplace.

SharePoint 2013 App Model

agenda1
Agenda

Introduction

A look back – Why a new App Model?

Where do Apps run?

The Shape of Apps

The ApplicationProgramming Interface (API)

Authentication andAuthorization

Wrap-up

SharePoint 2013 App Model

app model past present and future
App Model: Past, Present and Future

Azure, IIS, LAMP, etc…

SharePoint 2007

SharePoint 2010

SharePoint

2013

SharePoint

Sandbox

SharePoint

iFrame

SharePoint 2013 App Model

app model end user experience
App Model:End User Experience
  • Howdoesitfeelforthe End-User?
  • Office Marketplace, likefor Windows Phone and Windows 8
  • User installsanddecidestotrust
  • Demo @ Office 365

SharePoint 2013 App Model

agenda2
Agenda

Introduction

A look back – Why a new App Model?

Where do Apps run?

The Shape of Apps

The ApplicationProgramming Interface (API)

Authentication andAuthorization

Wrap-up

SharePoint 2013 App Model

sharepoint server 2013 development scenarios
SharePoint Server 2013 Development Scenarios

DevelopmentOptions

Development Tools

Deployment Options

Web Browser

Farm-Trust Solution

On-Premise Farm Installation

Sandboxed Solutions

SharePoint Designer 2013

Office 365 & SharePoint Online

SharePoint-Hosted App

Visual Studio 2012

Hosted Installation

Provider-Hosted App

Eclipse, LAMP, Etc.

Azure Auto-Hosted App

SharePoint 2013 App Model

sharepoint 2013 the new app package structure
SharePoint 2013: The new App Package Structure

App Package

manifest.xml

SiteCollection

Host Web

http://sp.com

SharePoint Package

.wsp

App Installation Process

New App Web

Web Features

App Web

http://abc-567adcca.sp.com

App Installation Process

External App Package

http://acme-apps.com

SharePoint 2013 App Model

three approaches for hosting apps
Three Approaches for Hosting Apps

Provider Hosted app

SharePoint Host Web

Your Hosted Site

Cloud based apps

“Bring your own server hosting infrastructure”

Developers will need to isolate tenants

Get remote events from SharePoint

Use CSOM/REST + OAuth to work with SP

Auto Hosted App

SharePoint Host Web

Azure from WebDeploy, DacPac

Windows Azure + SQL Azure provisioned invisibly as apps are installed

SharePoint Hosted App

SharePoint Host Web

  • Provision 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

App Web from WSP

SharePoint 2013 App Model

agenda3
Agenda

Introduction

A look back – Why a new App Model?

Where do Apps run?

The Shape of Apps

The ApplicationProgramming Interface (API)

Authentication andAuthorization

Wrap-up

SharePoint 2013 App Model

new app model user experience
New App Model: User Experience

Full page app

Implement complete app experiences to satisfy business scenarios

  • App part app
    • Create app widgets that can interact with the SharePoint experience
  • Command extensions
    • Extend existing functionality with new commands

SharePoint 2013 App Model

agenda4
Agenda

Introduction

A look back – Why a new App Model?

Where do Apps run?

The Shape of Apps

The ApplicationProgramming Interface (API)

Authentication andAuthorization

Wrap-up

SharePoint 2013 App Model

sharepoint 2010 client object model
SharePoint 2010: Client Object Model

API Services

SharePoint Foundation: List and Library interaction

API surface

Access via JavaScript, Silverlight, and .Net

Drawbacks

Still needs old asmx Services, what about iOS, PHP, Node.JS, …

SharePoint Foundation

_vti_bin/client.svc

Server

Execute Query

Client

JavaScript Library

Silverlight Library

.Net CLR Library

Custom Client Code

SharePoint 2013 App Model

app model apps have a new api
App Model: Apps have a new _api

API Services

Existing SharePoint Client Object Model, User Profiles, Search, Taxonomy, Feeds, Publishing, Sharing, Workflow, E-Discovery, IRM, Analytics Business Data Services, and more!

Simplified API surface

Focused on the most used API’s and removed redundancy/duplicate paths

Symmetric

Same object model on the server and all client object models

SharePoint Foundation

User Profile

Search

Taxonomy

More…

_api

Server

Execute Query

Client

REST/

ODATA

JavaScript Library

Silverlight Library

.Net CLR Library

Custom Client Code

SharePoint 2013 App Model

api access to sharepoint services
_api: Access to SharePoint Services

REST/ODATA

http://host/sites/test/_api/Web/Title

Managed Code

clientContext.Load(clientContext.Web);

clientContext.ExecuteQuery();

TextBox1.Text = clientContext.Web.Title;

JavaScript

ctx.load(ctx.get_web());

ctx.executeQueryAsync(function () { ctx.get_web().get_title() });

SharePoint 2013 App Model

demo sharepoint hosted app
Demo: SharePoint Hosted App

Demo

SharePoint 2013 App Model

agenda5
Agenda

Introduction

A look back – Why a new App Model?

Where do Apps run?

The Shape of Apps

The ApplicationProgramming Interface (API)

Authentication andAuthorization

Wrap-up

SharePoint 2013 App Model

api access of a sharepoint 2013 app
API accessof a SharePoint 2013 App

App maybehosted in IFrame!

http://abc-567adcca.sp.com

http://sp.com

http://acme-apps.com

JavaScript

JavaScript

C#, PHP, JavaScript, …

xss

Client

Server

Host Web

App Web

Cloud App Host

App

App

SharePoint 2013 App Model

openauth introduction
OpenAuth: Introduction

?

SharePoint 2013 App Model

oauth authn and authz flow

1 User navigatestopagecontaining an app

OAuth: AuthN and AuthZ flow

2 SharePoint requests a contexttoken

3 ACS returnssignedcontexttoken

CloudACS

4 SharePoint renderspagewithIFrame

5 Browser requestsIFrame

6 ACS validatessignatureofcontexttoken

3

7 ACS issues an accesstoken

7

8 App Host accessesdatawithOAuthtoken

2

Browser

SharePoint 2013

9 SharePoint returnsdata

1

10 Renderedcontentdelivered

4

6

8

App

iFrame

9

5

App Host

acme-apps.com

10

SharePoint 2013 App Model

demo cloud hosted sharepoint 2013 app
Demo: Cloud Hosted SharePoint 2013 App

DEMO

SharePoint 2013 App Model

oauth on premise

NoCloud ACS

OAuth: on-premise?

NoContext Token

CloudACS

No Access Token

Establish Trust-Relation withCertificate

3

7

2

Browser

SharePoint 2013

1

„Trusted Security Token Issuer“

4

6

8

App

iFrame

9

5

App Host

intranet-apps.com

10

SharePoint 2013 App Model

introduction to event handling
Introductionto Event Handling
  • Event Handlers in SharePoint 2007 and 2010
    • Lists, Webs, etc. (ListItemAdded, Web Provisioned, …)
  • Possibilitytocapture User Interaction
    • e.g. new Task in Task List, documentpublished, …
  • Possibilitytoenforcebusinessrules
    • e.g. preventdocumentdeletionbased on meta-data, …
  • SharePoint 2013 Apps:„Remote Event Receivers“
    • SharePoint eventsareforwardedto an App endpoint
  • SharePoint 2013: Remote Event Receivers forBusiness Connectivity Services
    • BCS: accesstoexternal Line-of-Business systems

SharePoint 2013 App Model

data access remote event handler

1 User adds Item tosome List

Data Access: Remote Event Handler

2 SharePoint asks ACS forcontext Token

3 ACS returnstoken

4 SharePoint calls Remote Event Receiver

5 App doesit‘sjob

6 App send context Token

7 App getsaccess Token

8 App updates SharePoint

SharePoint 2013

1

8

5

4

.svc

2

6

3

CloudACS

App Host

acme-apps.com

7

SharePoint 2013 App Model

remote event receivers demo
Remote Event Receivers: Demo

Demo

SharePoint 2013 App Model

agenda6
Agenda

Introduction

A look back – Why a new App Model?

Where do Apps run?

The Shape of Apps

The ApplicationProgramming Interface (API)

Authentication andAuthorization

Wrap-up

SharePoint 2013 App Model

choice control and flexibility to acquire and deploy
Choice, Control and Flexibility to acquire and deploy

SharePoint and O365

Office.com

Public Marketplace

IntegratedMarketplace

Dev center

submission

TRIAL/ PURCHASE

Developer

End users

TRIAL/ PURCHASE

Direct

Negotiated deals/

IT projects

Corporate Catalog

IT admin

SharePoint 2013 App Model

recap three choices to make
Recap: Threechoicestomake

Hosting

Entry Points

Data Access

SharePoint

.Net / Silverlight

Full Page

Auto-Provisioned on Azure

JavaScript

App Part

Developer hosted

REST / ODATA

Extension

SharePoint 2013 App Model

links
Links

For more exotic scenarios:Work with the cross-domain library across different Internet Explorer security zones in apps for SharePointhttp://msdn.microsoft.com/en-us/library/jj612823.aspx

How to: Access SharePoint 2013 data from remote apps using the cross-domain libraryhttp://msdn.microsoft.com/en-us/library/fp179927.aspx

How to: Access SharePoint 2013 data from remote apps using the cross-domain libraryhttp://msdn.microsoft.com/en-us/library/fp179927.aspx

Office/SharePoint Tools for Visual Studio 2012https://www.microsoft.com/web/handlers/WebPI.ashx/getinstaller/OfficeToolsForVS2012GA.appids

App Configuration on-premhttp://technet.microsoft.com/en-us/library/fp161236

App AuthPolicyhttp://msdn.microsoft.com/en-us/library/office/apps/fp179892.aspx

High Trust S2S on-premhttp://msdn.microsoft.com/en-us/library/office/apps/fp179901.aspxhttp://blog.loitzl.com/?p=229

Tips and FAQs: OAuth and remote apps for SharePoint 2013http://msdn.microsoft.com/en-us/library/fp179932.aspx

Registering SharePoint 2013 High-Trust Apps Using S2S the Easy Way (Beta 2 only!)http://www.andrewconnell.com/blog/archive/2012/08/07/registering-sharepoint-2013-high-trust-apps-using-s2s-the-easy.aspx

Can App Parts be used on SharePoint-Hosted pages?http://social.msdn.microsoft.com/Forums/en-US/appsforsharepoint/thread/abb96582-e5b1-4fbd-9e63-2ffc01780835/

SharePoint 2013 App Model

slide34
Trivadis AG

Dipl.-Ing. Martin Loitzl

Europastrasse 58152 Glattbrugg

Tel. +41 79 909 7242

Martin.Loitzl@trivadis.comwww.trivadis.com

Thanks!

SharePoint 2013 App Model