SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Developing Apps for SharePoint 2013
PAOLO PIALORSI, PIASYS
PAOLO@PIALORSI.COM

SHAREPOINT AND PROJECT CONFERENCE ADRIATICS 2013
ZAGREB, NOVEMBER 27-28 2013
sponsors
Something about me
• Consultant, project manager and trainer
• More than 40 Microsoft certification exams passed
• Microsoft Certified Solution Master – Charter SharePoint

• Focused on SharePoint since the beginning
• Author of 10 books about XML, SOAP, .NET, LINQ
and SharePoint
•
•
•

Microsoft SharePoint 2010 Developer Reference, Microsoft Press
Microsoft SharePoint 2013 Developer Reference, Microsoft Press
Build Windows 8 Apps with Microsoft Visual C# and
Visual Basic Step by Step, Microsoft Press

• Speaker at main IT conferences
Agenda
• Apps Model Overview
•
•
•
•
•

Architecture
Hosting Model
UI Options
App Manifest
Publishing apps

• App Security Model
• What’s new in Visual Studio 2013 RTM
APPS MODEL OVERVIEW
Once upon a time …
Farm solutions







Full trust solutions
File system access
GAC deploy
14 hive access
.NET managed code
Inherited from SP2007

Sandbox solutions






Partially trusted code
Limited API
.NET managed code
No access to file system
No calls to services

Apps





solutions model

New model apporiented
Deployed from
corporate catalog or
Office Store
Based on web
standards
No code with server
object mode!

apps model

SP2010
SP2013
A LAP AROUND THE APP MODEL
Three types of Apps
Provider-Hosted App
Cloud-based
Apps
Get remote
events from
SharePoint
Use CSOM/REST
+ OAuth to work
with SP

“Bring your own server hosting
infrastructure”
Developers will need to isolate
tenants

App Web

(optional)
The infrastructure for autohosted apps
will remain in preview status for a period
of time after SharePoint 2013 releases.
Autohosted apps (which includes all
SharePoint
apps that depend on Access) willHosted
Your not be
accepted by the Office Store during this
Web
Site
preview phase.

Autohosted App

Windows Azure + Windows
Azure SQL Database
provisioned invisibly as apps
are installed

SharePoint-Hosted App

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, HTML/CSS for UX

SharePoint
Web

Azure

Parent
Web

(host web)

App Web

Windows
Azure SQL
Database
Apps programming model
• Client-side pattern (ALL)
• HTML5, CSS, JavaScript
• Leverage Javascript libraries
like JQuery, KnockoutJs,
Angular, etc.

• Server-side pattern (CLOUD-ONLY)
• Use your own infrastructure
• Use your preferred language
(ASP.NET, PHP, JSP, ecc..)
• Use client-side object model
or REST to get info from SharePoint

• Hybrid pattern (CLOUD-ONLY)
• Mix-and-match client-side pattern with server-side pattern
Apps UI options
• Immersive full page - are like application pages, with
HTML, CSS, JavaScript
• Including SharePoint OOB controls in SharePoint-hosted apps

• Part - are simple IFRAMEs 
• UI Custom Actions - are SharePoint custom actions like
Ribbons or ECB item actions
A FIRST SAMPLE APP
App Manifest
• General
• Title, version, startup page, ecc.

• Permissions
• Permission required to run the app
• The end user installing the app will have to trust it

• Prerequisites
• Software prerequisites to correctly run the app

• Supported Locales
• EN-US is required to publish apps on the Office Store

• Remote Endpoints
• For declaring endpoints of remote services supporting the app
Options for publishing apps
• Office Store – You can build your app, submit to Microsoft for
approval and make the app publically available, with your
license policies, in order to be aquired by users with any
SharePoint environments
• Corporate App Catalog – You can put your app into a company
internal catalog, hosted on your SharePoint environment, in
order to make it available to your final users
What can we do in apps?
• Pages
• App Parts
• UI Extensions
• Content (lists, libraries, items)
• Workflows
• Remote Event Receivers
• Business Connectivity Services (OData)
• Etc.
A SAMPLE WORKFLOW-BASED APP
APPS SECURITY MODEL => OAUTH
OAuth
• OAuth is an open protocol for authenticating apps and allowing
secure API authorization from desktop and web applications
through a web based standard and simple technique.
• For example: authorize the printing app to read pictures from
my Facebook profile, or from my SkyDrive
OAuth Flow
STS (ACS)

