SlideShare a Scribd company logo
1 of 20
MULTI-TENANT
PROVIDER HOSTED
APPS
From Idea to Office Store
Biserka Cvetkovska
BISERKA CVETKOVSKA
SharePoint & Office365 Specialist
@biserka_
biserkacvetkovska.com
biserka.cvetkoska@agitavit.com
INTRODUCTION TO MULTI-TENANT
PROVIDER HOSTED APPS
THE SHAREPOINT APP (ADD-IN) MODEL
• It came along with SharePoint 2013
• 4 terms to simplify the understanding of SharePoint
• Site
• People
• Apps
• Themes
• Benefits
• Initial core functionalities stay intact by custom solutions
• Cloud-ready solutions
• Openness
PROVIDER HOSTED APPS
MULTITENANCY
• The same version of the app is installed on multiple tenants
• Why should you develop multi-tenant apps?
• Easy to maintain
• Easily managed upgrades
• No different versions of the app to take care of
Multi-tenant provider hosted apps
DEVELOPMENT OF MULTI-TENANT
PROVIDER HOSTED APPS
DEVELOPMENT TOOLS AND TEMPLATES
• Tools required for SharePoint apps development
• MS Visual Studio v2013+
• MS Azure SDK for .NET
• Microsoft Office Developer Tools
• OOB SharePoint app template
• SharePoint App  SharePoint Project
• Remote Web App  ASP.NET MVC Web Project
• Web API in case of an extendibility in the future (with native mobile
app in mind)
MULTI-TENANT DATABASE ARCHITECTURE
DATA ACCESS IN A MULTI-TENANT APP
• Entity Framework
• Code First
• Creating tables on demand
• “Fixing” EF to work with a multi-tenant database
IDENTITY MANAGEMENT IN A MULTI-TENANT APP
• Identity management is hard. There are too many things to worry about
• Storing passwords and secrets
• Dealing with different parameters that work with different identity providers
• Preventing prompts for credentials
• …
• Integration with Azure AD
• OpenID Connect
• ADAL (Azure Directory Authentication Library)
OPENID CONNECT & ADAL - A TALE OF FRIENDSHIP
PROVISIONING MULTI-TENANT APPS IN AZURE AD
• Multi-tenant apps that enable authentication towards Azure AD must be
registered in
• Your company’s AD &
• Each organization’s AD that will be using the app
• Register your app by implementing a consent flow
• Only global administrators can consent
• Consent & give permissions to the app so it can access resources in your Azure AD
CONSENT FLOW FOR MULTI-TENANT APPS
DEMO
PUBLISHING THE APP TO OFFICE
STORE
OFFICE STORE
• Introduced to contribute to the simplicity of the App Model
• Benefits
• For users
• Simple & fast installation of apps
• Increasing productivity through apps that suit your needs
• For developers
• Great opportunity to promote your work
• Get feedback from your users
• Get paid through the Store
• Publish your app to Office Store
• How does the process go?
“OPEN CREATIVITY. STRONGER COMMUNITY.”
• The app model makes SharePoint to be more accessible for both users
and developers
• In addition makes the community even stronger
• Not just the SharePoint community but the Web community in general
• With Office Store and technologies (such as SPFx) that are yet to come,
MS finally set SharePoint on the right path
THANK YOU
BISERKA CVETKOVSKA
SharePoint & Office365 Specialist
@biserka_
biserkacvetkovska.com
biserka.cvetkoska@agitavit.com

More Related Content

What's hot

Coders Workshop: API First Mobile Development Featuring Angular and Node
Coders Workshop: API First Mobile Development Featuring Angular and NodeCoders Workshop: API First Mobile Development Featuring Angular and Node
Coders Workshop: API First Mobile Development Featuring Angular and NodeApigee | Google Cloud
 
New Enterprisre Capabilities in Telerik Platform
New Enterprisre Capabilities in Telerik PlatformNew Enterprisre Capabilities in Telerik Platform
New Enterprisre Capabilities in Telerik PlatformLohith Goudagere Nagaraj
 