7- Access token

2. Request
context token

Client

3. Signed
context token

6.
Refresh
token

8. Request –
Access token

1.
Request
4. Page - IFrame

SharePoint Server

5. Request IFrame
contents
10. IFrame contents

9. SharePoint data

Intranet.contoso.com
SharePoint 2013 Apps’ Authentication
Start
User
credentials
provided?

Is the
endpoint
outside of
an app
web?

Yes

No
OAuth
token
present?

No

Yes
Set user context

No

Yes

Is endpoint
CSOM?

No

Yes

Does the
token
include
user info?

Yes

Set app and user
context

No
Set App-Only
context

Use anonymous
context

End
App Permissions
• App are granted permissions
• App permissions are different from user permissions
• App permissions are granted as all or nothing
• App permissions have no permissions hierarchy
• this is different than user permissions which have a hierarchy inside a site
collection

• An app has default permissions
•
•
•
•

App has full control over app web but no other default permissions
App can include permission request in application manifest
Installing user grants/denies permissions during installation
If permission request denied, SharePoint does not install app
S2S High Trust Scenario
• High Trust != Full Trust
• Alternative to OAuth
• Leveraged by apps and infrastructural services
• Workflow Manager, Exchange, etc.

• Direct trust relationship between SP2013 and the external
service
• Based on X.509 certificates
• One certificate for each app (avoid sharing certs across apps)

• Available for Provider-hosted apps
• Supported by wizard of VS2012/VS2013
• A little bit «complicated» to configure, using PowerShell
WHAT’S NEW WITH VISUAL STUDIO
2013
Apps for SharePoint in VS2013 RTM
• New MVC5 template for App for SharePoint
• SharePointContext helper classes
• Independent from ACS or S2S
• Access token caching
• Object model wrapper

• App for SharePoint Web Toolkit via NuGet
• Available for VS2012, as well

• Workflow remote debugging via Azure Service Bus
Cloud Business Apps
• New project (solution) template
• Highly productive development experience
• Based on LightSwitch HTML client
• Can consume external data sources (SharePoint, SQL
Server, OData, ecc.)

• Multi-browser/multi-device
• Integrated with social features of SharePoint
• Support social feeds
• Does not yet support Yammer …

• Easy deployment/publishing of business apps
questions?
HTTP://WWW.SHAREPOINTREFERENCE.COM/BLOG/

@PAOLOPIA
thank you.
SHAREPOINT AND PROJECT CONFERENCE ADRIATICS 2013
ZAGREB, NOVEMBER 27-28 2013

Weitere ähnliche Inhalte

Was ist angesagt?

Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015Bram de Jager
 
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Bram de Jager
 
SharePoint 2013 apps overview
SharePoint 2013 apps overviewSharePoint 2013 apps overview
SharePoint 2013 apps overviewElie Kash
 
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and AzureCloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and AzureTobias Lekman
 
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...BlueMetalInc
 
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich ApplicationsIntroducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich ApplicationsRyan McIntyre
 
Webhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint OnlineWebhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint OnlineNetwoven Inc.
 
SharePoint Framework - Developer Preview
SharePoint Framework - Developer PreviewSharePoint Framework - Developer Preview
SharePoint Framework - Developer PreviewSean McLellan
 
Deep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft GraphDeep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft GraphBram de Jager
 
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted AppsSharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted AppsSanjay Patel
 
Essential Knowledge for SharePoint Add-Ins
Essential Knowledge for SharePoint Add-InsEssential Knowledge for SharePoint Add-Ins
Essential Knowledge for SharePoint Add-InsInnoTech
 
#OCSPUG SharePoint 2013 Best Practices
#OCSPUG SharePoint 2013 Best Practices#OCSPUG SharePoint 2013 Best Practices
#OCSPUG SharePoint 2013 Best PracticesIvan Sanders
 
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Corey Roth
 
SharePoint Framework
SharePoint FrameworkSharePoint Framework
SharePoint FrameworkVitaly Zhukov
 
Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013Sonja Madsen
 