Continuous delivery with azure app service
Continuous delivery with azure app serviceContinuous delivery with azure app service
Continuous delivery with azure app serviceNabeel Khan
 
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...WSO2
 
About JustplugIt services
About JustplugIt servicesAbout JustplugIt services
About JustplugIt servicesJustPlugIt
 
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
 
Firebase Introduction
Firebase Introduction Firebase Introduction
Firebase Introduction 9xdot
 
SharePoint 2013 Search and Creating Dynamic Content Management Solutions
SharePoint 2013 Search and Creating Dynamic Content Management SolutionsSharePoint 2013 Search and Creating Dynamic Content Management Solutions
SharePoint 2013 Search and Creating Dynamic Content Management SolutionsInnoTech
 
Running Web & Mobile App on Azure App Service
Running Web & Mobile App on Azure App ServiceRunning Web & Mobile App on Azure App Service
Running Web & Mobile App on Azure App ServicePuja Pramudya
 
Introduction to Salesforce UI API
Introduction to Salesforce UI APIIntroduction to Salesforce UI API
Introduction to Salesforce UI APIAtul Gupta(8X)
 
Introduction to Azure Functions - Tutorial
Introduction to Azure Functions - TutorialIntroduction to Azure Functions - Tutorial
Introduction to Azure Functions - TutorialBizTalk360
 
Drag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress RollbaseDrag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress RollbaseAbhishek Kant
 
O365 saturday: How to (remote) control office 365 with windows azure-slideshare
O365 saturday: How to (remote) control office 365 with windows azure-slideshareO365 saturday: How to (remote) control office 365 with windows azure-slideshare
O365 saturday: How to (remote) control office 365 with windows azure-slideshareatwork
 
WSO2Con USA 2015: WSO2 Cloud - What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud - What it is, How it Works, and Where it’s GoingWSO2Con USA 2015: WSO2 Cloud - What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud - What it is, How it Works, and Where it’s GoingWSO2
 
Azure App Service Architecture. Web Apps.
Azure App Service Architecture. Web Apps.Azure App Service Architecture. Web Apps.
Azure App Service Architecture. Web Apps.Alexander Feschenko
 
Share point unvealed apps in sharepoint 2013
Share point unvealed   apps in sharepoint 2013Share point unvealed   apps in sharepoint 2013
Share point unvealed apps in sharepoint 2013Alexander Meijers
 
Preparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with EasylPreparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with EasylLohith Goudagere Nagaraj
 
SharePoint on demand with System Center - Matija Blagus
SharePoint on demand with System Center - Matija BlagusSharePoint on demand with System Center - Matija Blagus
SharePoint on demand with System Center - Matija BlagusSPC Adriatics
 

What's hot (20)

Coders Workshop: API First Mobile Development Featuring Angular and Node
Coders Workshop: API First Mobile Development Featuring Angular and NodeCoders Workshop: API First Mobile Development Featuring Angular and Node
Coders Workshop: API First Mobile Development Featuring Angular and Node
 
New Enterprisre Capabilities in Telerik Platform
New Enterprisre Capabilities in Telerik PlatformNew Enterprisre Capabilities in Telerik Platform
New Enterprisre Capabilities in Telerik Platform
 
Continuous delivery with azure app service
Continuous delivery with azure app serviceContinuous delivery with azure app service
Continuous delivery with azure app service
 
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
WSO2Con EU 2015: Case Study – Digital Transformation: To Monetise Business by...
 
Firebase Overview
Firebase OverviewFirebase Overview
Firebase Overview
 
About JustplugIt services
About JustplugIt servicesAbout JustplugIt services
About JustplugIt services
 
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
 
Firebase Introduction
Firebase Introduction Firebase Introduction
Firebase Introduction
 
Intro to DotNetNuke 6
Intro to DotNetNuke 6Intro to DotNetNuke 6
Intro to DotNetNuke 6
 
SharePoint 2013 Search and Creating Dynamic Content Management Solutions
SharePoint 2013 Search and Creating Dynamic Content Management SolutionsSharePoint 2013 Search and Creating Dynamic Content Management Solutions
SharePoint 2013 Search and Creating Dynamic Content Management Solutions
 
Running Web & Mobile App on Azure App Service
Running Web & Mobile App on Azure App ServiceRunning Web & Mobile App on Azure App Service
Running Web & Mobile App on Azure App Service
 
Introduction to Salesforce UI API
Introduction to Salesforce UI APIIntroduction to Salesforce UI API
Introduction to Salesforce UI API
 
Introduction to Azure Functions - Tutorial
Introduction to Azure Functions - TutorialIntroduction to Azure Functions - Tutorial
Introduction to Azure Functions - Tutorial
 
Drag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress RollbaseDrag and Drop Application Development with Progress Rollbase
Drag and Drop Application Development with Progress Rollbase
 
O365 saturday: How to (remote) control office 365 with windows azure-slideshare
O365 saturday: How to (remote) control office 365 with windows azure-slideshareO365 saturday: How to (remote) control office 365 with windows azure-slideshare
O365 saturday: How to (remote) control office 365 with windows azure-slideshare
 
WSO2Con USA 2015: WSO2 Cloud - What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud - What it is, How it Works, and Where it’s GoingWSO2Con USA 2015: WSO2 Cloud - What it is, How it Works, and Where it’s Going
WSO2Con USA 2015: WSO2 Cloud - What it is, How it Works, and Where it’s Going
 
Azure App Service Architecture. Web Apps.
Azure App Service Architecture. Web Apps.Azure App Service Architecture. Web Apps.
Azure App Service Architecture. Web Apps.
 
Share point unvealed apps in sharepoint 2013
Share point unvealed   apps in sharepoint 2013Share point unvealed   apps in sharepoint 2013
Share point unvealed apps in sharepoint 2013
 
Preparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with EasylPreparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with Easyl
 
SharePoint on demand with System Center - Matija Blagus
SharePoint on demand with System Center - Matija BlagusSharePoint on demand with System Center - Matija Blagus
SharePoint on demand with System Center - Matija Blagus
 

Viewers also liked

How we took our server side application to the cloud and liked what we got, B...
How we took our server side application to the cloud and liked what we got, B...How we took our server side application to the cloud and liked what we got, B...
How we took our server side application to the cloud and liked what we got, B...DevOpsDays Tel Aviv
 
Presentación softeng agile-eu gimbernat
Presentación softeng  agile-eu gimbernatPresentación softeng  agile-eu gimbernat
Presentación softeng agile-eu gimbernatMICProductivity
 
EUGM15 - Zoltán Simon (Printnet): Drug Profile Matching - Drug Discovery by P...
EUGM15 - Zoltán Simon (Printnet): Drug Profile Matching - Drug Discovery by P...EUGM15 - Zoltán Simon (Printnet): Drug Profile Matching - Drug Discovery by P...
EUGM15 - Zoltán Simon (Printnet): Drug Profile Matching - Drug Discovery by P...ChemAxon
 
Servicios y Soluciones Ecommerce
Servicios y Soluciones Ecommerce Servicios y Soluciones Ecommerce
Servicios y Soluciones Ecommerce Viewnext
 
Servicios de Movilidad
Servicios de MovilidadServicios de Movilidad
Servicios de MovilidadViewnext
 
Valo Intranet in a Nutshell - Fall in ♥ with Your Intranet
Valo Intranet in a Nutshell - Fall in ♥ with Your IntranetValo Intranet in a Nutshell - Fall in ♥ with Your Intranet
Valo Intranet in a Nutshell - Fall in ♥ with Your IntranetValo
 
EUGM 2013 - Ian Berry, Bob Marmon (Evotec): Classification and analysis of 21...
EUGM 2013 - Ian Berry, Bob Marmon (Evotec): Classification and analysis of 21...EUGM 2013 - Ian Berry, Bob Marmon (Evotec): Classification and analysis of 21...
EUGM 2013 - Ian Berry, Bob Marmon (Evotec): Classification and analysis of 21...ChemAxon
 
Servicios Gestionados de Seguridad IT
Servicios Gestionados de Seguridad ITServicios Gestionados de Seguridad IT
Servicios Gestionados de Seguridad ITViewnext
 