Introduction to SharePoint as a Development Platform
Introduction to SharePoint as a Development PlatformIntroduction to SharePoint as a Development Platform
Introduction to SharePoint as a Development PlatformRonald Courville
 

Was ist angesagt? (20)

Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
 
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
 
SharePoint 2013 apps overview
SharePoint 2013 apps overviewSharePoint 2013 apps overview
SharePoint 2013 apps overview
 
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and AzureCloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
 
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
 
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich ApplicationsIntroducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
 
Webhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint OnlineWebhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint Online
 
SharePoint Framework - Developer Preview
SharePoint Framework - Developer PreviewSharePoint Framework - Developer Preview
SharePoint Framework - Developer Preview
 
What's New for SP2010 Devs
What's New for SP2010 DevsWhat's New for SP2010 Devs
What's New for SP2010 Devs
 
Deep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft GraphDeep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft Graph
 
Sharepoint 2013 App
Sharepoint 2013 AppSharepoint 2013 App
Sharepoint 2013 App
 
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted AppsSharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
 
Essential Knowledge for SharePoint Add-Ins
Essential Knowledge for SharePoint Add-InsEssential Knowledge for SharePoint Add-Ins
Essential Knowledge for SharePoint Add-Ins
 
What Is SPS Arabia
What Is SPS ArabiaWhat Is SPS Arabia
What Is SPS Arabia
 
#OCSPUG SharePoint 2013 Best Practices
#OCSPUG SharePoint 2013 Best Practices#OCSPUG SharePoint 2013 Best Practices
#OCSPUG SharePoint 2013 Best Practices
 
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
 
SharePoint Framework
SharePoint FrameworkSharePoint Framework
SharePoint Framework
 
Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013
 
Introduction to SharePoint as a Development Platform
Introduction to SharePoint as a Development PlatformIntroduction to SharePoint as a Development Platform
Introduction to SharePoint as a Development Platform
 
Access SharePoint Remotely
Access SharePoint RemotelyAccess SharePoint Remotely
Access SharePoint Remotely
 

Andere mochten auch

Introduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsIntroduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsRushi Waghmare
 
Get started developing apps for SharePoint 2013
Get started developing apps for SharePoint 2013Get started developing apps for SharePoint 2013
Get started developing apps for SharePoint 2013Muawiyah Shannak
 
Share point 2013 - Javascript Object Model
Share point 2013 - Javascript Object ModelShare point 2013 - Javascript Object Model
Share point 2013 - Javascript Object ModelMuawiyah Shannak
 
OneNote 2013 - Top features deepdive
OneNote 2013 - Top features deepdiveOneNote 2013 - Top features deepdive
OneNote 2013 - Top features deepdiveMuawiyah Shannak
 
SharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
SharePoint 2013 Client-Side Rendering (CSR) & JSLink TemplatesSharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
SharePoint 2013 Client-Side Rendering (CSR) & JSLink TemplatesMuawiyah Shannak
 
MSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to appMSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to appJoris Poelmans
 

Andere mochten auch (10)

Introduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsIntroduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 Apps
 
Get started developing apps for SharePoint 2013
Get started developing apps for SharePoint 2013Get started developing apps for SharePoint 2013
Get started developing apps for SharePoint 2013
 
Share point 2013 - Javascript Object Model
Share point 2013 - Javascript Object ModelShare point 2013 - Javascript Object Model
Share point 2013 - Javascript Object Model
 
Apps for SharePoint
Apps for SharePointApps for SharePoint
Apps for SharePoint
 
OAuth in SharePoint 2013
OAuth in SharePoint 2013OAuth in SharePoint 2013
OAuth in SharePoint 2013
 
JSOM and java script practices
JSOM and java script practicesJSOM and java script practices
JSOM and java script practices
 
OneNote 2013 - Top features deepdive
OneNote 2013 - Top features deepdiveOneNote 2013 - Top features deepdive
OneNote 2013 - Top features deepdive
 
App deployment
App deploymentApp deployment
App deployment
 
SharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
SharePoint 2013 Client-Side Rendering (CSR) & JSLink TemplatesSharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
SharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
 
MSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to appMSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to app
 

Ähnlich wie Developing Apps for SharePoint 2013