Master pages
Master pagesMaster pages
Master pagesteach4uin
 
Servicios de Migración SAP HANA
Servicios de Migración SAP HANAServicios de Migración SAP HANA
Servicios de Migración SAP HANAViewnext
 
HVAC Control Systems— Get it Right the First Time! (Part 3)
HVAC Control Systems— Get it Right the First Time! (Part 3)HVAC Control Systems— Get it Right the First Time! (Part 3)
HVAC Control Systems— Get it Right the First Time! (Part 3)Dynamix Energy Services
 
Modelo CENIT. Servicios de Gestión de Aplicaciones e infraestructuras
Modelo CENIT. Servicios de Gestión de Aplicaciones e infraestructuras Modelo CENIT. Servicios de Gestión de Aplicaciones e infraestructuras
Modelo CENIT. Servicios de Gestión de Aplicaciones e infraestructuras Viewnext
 
Gestión de Activos Empresariales MAXIMO - VIEWNEXT
Gestión de Activos Empresariales MAXIMO - VIEWNEXTGestión de Activos Empresariales MAXIMO - VIEWNEXT
Gestión de Activos Empresariales MAXIMO - VIEWNEXTViewnext
 
Viewnext 2017
Viewnext 2017Viewnext 2017
Viewnext 2017Viewnext
 
AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...
AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...
AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...Amazon Web Services
 
Conoce mi último programa: #MENTORDYNAMICS365
Conoce mi último programa: #MENTORDYNAMICS365Conoce mi último programa: #MENTORDYNAMICS365
Conoce mi último programa: #MENTORDYNAMICS365Pablo Peralta
 
What’s New in Amazon Aurora for MySQL and PostgreSQL
What’s New in Amazon Aurora for MySQL and PostgreSQLWhat’s New in Amazon Aurora for MySQL and PostgreSQL
What’s New in Amazon Aurora for MySQL and PostgreSQLAmazon Web Services
 
Best Practices running SQL Server on AWS
Best Practices running SQL Server on AWSBest Practices running SQL Server on AWS
Best Practices running SQL Server on AWSAmazon Web Services
 
El secreto para migrar tus aplicaciones a azure optimizando el consumo y mejo...
El secreto para migrar tus aplicaciones a azure optimizando el consumo y mejo...El secreto para migrar tus aplicaciones a azure optimizando el consumo y mejo...
El secreto para migrar tus aplicaciones a azure optimizando el consumo y mejo...SOFTENG
 

Viewers also liked (20)

How we took our server side application to the cloud and liked what we got, B...
How we took our server side application to the cloud and liked what we got, B...How we took our server side application to the cloud and liked what we got, B...
How we took our server side application to the cloud and liked what we got, B...
 
Presentación softeng agile-eu gimbernat
Presentación softeng  agile-eu gimbernatPresentación softeng  agile-eu gimbernat
Presentación softeng agile-eu gimbernat
 
EUGM15 - Zoltán Simon (Printnet): Drug Profile Matching - Drug Discovery by P...
EUGM15 - Zoltán Simon (Printnet): Drug Profile Matching - Drug Discovery by P...EUGM15 - Zoltán Simon (Printnet): Drug Profile Matching - Drug Discovery by P...
EUGM15 - Zoltán Simon (Printnet): Drug Profile Matching - Drug Discovery by P...
 
Servicios y Soluciones Ecommerce
Servicios y Soluciones Ecommerce Servicios y Soluciones Ecommerce
Servicios y Soluciones Ecommerce
 
Servicios de Movilidad
Servicios de MovilidadServicios de Movilidad
Servicios de Movilidad
 
Valo Intranet in a Nutshell - Fall in ♥ with Your Intranet
Valo Intranet in a Nutshell - Fall in ♥ with Your IntranetValo Intranet in a Nutshell - Fall in ♥ with Your Intranet
Valo Intranet in a Nutshell - Fall in ♥ with Your Intranet
 
EUGM 2013 - Ian Berry, Bob Marmon (Evotec): Classification and analysis of 21...
EUGM 2013 - Ian Berry, Bob Marmon (Evotec): Classification and analysis of 21...EUGM 2013 - Ian Berry, Bob Marmon (Evotec): Classification and analysis of 21...
EUGM 2013 - Ian Berry, Bob Marmon (Evotec): Classification and analysis of 21...
 
Servicios Gestionados de Seguridad IT
Servicios Gestionados de Seguridad ITServicios Gestionados de Seguridad IT
Servicios Gestionados de Seguridad IT
 
Master pages
Master pagesMaster pages
Master pages
 
Servicios de Migración SAP HANA
Servicios de Migración SAP HANAServicios de Migración SAP HANA
Servicios de Migración SAP HANA
 
HVAC Control Systems— Get it Right the First Time! (Part 3)
HVAC Control Systems— Get it Right the First Time! (Part 3)HVAC Control Systems— Get it Right the First Time! (Part 3)
HVAC Control Systems— Get it Right the First Time! (Part 3)
 
Modelo CENIT. Servicios de Gestión de Aplicaciones e infraestructuras
Modelo CENIT. Servicios de Gestión de Aplicaciones e infraestructuras Modelo CENIT. Servicios de Gestión de Aplicaciones e infraestructuras
Modelo CENIT. Servicios de Gestión de Aplicaciones e infraestructuras
 
The Social Intranet
The Social IntranetThe Social Intranet
The Social Intranet
 
Gestión de Activos Empresariales MAXIMO - VIEWNEXT
Gestión de Activos Empresariales MAXIMO - VIEWNEXTGestión de Activos Empresariales MAXIMO - VIEWNEXT
Gestión de Activos Empresariales MAXIMO - VIEWNEXT
 
Viewnext 2017
Viewnext 2017Viewnext 2017
Viewnext 2017
 
AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...
AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...
AWS re:Invent 2016: Simplify Cloud Migration with AWS Server Migration Servic...
 
Conoce mi último programa: #MENTORDYNAMICS365
Conoce mi último programa: #MENTORDYNAMICS365Conoce mi último programa: #MENTORDYNAMICS365
Conoce mi último programa: #MENTORDYNAMICS365
 
What’s New in Amazon Aurora for MySQL and PostgreSQL
What’s New in Amazon Aurora for MySQL and PostgreSQLWhat’s New in Amazon Aurora for MySQL and PostgreSQL
What’s New in Amazon Aurora for MySQL and PostgreSQL
 
Best Practices running SQL Server on AWS
Best Practices running SQL Server on AWSBest Practices running SQL Server on AWS
Best Practices running SQL Server on AWS
 
El secreto para migrar tus aplicaciones a azure optimizando el consumo y mejo...
El secreto para migrar tus aplicaciones a azure optimizando el consumo y mejo...El secreto para migrar tus aplicaciones a azure optimizando el consumo y mejo...
El secreto para migrar tus aplicaciones a azure optimizando el consumo y mejo...
 

Similar to Developing Multi-tenant provider hosted apps: From Idea to Office Store

The app of the possible Shailen Sukul MBUG gets Modern Apps and Modern User ...
The app of the possible Shailen Sukul MBUG  gets Modern Apps and Modern User ...The app of the possible Shailen Sukul MBUG  gets Modern Apps and Modern User ...
The app of the possible Shailen Sukul MBUG gets Modern Apps and Modern User ...CSIRO National AI Centre
 
New SharePoint Features in Visual Studio 2012!
New SharePoint Features in Visual Studio 2012!New SharePoint Features in Visual Studio 2012!
New SharePoint Features in Visual Studio 2012!SPC Adriatics
 
Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013SPC Adriatics
 
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
 
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
 
Introduction to AngularJS with the Microsoft Graph
Introduction to AngularJS with the Microsoft GraphIntroduction to AngularJS with the Microsoft Graph
Introduction to AngularJS with the Microsoft GraphSPC Adriatics
 
SPC Adriatics 2016 - Introduction to AngularJS with the Microsoft Graph
SPC Adriatics 2016 - Introduction to AngularJS with the Microsoft GraphSPC Adriatics 2016 - Introduction to AngularJS with the Microsoft Graph
SPC Adriatics 2016 - Introduction to AngularJS with the Microsoft GraphSébastien Levert
 