SharePoint 2013 App or Not to App
SharePoint 2013 App or Not to AppSharePoint 2013 App or Not to App
SharePoint 2013 App or Not to AppKenneth Maglio
 
Developing a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint appDeveloping a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint appTalbott Crowell
 
Developing a provider hosted share point app
Developing a provider hosted share point appDeveloping a provider hosted share point app
Developing a provider hosted share point appTalbott Crowell
 
Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Fabio Franzini
 
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...Bram de Jager
 
SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012
SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012
SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012NCCOMMS
 
The SharePoint 2013 App Model
The SharePoint 2013 App ModelThe SharePoint 2013 App Model
The SharePoint 2013 App ModelSPC Adriatics
 
SP Apps, New Model, New App Store: The Office Store
SP Apps, New Model, New App Store: The Office StoreSP Apps, New Model, New App Store: The Office Store
SP Apps, New Model, New App Store: The Office StoreJuan Carlos Gonzalez
 
Custom Development in SharePoint – What are my options now?
Custom Development in SharePoint – What are my options now?Custom Development in SharePoint – What are my options now?
Custom Development in SharePoint – What are my options now?Talbott Crowell
 
SharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsSharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsShailen Sukul
 
Creating a SharePoint App with Microsoft Access Services
Creating a SharePoint App with Microsoft Access ServicesCreating a SharePoint App with Microsoft Access Services
Creating a SharePoint App with Microsoft Access ServicesSPC Adriatics
 
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClassECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClassEuropean Collaboration Summit
 
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...SPTechCon
 
Developing Apps for SharePoint Store
Developing Apps for SharePoint StoreDeveloping Apps for SharePoint Store
Developing Apps for SharePoint StoreKashif Imran
 
Building an App Forms Business Solution - Penelope Coventry
Building an App Forms Business Solution - Penelope CoventryBuilding an App Forms Business Solution - Penelope Coventry
Building an App Forms Business Solution - Penelope CoventrySPC Adriatics
 
Introduction to the new SharePoint 2013 App Model
Introduction to the new SharePoint 2013 App ModelIntroduction to the new SharePoint 2013 App Model
Introduction to the new SharePoint 2013 App ModelNoorez Khamis
 
O365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in actionO365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in actionNCCOMMS
 
Spca2014 harbar wac
Spca2014 harbar wacSpca2014 harbar wac
Spca2014 harbar wacNCCOMMS
 

Ähnlich wie Developing Apps for SharePoint 2013 (20)

SharePoint 2013 App or Not to App
SharePoint 2013 App or Not to AppSharePoint 2013 App or Not to App
SharePoint 2013 App or Not to App
 
SharePoint Server 2013: to app or not to app?
SharePoint Server 2013: to app or not to app? SharePoint Server 2013: to app or not to app?
SharePoint Server 2013: to app or not to app?
 
Developing a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint appDeveloping a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint app
 
Developing a provider hosted share point app
Developing a provider hosted share point appDeveloping a provider hosted share point app
Developing a provider hosted share point app
 
Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...
 
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
 
SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012
SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012
SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012
 
The SharePoint 2013 App Model
The SharePoint 2013 App ModelThe SharePoint 2013 App Model
The SharePoint 2013 App Model
 
SP Apps, New Model, New App Store: The Office Store
SP Apps, New Model, New App Store: The Office StoreSP Apps, New Model, New App Store: The Office Store
SP Apps, New Model, New App Store: The Office Store
 
SPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business AppSPS Gulf : SharePoint 2013 Cloud Business App
SPS Gulf : SharePoint 2013 Cloud Business App
 
Custom Development in SharePoint – What are my options now?
Custom Development in SharePoint – What are my options now?Custom Development in SharePoint – What are my options now?
Custom Development in SharePoint – What are my options now?
 
SharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning ModelsSharePoint 2013 App Provisioning Models
SharePoint 2013 App Provisioning Models
 
Creating a SharePoint App with Microsoft Access Services
Creating a SharePoint App with Microsoft Access ServicesCreating a SharePoint App with Microsoft Access Services
Creating a SharePoint App with Microsoft Access Services
 
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClassECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
ECS19 - Vesa Juvonen - SharePoint and Office 365 Development PowerClass
 
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
 
Developing Apps for SharePoint Store
Developing Apps for SharePoint StoreDeveloping Apps for SharePoint Store
Developing Apps for SharePoint Store
 
Building an App Forms Business Solution - Penelope Coventry
Building an App Forms Business Solution - Penelope CoventryBuilding an App Forms Business Solution - Penelope Coventry
Building an App Forms Business Solution - Penelope Coventry
 
Introduction to the new SharePoint 2013 App Model
Introduction to the new SharePoint 2013 App ModelIntroduction to the new SharePoint 2013 App Model
Introduction to the new SharePoint 2013 App Model
 
O365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in actionO365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in action
 
Spca2014 harbar wac
Spca2014 harbar wacSpca2014 harbar wac
Spca2014 harbar wac
 

Mehr von SPC Adriatics

How to secure your data in Office 365
How to secure your data in Office 365 How to secure your data in Office 365
How to secure your data in Office 365 SPC Adriatics
 
Do you know, where your sensitive data is?
Do you know, where your sensitive data is?Do you know, where your sensitive data is?
Do you know, where your sensitive data is?SPC Adriatics
 
Securing Intellectual Property using Azure Rights Management Services
Securing Intellectual Property using Azure Rights Management ServicesSecuring Intellectual Property using Azure Rights Management Services
Securing Intellectual Property using Azure Rights Management ServicesSPC Adriatics
 
Creating Workflows in Project Online
Creating Workflows in Project OnlineCreating Workflows in Project Online
Creating Workflows in Project OnlineSPC Adriatics
 
Faster than a flash behind the scenes of patching SharePoint Online
Faster than a flash   behind the scenes of patching SharePoint OnlineFaster than a flash   behind the scenes of patching SharePoint Online
Faster than a flash behind the scenes of patching SharePoint OnlineSPC Adriatics
 
Role based views in Project and Resource Center
Role based views in Project and Resource CenterRole based views in Project and Resource Center
Role based views in Project and Resource CenterSPC Adriatics
 
OneDrive, TwoDrive, Whiterive, BlueDrive (hahaha)
OneDrive, TwoDrive, Whiterive, BlueDrive (hahaha)OneDrive, TwoDrive, Whiterive, BlueDrive (hahaha)
OneDrive, TwoDrive, Whiterive, BlueDrive (hahaha)SPC Adriatics
 
SharePoint Governance and Compliance
SharePoint Governance and ComplianceSharePoint Governance and Compliance
SharePoint Governance and ComplianceSPC Adriatics
 
From analyses to successful Implementation
From analyses to successful ImplementationFrom analyses to successful Implementation
From analyses to successful ImplementationSPC Adriatics
 
The key to a successful Office 365 implementation is adoption
The key to a successful Office 365 implementation is adoptionThe key to a successful Office 365 implementation is adoption
The key to a successful Office 365 implementation is adoptionSPC Adriatics
 
10 Steps to be Successful with Enterprise Search
10 Steps to be Successful with Enterprise Search10 Steps to be Successful with Enterprise Search
10 Steps to be Successful with Enterprise SearchSPC Adriatics
 
How the Cloud Changes Business Solution Design and Delivery
How the Cloud Changes Business Solution Design and DeliveryHow the Cloud Changes Business Solution Design and Delivery
How the Cloud Changes Business Solution Design and DeliverySPC Adriatics
 
Scaling SharePoint 2016 Farms with MinRole & Other Tools
Scaling SharePoint 2016 Farms with MinRole & Other ToolsScaling SharePoint 2016 Farms with MinRole & Other Tools
Scaling SharePoint 2016 Farms with MinRole & Other ToolsSPC Adriatics
 
SharePoint 2013 Search Operations
SharePoint 2013 Search OperationsSharePoint 2013 Search Operations
SharePoint 2013 Search OperationsSPC Adriatics
 
Office Online Server 2016 - a must for on-premises installation for SharePoin...
Office Online Server 2016 - a must for on-premises installation for SharePoin...Office Online Server 2016 - a must for on-premises installation for SharePoin...
Office Online Server 2016 - a must for on-premises installation for SharePoin...SPC Adriatics
 
Custom Code-The Missing Piece of the SharePoint Governance Puzzle
Custom Code-The Missing Piece of the SharePoint Governance PuzzleCustom Code-The Missing Piece of the SharePoint Governance Puzzle
Custom Code-The Missing Piece of the SharePoint Governance PuzzleSPC Adriatics
 