Keynote speech
Keynote speechKeynote speech
Keynote speechBizTalk360
 
Univeral App using O365 API
Univeral App using O365 APIUniveral App using O365 API
Univeral App using O365 APISenthamil Selvan
 
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
 
Developer’s Independence Day: Introducing the SharePoint App Model
Developer’s Independence Day:Introducing the SharePoint App ModelDeveloper’s Independence Day:Introducing the SharePoint App Model
Developer’s Independence Day: Introducing the SharePoint App Modelbgerman
 
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
 
Office Track: SharePoint Apps for the IT Pro - Thomas Vochten
Office Track: SharePoint Apps for the IT Pro - Thomas VochtenOffice Track: SharePoint Apps for the IT Pro - Thomas Vochten
Office Track: SharePoint Apps for the IT Pro - Thomas VochtenITProceed
 
Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013Sonja Madsen
 
Integrating SaaS application using Microsoft’s Azure App Service Platform
Integrating SaaS application using Microsoft’s Azure App Service PlatformIntegrating SaaS application using Microsoft’s Azure App Service Platform
Integrating SaaS application using Microsoft’s Azure App Service PlatformBizTalk360
 
Adobe App Builder Overview & Get Started Guideline
Adobe App Builder  Overview & Get Started GuidelineAdobe App Builder  Overview & Get Started Guideline
Adobe App Builder Overview & Get Started GuidelineTuyen Nguyen Ngoc
 
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...Sébastien Levert
 
SharePoint Saturday Ottawa - From SharePoint to Office 365 Development
SharePoint Saturday Ottawa - From SharePoint to Office 365 DevelopmentSharePoint Saturday Ottawa - From SharePoint to Office 365 Development
SharePoint Saturday Ottawa - From SharePoint to Office 365 DevelopmentSébastien Levert
 

Similar to Developing Multi-tenant provider hosted apps: From Idea to Office Store (20)

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
 
The app of the possible Shailen Sukul MBUG gets Modern Apps and Modern User ...
The app of the possible Shailen Sukul MBUG  gets Modern Apps and Modern User ...The app of the possible Shailen Sukul MBUG  gets Modern Apps and Modern User ...
The app of the possible Shailen Sukul MBUG gets Modern Apps and Modern User ...
 
New SharePoint Features in Visual Studio 2012!
New SharePoint Features in Visual Studio 2012!New SharePoint Features in Visual Studio 2012!
New SharePoint Features in Visual Studio 2012!
 
Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013
 
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
 
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
 
Introduction to AngularJS with the Microsoft Graph
Introduction to AngularJS with the Microsoft GraphIntroduction to AngularJS with the Microsoft Graph
Introduction to AngularJS with the Microsoft Graph
 
SPC Adriatics 2016 - Introduction to AngularJS with the Microsoft Graph
SPC Adriatics 2016 - Introduction to AngularJS with the Microsoft GraphSPC Adriatics 2016 - Introduction to AngularJS with the Microsoft Graph
SPC Adriatics 2016 - Introduction to AngularJS with the Microsoft Graph
 
Keynote speech
Keynote speechKeynote speech
Keynote speech
 
Univeral App using O365 API
Univeral App using O365 APIUniveral App using O365 API
Univeral App using O365 API
 
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
 
Custom dev o365
Custom dev   o365Custom dev   o365
Custom dev o365
 
Developer’s Independence Day: Introducing the SharePoint App Model
Developer’s Independence Day:Introducing the SharePoint App ModelDeveloper’s Independence Day:Introducing the SharePoint App Model
Developer’s Independence Day: Introducing the SharePoint App Model
 
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
 
Office Track: SharePoint Apps for the IT Pro - Thomas Vochten
Office Track: SharePoint Apps for the IT Pro - Thomas VochtenOffice Track: SharePoint Apps for the IT Pro - Thomas Vochten
Office Track: SharePoint Apps for the IT Pro - Thomas Vochten
 
Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013
 