SharePoint 2016 Hybrid Sites Inside Out
SharePoint 2016 Hybrid Sites Inside OutSharePoint 2016 Hybrid Sites Inside Out
SharePoint 2016 Hybrid Sites Inside OutSPC Adriatics
 
Microsoft BI demystified: SharePoint 2016 BI or for PowerBI v2?
Microsoft BI demystified: SharePoint 2016 BI or for PowerBI v2?Microsoft BI demystified: SharePoint 2016 BI or for PowerBI v2?
Microsoft BI demystified: SharePoint 2016 BI or for PowerBI v2?SPC Adriatics
 
What's New for the BI workload in SharePoint 2016 and SQL Server 2016
What's New for the BI workload in SharePoint 2016 and SQL Server 2016What's New for the BI workload in SharePoint 2016 and SQL Server 2016
What's New for the BI workload in SharePoint 2016 and SQL Server 2016SPC Adriatics
 

Mehr von SPC Adriatics (20)

How to secure your data in Office 365
How to secure your data in Office 365 How to secure your data in Office 365
How to secure your data in Office 365
 
Do you know, where your sensitive data is?
Do you know, where your sensitive data is?Do you know, where your sensitive data is?
Do you know, where your sensitive data is?
 
Securing Intellectual Property using Azure Rights Management Services
Securing Intellectual Property using Azure Rights Management ServicesSecuring Intellectual Property using Azure Rights Management Services
Securing Intellectual Property using Azure Rights Management Services
 
Creating Workflows in Project Online
Creating Workflows in Project OnlineCreating Workflows in Project Online
Creating Workflows in Project Online
 
Faster than a flash behind the scenes of patching SharePoint Online
Faster than a flash   behind the scenes of patching SharePoint OnlineFaster than a flash   behind the scenes of patching SharePoint Online
Faster than a flash behind the scenes of patching SharePoint Online
 
Role based views in Project and Resource Center
Role based views in Project and Resource CenterRole based views in Project and Resource Center
Role based views in Project and Resource Center
 
OneDrive, TwoDrive, Whiterive, BlueDrive (hahaha)
OneDrive, TwoDrive, Whiterive, BlueDrive (hahaha)OneDrive, TwoDrive, Whiterive, BlueDrive (hahaha)
OneDrive, TwoDrive, Whiterive, BlueDrive (hahaha)
 
SharePoint Governance and Compliance
SharePoint Governance and ComplianceSharePoint Governance and Compliance
SharePoint Governance and Compliance
 
From analyses to successful Implementation
From analyses to successful ImplementationFrom analyses to successful Implementation
From analyses to successful Implementation
 
The key to a successful Office 365 implementation is adoption
The key to a successful Office 365 implementation is adoptionThe key to a successful Office 365 implementation is adoption
The key to a successful Office 365 implementation is adoption
 
Office 365 Video
Office 365 VideoOffice 365 Video
Office 365 Video
 
10 Steps to be Successful with Enterprise Search
10 Steps to be Successful with Enterprise Search10 Steps to be Successful with Enterprise Search
10 Steps to be Successful with Enterprise Search
 
How the Cloud Changes Business Solution Design and Delivery
How the Cloud Changes Business Solution Design and DeliveryHow the Cloud Changes Business Solution Design and Delivery
How the Cloud Changes Business Solution Design and Delivery
 
Scaling SharePoint 2016 Farms with MinRole & Other Tools
Scaling SharePoint 2016 Farms with MinRole & Other ToolsScaling SharePoint 2016 Farms with MinRole & Other Tools
Scaling SharePoint 2016 Farms with MinRole & Other Tools
 
SharePoint 2013 Search Operations
SharePoint 2013 Search OperationsSharePoint 2013 Search Operations
SharePoint 2013 Search Operations
 
Office Online Server 2016 - a must for on-premises installation for SharePoin...
Office Online Server 2016 - a must for on-premises installation for SharePoin...Office Online Server 2016 - a must for on-premises installation for SharePoin...
Office Online Server 2016 - a must for on-premises installation for SharePoin...
 