Integrating SaaS application using Microsoft’s Azure App Service Platform
Integrating SaaS application using Microsoft’s Azure App Service PlatformIntegrating SaaS application using Microsoft’s Azure App Service Platform
Integrating SaaS application using Microsoft’s Azure App Service Platform
 
Adobe App Builder Overview & Get Started Guideline
Adobe App Builder  Overview & Get Started GuidelineAdobe App Builder  Overview & Get Started Guideline
Adobe App Builder Overview & Get Started Guideline
 
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
 
SharePoint Saturday Ottawa - From SharePoint to Office 365 Development
SharePoint Saturday Ottawa - From SharePoint to Office 365 DevelopmentSharePoint Saturday Ottawa - From SharePoint to Office 365 Development
SharePoint Saturday Ottawa - From SharePoint to Office 365 Development
 

Recently uploaded

Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 

Recently uploaded (20)

2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 

Developing Multi-tenant provider hosted apps: From Idea to Office Store

  • 1. MULTI-TENANT PROVIDER HOSTED APPS From Idea to Office Store Biserka Cvetkovska
  • 2. BISERKA CVETKOVSKA SharePoint & Office365 Specialist @biserka_ biserkacvetkovska.com biserka.cvetkoska@agitavit.com
  • 4. THE SHAREPOINT APP (ADD-IN) MODEL • It came along with SharePoint 2013 • 4 terms to simplify the understanding of SharePoint • Site • People • Apps • Themes • Benefits • Initial core functionalities stay intact by custom solutions • Cloud-ready solutions • Openness
  • 6. MULTITENANCY • The same version of the app is installed on multiple tenants • Why should you develop multi-tenant apps? • Easy to maintain • Easily managed upgrades • No different versions of the app to take care of Multi-tenant provider hosted apps
  • 8. DEVELOPMENT TOOLS AND TEMPLATES • Tools required for SharePoint apps development • MS Visual Studio v2013+ • MS Azure SDK for .NET • Microsoft Office Developer Tools • OOB SharePoint app template • SharePoint App  SharePoint Project • Remote Web App  ASP.NET MVC Web Project • Web API in case of an extendibility in the future (with native mobile app in mind)
  • 10. DATA ACCESS IN A MULTI-TENANT APP • Entity Framework • Code First • Creating tables on demand • “Fixing” EF to work with a multi-tenant database
  • 11. IDENTITY MANAGEMENT IN A MULTI-TENANT APP • Identity management is hard. There are too many things to worry about • Storing passwords and secrets • Dealing with different parameters that work with different identity providers • Preventing prompts for credentials • … • Integration with Azure AD • OpenID Connect • ADAL (Azure Directory Authentication Library)
  • 12. OPENID CONNECT & ADAL - A TALE OF FRIENDSHIP
  • 13. PROVISIONING MULTI-TENANT APPS IN AZURE AD • Multi-tenant apps that enable authentication towards Azure AD must be registered in • Your company’s AD & • Each organization’s AD that will be using the app • Register your app by implementing a consent flow • Only global administrators can consent • Consent & give permissions to the app so it can access resources in your Azure AD
  • 14. CONSENT FLOW FOR MULTI-TENANT APPS
  • 15. DEMO
  • 16. PUBLISHING THE APP TO OFFICE STORE
  • 17. OFFICE STORE • Introduced to contribute to the simplicity of the App Model • Benefits • For users • Simple & fast installation of apps • Increasing productivity through apps that suit your needs • For developers • Great opportunity to promote your work • Get feedback from your users • Get paid through the Store • Publish your app to Office Store • How does the process go?
  • 18. “OPEN CREATIVITY. STRONGER COMMUNITY.” • The app model makes SharePoint to be more accessible for both users and developers • In addition makes the community even stronger • Not just the SharePoint community but the Web community in general • With Office Store and technologies (such as SPFx) that are yet to come, MS finally set SharePoint on the right path
  • 20. BISERKA CVETKOVSKA SharePoint & Office365 Specialist @biserka_ biserkacvetkovska.com biserka.cvetkoska@agitavit.com

Editor's Notes

  1. 22:18
  2. 22:18
  3. 22:18