Custom Code-The Missing Piece of the SharePoint Governance Puzzle
Custom Code-The Missing Piece of the SharePoint Governance PuzzleCustom Code-The Missing Piece of the SharePoint Governance Puzzle
Custom Code-The Missing Piece of the SharePoint Governance Puzzle
 
SharePoint 2016 Hybrid Sites Inside Out
SharePoint 2016 Hybrid Sites Inside OutSharePoint 2016 Hybrid Sites Inside Out
SharePoint 2016 Hybrid Sites Inside Out
 
Microsoft BI demystified: SharePoint 2016 BI or for PowerBI v2?
Microsoft BI demystified: SharePoint 2016 BI or for PowerBI v2?Microsoft BI demystified: SharePoint 2016 BI or for PowerBI v2?
Microsoft BI demystified: SharePoint 2016 BI or for PowerBI v2?
 
What's New for the BI workload in SharePoint 2016 and SQL Server 2016
What's New for the BI workload in SharePoint 2016 and SQL Server 2016What's New for the BI workload in SharePoint 2016 and SQL Server 2016
What's New for the BI workload in SharePoint 2016 and SQL Server 2016
 

Kürzlich hochgeladen

Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 

Kürzlich hochgeladen (20)

Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 

Developing Apps for SharePoint 2013

  • 1. Developing Apps for SharePoint 2013 PAOLO PIALORSI, PIASYS PAOLO@PIALORSI.COM SHAREPOINT AND PROJECT CONFERENCE ADRIATICS 2013 ZAGREB, NOVEMBER 27-28 2013
  • 3. Something about me • Consultant, project manager and trainer • More than 40 Microsoft certification exams passed • Microsoft Certified Solution Master – Charter SharePoint • Focused on SharePoint since the beginning • Author of 10 books about XML, SOAP, .NET, LINQ and SharePoint • • • Microsoft SharePoint 2010 Developer Reference, Microsoft Press Microsoft SharePoint 2013 Developer Reference, Microsoft Press Build Windows 8 Apps with Microsoft Visual C# and Visual Basic Step by Step, Microsoft Press • Speaker at main IT conferences
  • 4. Agenda • Apps Model Overview • • • • • Architecture Hosting Model UI Options App Manifest Publishing apps • App Security Model • What’s new in Visual Studio 2013 RTM
  • 6. Once upon a time … Farm solutions       Full trust solutions File system access GAC deploy 14 hive access .NET managed code Inherited from SP2007 Sandbox solutions      Partially trusted code Limited API .NET managed code No access to file system No calls to services Apps     solutions model New model apporiented Deployed from corporate catalog or Office Store Based on web standards No code with server object mode! apps model SP2010 SP2013
  • 7. A LAP AROUND THE APP MODEL
  • 8. Three types of Apps Provider-Hosted App Cloud-based Apps Get remote events from SharePoint Use CSOM/REST + OAuth to work with SP “Bring your own server hosting infrastructure” Developers will need to isolate tenants App Web (optional) The infrastructure for autohosted apps will remain in preview status for a period of time after SharePoint 2013 releases. Autohosted apps (which includes all SharePoint apps that depend on Access) willHosted Your not be accepted by the Office Store during this Web Site preview phase. Autohosted App Windows Azure + Windows Azure SQL Database provisioned invisibly as apps are installed SharePoint-Hosted App 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, HTML/CSS for UX SharePoint Web Azure Parent Web (host web) App Web Windows Azure SQL Database
  • 9. Apps programming model • Client-side pattern (ALL) • HTML5, CSS, JavaScript • Leverage Javascript libraries like JQuery, KnockoutJs, Angular, etc. • Server-side pattern (CLOUD-ONLY) • Use your own infrastructure • Use your preferred language (ASP.NET, PHP, JSP, ecc..) • Use client-side object model or REST to get info from SharePoint • Hybrid pattern (CLOUD-ONLY) • Mix-and-match client-side pattern with server-side pattern
  • 10. Apps UI options • Immersive full page - are like application pages, with HTML, CSS, JavaScript • Including SharePoint OOB controls in SharePoint-hosted apps • Part - are simple IFRAMEs  • UI Custom Actions - are SharePoint custom actions like Ribbons or ECB item actions
  • 12. App Manifest • General • Title, version, startup page, ecc. • Permissions • Permission required to run the app • The end user installing the app will have to trust it • Prerequisites • Software prerequisites to correctly run the app • Supported Locales • EN-US is required to publish apps on the Office Store • Remote Endpoints • For declaring endpoints of remote services supporting the app
  • 13. Options for publishing apps • Office Store – You can build your app, submit to Microsoft for approval and make the app publically available, with your license policies, in order to be aquired by users with any SharePoint environments • Corporate App Catalog – You can put your app into a company internal catalog, hosted on your SharePoint environment, in order to make it available to your final users
  • 14. What can we do in apps? • Pages • App Parts • UI Extensions • Content (lists, libraries, items) • Workflows • Remote Event Receivers • Business Connectivity Services (OData) • Etc.
  • 17. OAuth • OAuth is an open protocol for authenticating apps and allowing secure API authorization from desktop and web applications through a web based standard and simple technique. • For example: authorize the printing app to read pictures from my Facebook profile, or from my SkyDrive
  • 18. OAuth Flow STS (ACS) 7- Access token 2. Request context token Client 3. Signed context token 6. Refresh token 8. Request – Access token 1. Request 4. Page - IFrame SharePoint Server 5. Request IFrame contents 10. IFrame contents 9. SharePoint data Intranet.contoso.com
  • 19. SharePoint 2013 Apps’ Authentication Start User credentials provided? Is the endpoint outside of an app web? Yes No OAuth token present? No Yes Set user context No Yes Is endpoint CSOM? No Yes Does the token include user info? Yes Set app and user context No Set App-Only context Use anonymous context End
  • 20. App Permissions • App are granted permissions • App permissions are different from user permissions • App permissions are granted as all or nothing • App permissions have no permissions hierarchy • this is different than user permissions which have a hierarchy inside a site collection • An app has default permissions • • • • App has full control over app web but no other default permissions App can include permission request in application manifest Installing user grants/denies permissions during installation If permission request denied, SharePoint does not install app
  • 21. S2S High Trust Scenario • High Trust != Full Trust • Alternative to OAuth • Leveraged by apps and infrastructural services • Workflow Manager, Exchange, etc. • Direct trust relationship between SP2013 and the external service • Based on X.509 certificates • One certificate for each app (avoid sharing certs across apps) • Available for Provider-hosted apps • Supported by wizard of VS2012/VS2013 • A little bit «complicated» to configure, using PowerShell
  • 22. WHAT’S NEW WITH VISUAL STUDIO 2013
  • 23. Apps for SharePoint in VS2013 RTM • New MVC5 template for App for SharePoint • SharePointContext helper classes • Independent from ACS or S2S • Access token caching • Object model wrapper • App for SharePoint Web Toolkit via NuGet • Available for VS2012, as well • Workflow remote debugging via Azure Service Bus
  • 24. Cloud Business Apps • New project (solution) template • Highly productive development experience • Based on LightSwitch HTML client • Can consume external data sources (SharePoint, SQL Server, OData, ecc.) • Multi-browser/multi-device • Integrated with social features of SharePoint • Support social feeds • Does not yet support Yammer … • Easy deployment/publishing of business apps
  • 26. thank you. SHAREPOINT AND PROJECT CONFERENCE ADRIATICS 2013 ZAGREB, NOVEMBER 27-28 2013

Hinweis der Redaktion

  1. Show marketplace: Office Store, install, trusting, etc. => Weather Bamboo SolutionsShow corporate App Catalog
  2. http://msdn.microsoft.com/en-us/library/office/jj220035.aspx – 22/10/2013http://msdn.microsoft.com/en-us/library/office/jj591603.aspx – 4/6/2013http://msdn.microsoft.com/en-us/library/office/jj938162.aspx – 5/2/2013
  3. ECB =Edit Control Block
  4. 1) Show Contacts sample app => Full Page, App Part, Ribbon2) Create simple SharePoint-hosted AppProvision new library of documentsChange home page to show the libraryDeploy and start the appShow App Manifest
  5. Back to the first sample appProvision approval workflow against the documents of the libraryDeploy and start the appShow the workflow running
  6. http://blogs.msdn.com/b/officeapps/archive/2013/10/17/announcing-visual-studio-2013-rtm.aspx