SlideShare a Scribd company logo
Office Add-Ins
Natallia Makarevich
Belarus SharePoint User Group © 2016
Agenda
(I’d like to
cover…)
Overview
How to get started with the environment
What tools do we need
What to expect from the technologies perspective
Agenda
(I’d like to
cover…)
AzureAD and OAuth 2.o Protocol
Office 365API
ADAL.JS
“Show me the code!” session
PnP patterns & practices
Before we
start…
EARLIER NOW (SINCE Q2 2015)
Overview
Web Application page inside an Office Application
Office JS Model
Contextual/Task Pane/ContentAdd-NS
Office application extensions usingWeb technologies
HTML
JS/CSS
REST/Web Services
SPA
PublishedAdd-
In Samples
How to get
started quickly? You need the ENVIRONMENT!
Thank you, Cap!
How to get
started quickly?
Azure Subscription
MSDN Premium (150$ per month)
Trial Subscription
AssociateTrial tenant with Office 365 (if necessary)
Trial Office 365 E3Tenant
Office Dev 1-year subscription
How to get
started quickly?
Virtual Machine configured
AzureVM
Workstation
Visual Studio (Code/2015 U1)
Office DevTools (with latest update pack)
Web Server (IIS/gulp web-server/etc.)
How to get
started
quickly?
I’m ready to CODE…
NAPA
https://www.napacloudapp.co
m/
Visual Studio
Yo Office
https://dev.office.com/blogs/cr
eating-office-add-ins-with-
any-editor-introducing-yo-
office
I want to
understand
Azure AD
authenticatio
n flow…
OpenID Connect Flow
User Authentication
Authorization Code
AccessToken + RefreshToken
Berear +AccessToken
ADAL
The OAuth 2.0 Authorization
Framework - Definition of
oAuth 2.0 protocol
Welcome to OpenID
connect - Protocol definition
Azure AD GitHub projects
ADAL Nuget Package for
.NET
jwt.io - Resolve JSOn web
tokens
I want to
understand
Azure AD
authenticatio
n flow…
OAuth 2.0 from Office 365
perspective
Add-ins can obtain a limited
access token to access the
Microsoft GraphAPI or the
Office 365 API
On behalf of a user
App Only access token
SHOW ME
THE CODE!!!
Let’s get coded :)
https://graphexplorer2.azurew
ebsites.net/
Yoman+Gulp
Office Add-Ins
Best Practices
They want us to
Add-ins to be native and
intuitive
Leverage UI framework
Entry points to be scaled
Add-in to run everywhere
Office UI Fabric
http://ngofficeuifabric.com/d
emos/
Try to use
PnP
Community
Check out these resources
Office 365 Dev PnP at GitHub
Office 365 Dev PnP Guidance
Office 365 Dev PnP MSDN
Office 365 Dev PnPTraining
https://github.com/OfficeDev
Or even contribute to the
code...
What to
expect from
technologies
perspective
Questions?
THANKYOU!

More Related Content

What's hot

O365Con18 - It's Gonna Be PowerApps and Flow - Penny Coventry
O365Con18 - It's Gonna Be PowerApps and Flow - Penny CoventryO365Con18 - It's Gonna Be PowerApps and Flow - Penny Coventry
O365Con18 - It's Gonna Be PowerApps and Flow - Penny Coventry
NCCOMMS
 
Real world business workflow with SharePoint designer 2013
Real world business workflow with SharePoint designer 2013Real world business workflow with SharePoint designer 2013
Real world business workflow with SharePoint designer 2013
Ivan Sanders
 
How to Create a Windows App with Project Siena, SharePoint & Office 365
 How to Create a Windows App with Project Siena, SharePoint & Office 365 How to Create a Windows App with Project Siena, SharePoint & Office 365
How to Create a Windows App with Project Siena, SharePoint & Office 365
Knut Relbe-Moe [MVP, MCT]
 
SharePoint Framework SPS Madrid 2016
SharePoint Framework SPS Madrid 2016SharePoint Framework SPS Madrid 2016
SharePoint Framework SPS Madrid 2016
Sonja Madsen
 
SharePoint wizards - no magic needed, just use Microsoft Flow
SharePoint wizards - no magic needed, just use Microsoft FlowSharePoint wizards - no magic needed, just use Microsoft Flow
SharePoint wizards - no magic needed, just use Microsoft Flow
BIWUG
 
Bend Sharepoint Approval Workflow to your Will
Bend Sharepoint Approval Workflow to your WillBend Sharepoint Approval Workflow to your Will
Bend Sharepoint Approval Workflow to your Will
Tamara Bredemus
 
Get your SharePoint spinning with SQL Server
Get your SharePoint spinning with SQL ServerGet your SharePoint spinning with SQL Server
Get your SharePoint spinning with SQL Server
Knut Relbe-Moe [MVP, MCT]
 
Office Add-Ins
Office Add-InsOffice Add-Ins
Office Add-Ins
Spikes NV
 
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practicesSPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
Knut Relbe-Moe [MVP, MCT]
 
Workflows in SharePoint 2013: Architecture #spsbe
Workflows in SharePoint 2013: Architecture#spsbeWorkflows in SharePoint 2013: Architecture#spsbe
Workflows in SharePoint 2013: Architecture #spsbe
Spikes NV
 
Building Scalable SharePoint 2013 Workflows - WF101 - SPFestDC
Building Scalable SharePoint 2013 Workflows - WF101 - SPFestDCBuilding Scalable SharePoint 2013 Workflows - WF101 - SPFestDC
Building Scalable SharePoint 2013 Workflows - WF101 - SPFestDC
Brian Culver
 
Azure and the Modern Datacenter - Azure Networking
Azure and the Modern Datacenter - Azure NetworkingAzure and the Modern Datacenter - Azure Networking
Azure and the Modern Datacenter - Azure Networking
Michael Blumenthal (Microsoft MVP)
 
Microsoft Azure and Microsoft 365 - How Will They Help You
Microsoft Azure and Microsoft 365 - How Will They Help YouMicrosoft Azure and Microsoft 365 - How Will They Help You
Microsoft Azure and Microsoft 365 - How Will They Help You
Suhail Jamaldeen
 
I03 migration from on premises to office365 - tips tricks and hows
I03 migration from on premises to office365 - tips tricks and howsI03 migration from on premises to office365 - tips tricks and hows
I03 migration from on premises to office365 - tips tricks and hows
Knut Relbe-Moe [MVP, MCT]
 
ECS19 - Liz Sundet - Real World Use Cases for Microsoft Teams
ECS19 - Liz Sundet - Real World Use Cases for Microsoft TeamsECS19 - Liz Sundet - Real World Use Cases for Microsoft Teams
ECS19 - Liz Sundet - Real World Use Cases for Microsoft Teams
European Collaboration Summit
 
Actionspace SharePoint screens (SP 2013 and Office 365)
Actionspace SharePoint screens (SP 2013 and Office 365)Actionspace SharePoint screens (SP 2013 and Office 365)
Actionspace SharePoint screens (SP 2013 and Office 365)
Actionspace
 
Be a Modern SharePoint Developer
Be a Modern SharePoint DeveloperBe a Modern SharePoint Developer
Be a Modern SharePoint Developer
Suhail Jamaldeen
 
Don't simply deploy, transform! Build your digital workplace in Office 365
Don't simply deploy, transform! Build your digital workplace in Office 365Don't simply deploy, transform! Build your digital workplace in Office 365
Don't simply deploy, transform! Build your digital workplace in Office 365
BIWUG
 
Workflows for share point 2013
Workflows for share point 2013Workflows for share point 2013
Workflows for share point 2013
Prabath Fonseka
 
Microsoft PowerApps and Flow
Microsoft PowerApps and FlowMicrosoft PowerApps and Flow
Microsoft PowerApps and Flow
Steve Knutson
 

What's hot (20)

O365Con18 - It's Gonna Be PowerApps and Flow - Penny Coventry
O365Con18 - It's Gonna Be PowerApps and Flow - Penny CoventryO365Con18 - It's Gonna Be PowerApps and Flow - Penny Coventry
O365Con18 - It's Gonna Be PowerApps and Flow - Penny Coventry
 
Real world business workflow with SharePoint designer 2013
Real world business workflow with SharePoint designer 2013Real world business workflow with SharePoint designer 2013
Real world business workflow with SharePoint designer 2013
 
How to Create a Windows App with Project Siena, SharePoint & Office 365
 How to Create a Windows App with Project Siena, SharePoint & Office 365 How to Create a Windows App with Project Siena, SharePoint & Office 365
How to Create a Windows App with Project Siena, SharePoint & Office 365
 
SharePoint Framework SPS Madrid 2016
SharePoint Framework SPS Madrid 2016SharePoint Framework SPS Madrid 2016
SharePoint Framework SPS Madrid 2016
 
SharePoint wizards - no magic needed, just use Microsoft Flow
SharePoint wizards - no magic needed, just use Microsoft FlowSharePoint wizards - no magic needed, just use Microsoft Flow
SharePoint wizards - no magic needed, just use Microsoft Flow
 
Bend Sharepoint Approval Workflow to your Will
Bend Sharepoint Approval Workflow to your WillBend Sharepoint Approval Workflow to your Will
Bend Sharepoint Approval Workflow to your Will
 
Get your SharePoint spinning with SQL Server
Get your SharePoint spinning with SQL ServerGet your SharePoint spinning with SQL Server
Get your SharePoint spinning with SQL Server
 
Office Add-Ins
Office Add-InsOffice Add-Ins
Office Add-Ins
 
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practicesSPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
 
Workflows in SharePoint 2013: Architecture #spsbe
Workflows in SharePoint 2013: Architecture#spsbeWorkflows in SharePoint 2013: Architecture#spsbe
Workflows in SharePoint 2013: Architecture #spsbe
 
Building Scalable SharePoint 2013 Workflows - WF101 - SPFestDC
Building Scalable SharePoint 2013 Workflows - WF101 - SPFestDCBuilding Scalable SharePoint 2013 Workflows - WF101 - SPFestDC
Building Scalable SharePoint 2013 Workflows - WF101 - SPFestDC
 
Azure and the Modern Datacenter - Azure Networking
Azure and the Modern Datacenter - Azure NetworkingAzure and the Modern Datacenter - Azure Networking
Azure and the Modern Datacenter - Azure Networking
 
Microsoft Azure and Microsoft 365 - How Will They Help You
Microsoft Azure and Microsoft 365 - How Will They Help YouMicrosoft Azure and Microsoft 365 - How Will They Help You
Microsoft Azure and Microsoft 365 - How Will They Help You
 
I03 migration from on premises to office365 - tips tricks and hows
I03 migration from on premises to office365 - tips tricks and howsI03 migration from on premises to office365 - tips tricks and hows
I03 migration from on premises to office365 - tips tricks and hows
 
ECS19 - Liz Sundet - Real World Use Cases for Microsoft Teams
ECS19 - Liz Sundet - Real World Use Cases for Microsoft TeamsECS19 - Liz Sundet - Real World Use Cases for Microsoft Teams
ECS19 - Liz Sundet - Real World Use Cases for Microsoft Teams
 
Actionspace SharePoint screens (SP 2013 and Office 365)
Actionspace SharePoint screens (SP 2013 and Office 365)Actionspace SharePoint screens (SP 2013 and Office 365)
Actionspace SharePoint screens (SP 2013 and Office 365)
 
Be a Modern SharePoint Developer
Be a Modern SharePoint DeveloperBe a Modern SharePoint Developer
Be a Modern SharePoint Developer
 
Don't simply deploy, transform! Build your digital workplace in Office 365
Don't simply deploy, transform! Build your digital workplace in Office 365Don't simply deploy, transform! Build your digital workplace in Office 365
Don't simply deploy, transform! Build your digital workplace in Office 365
 
Workflows for share point 2013
Workflows for share point 2013Workflows for share point 2013
Workflows for share point 2013
 
Microsoft PowerApps and Flow
Microsoft PowerApps and FlowMicrosoft PowerApps and Flow
Microsoft PowerApps and Flow
 

Viewers also liked

Presentaciócursfica
PresentaciócursficaPresentaciócursfica
Presentaciócursficaclarart
 
Оценка сайтов - сложные ситуации
Оценка сайтов - сложные ситуацииОценка сайтов - сложные ситуации
Оценка сайтов - сложные ситуации
SEO_Experts
 
Universell utforming som verktøy for betre nettsider
Universell utforming som verktøy for betre nettsiderUniversell utforming som verktøy for betre nettsider
Universell utforming som verktøy for betre nettsider
audmaha
 
Modified Risk Analysis Model APRAM
Modified Risk Analysis Model APRAMModified Risk Analysis Model APRAM
Modified Risk Analysis Model APRAM
nadeemovic
 
Cubanfire.oms
Cubanfire.omsCubanfire.oms
Cubanfire.oms
c_liberty
 
Презентация о работе "Центра информирования населения о предоставлении образо...
Презентация о работе "Центра информирования населения о предоставлении образо...Презентация о работе "Центра информирования населения о предоставлении образо...
Презентация о работе "Центра информирования населения о предоставлении образо...
Amir Abazov
 
Tugas Ke IV Mekanika Tanah I, Redha Arima RM
Tugas Ke IV Mekanika Tanah I, Redha Arima RMTugas Ke IV Mekanika Tanah I, Redha Arima RM
Tugas Ke IV Mekanika Tanah I, Redha Arima RM
Redha RM
 
Основы Интернет
Основы ИнтернетОсновы Интернет
Основы ИнтернетYuSvyrydenko
 
Communicatie is topsport - Corine van Impelen
Communicatie is topsport - Corine van ImpelenCommunicatie is topsport - Corine van Impelen
Communicatie is topsport - Corine van Impelen
Wit_Bestuurscommunicatie
 
Carol I, The first King of Romania
Carol I, The first King of RomaniaCarol I, The first King of Romania
Carol I, The first King of Romania
HuyHuang
 
Порядок действий при угрозе террористического акта
Порядок действий при угрозе террористического актаПорядок действий при угрозе террористического акта
Порядок действий при угрозе террористического акта
Amir Abazov
 
bulungi creative
bulungi creativebulungi creative
bulungi creative
bulungicreative
 
Bulungi Creative
Bulungi CreativeBulungi Creative
Bulungi Creative
bulungicreative
 

Viewers also liked (14)

Presentaciócursfica
PresentaciócursficaPresentaciócursfica
Presentaciócursfica
 
Оценка сайтов - сложные ситуации
Оценка сайтов - сложные ситуацииОценка сайтов - сложные ситуации
Оценка сайтов - сложные ситуации
 
Universell utforming som verktøy for betre nettsider
Universell utforming som verktøy for betre nettsiderUniversell utforming som verktøy for betre nettsider
Universell utforming som verktøy for betre nettsider
 
Modified Risk Analysis Model APRAM
Modified Risk Analysis Model APRAMModified Risk Analysis Model APRAM
Modified Risk Analysis Model APRAM
 
Cubanfire.oms
Cubanfire.omsCubanfire.oms
Cubanfire.oms
 
Презентация о работе "Центра информирования населения о предоставлении образо...
Презентация о работе "Центра информирования населения о предоставлении образо...Презентация о работе "Центра информирования населения о предоставлении образо...
Презентация о работе "Центра информирования населения о предоставлении образо...
 
Tugas Ke IV Mekanika Tanah I, Redha Arima RM
Tugas Ke IV Mekanika Tanah I, Redha Arima RMTugas Ke IV Mekanika Tanah I, Redha Arima RM
Tugas Ke IV Mekanika Tanah I, Redha Arima RM
 
Основы Интернет
Основы ИнтернетОсновы Интернет
Основы Интернет
 
Communicatie is topsport - Corine van Impelen
Communicatie is topsport - Corine van ImpelenCommunicatie is topsport - Corine van Impelen
Communicatie is topsport - Corine van Impelen
 
Carol I, The first King of Romania
Carol I, The first King of RomaniaCarol I, The first King of Romania
Carol I, The first King of Romania
 
заохочення і покарання
заохочення  і покараннязаохочення  і покарання
заохочення і покарання
 
Порядок действий при угрозе террористического акта
Порядок действий при угрозе террористического актаПорядок действий при угрозе террористического акта
Порядок действий при угрозе террористического акта
 
bulungi creative
bulungi creativebulungi creative
bulungi creative
 
Bulungi Creative
Bulungi CreativeBulungi Creative
Bulungi Creative
 

Similar to Office Add-Ins

Yes, You Can Develop for SharePoint
Yes, You Can Develop for SharePointYes, You Can Develop for SharePoint
Yes, You Can Develop for SharePoint
Elizabeth Szabo
 
O365Engage17 - Supercharging Your Productivity and Business with Microsoft Po...
O365Engage17 - Supercharging Your Productivity and Business with Microsoft Po...O365Engage17 - Supercharging Your Productivity and Business with Microsoft Po...
O365Engage17 - Supercharging Your Productivity and Business with Microsoft Po...
NCCOMMS
 
#SPSNYC 2019 Automating your digital workplace provisioning with #MicrosoftGr...
#SPSNYC 2019 Automating your digital workplace provisioning with #MicrosoftGr...#SPSNYC 2019 Automating your digital workplace provisioning with #MicrosoftGr...
#SPSNYC 2019 Automating your digital workplace provisioning with #MicrosoftGr...
Vincent Biret
 
#SPFestSEA Automate digital workplace provisioning with #MicrosoftGraph and #...
#SPFestSEA Automate digital workplace provisioning with #MicrosoftGraph and #...#SPFestSEA Automate digital workplace provisioning with #MicrosoftGraph and #...
#SPFestSEA Automate digital workplace provisioning with #MicrosoftGraph and #...
Vincent Biret
 
Office apps in Office 365 - Napa the next big thing
Office apps in Office 365 - Napa the next big thingOffice apps in Office 365 - Napa the next big thing
Office apps in Office 365 - Napa the next big thing
SPC Adriatics
 
#SPFestDC Automate your digital workplace provisioning with #Microsoft Graph ...
#SPFestDC Automate your digital workplace provisioning with #Microsoft Graph ...#SPFestDC Automate your digital workplace provisioning with #Microsoft Graph ...
#SPFestDC Automate your digital workplace provisioning with #Microsoft Graph ...
Vincent Biret
 
Comment tirer partie de Visual Studio Online pour vos développements SharePoint
Comment tirer partie de Visual Studio Online pour vos développements SharePointComment tirer partie de Visual Studio Online pour vos développements SharePoint
Comment tirer partie de Visual Studio Online pour vos développements SharePoint
Gilles Pommier
 
PowerApps Deep Dive
PowerApps Deep DivePowerApps Deep Dive
PowerApps Deep Dive
SPC Adriatics
 
BizSpark Startup Night Windows Azure March 29, 2011
BizSpark Startup Night Windows Azure March 29, 2011BizSpark Startup Night Windows Azure March 29, 2011
BizSpark Startup Night Windows Azure March 29, 2011
Spiffy
 
2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development 2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development
Chris O'Connor
 
No-code developer options in Office 365 and SharePoint 2013
No-code developer options in Office 365 and SharePoint 2013No-code developer options in Office 365 and SharePoint 2013
No-code developer options in Office 365 and SharePoint 2013
Asif Rehmani
 
#MicrosoftGraph Community call - automating your digital workplace provisioni...
#MicrosoftGraph Community call - automating your digital workplace provisioni...#MicrosoftGraph Community call - automating your digital workplace provisioni...
#MicrosoftGraph Community call - automating your digital workplace provisioni...
Vincent Biret
 
#SPSToronto Digital Workplace provisioning with #MicrosoftGraph and #Azure fu...
#SPSToronto Digital Workplace provisioning with #MicrosoftGraph and #Azure fu...#SPSToronto Digital Workplace provisioning with #MicrosoftGraph and #Azure fu...
#SPSToronto Digital Workplace provisioning with #MicrosoftGraph and #Azure fu...
Vincent Biret
 
Integrated Proposal (Vsts Sps Tfs) - MS stack
Integrated Proposal   (Vsts Sps Tfs) - MS stackIntegrated Proposal   (Vsts Sps Tfs) - MS stack
Integrated Proposal (Vsts Sps Tfs) - MS stack
Bijoy Viswanadhan
 
CVNUG - Share Point Development
CVNUG - Share Point DevelopmentCVNUG - Share Point Development
CVNUG - Share Point Development
ryanaoliveira
 
Microsoft Flow advanced: tips, pitfalls, problems and warnings to be known be...
Microsoft Flow advanced: tips, pitfalls, problems and warnings to be known be...Microsoft Flow advanced: tips, pitfalls, problems and warnings to be known be...
Microsoft Flow advanced: tips, pitfalls, problems and warnings to be known be...
BIWUG
 
Using office add ins to solve business problems-SharePoint Saturday Redmond 2015
Using office add ins to solve business problems-SharePoint Saturday Redmond 2015Using office add ins to solve business problems-SharePoint Saturday Redmond 2015
Using office add ins to solve business problems-SharePoint Saturday Redmond 2015
Ryan Schouten
 
Webinar on Different types of SharePoint architectural models
Webinar on Different types of SharePoint architectural modelsWebinar on Different types of SharePoint architectural models
Webinar on Different types of SharePoint architectural models
Vignesh Ganesan I Microsoft MVP
 
MargeshPatel_Resume
MargeshPatel_ResumeMargeshPatel_Resume
MargeshPatel_Resume
Margesh Patel
 
Serverless Computing with Azure
Serverless Computing with AzureServerless Computing with Azure
Serverless Computing with Azure
Analben Mehta
 

Similar to Office Add-Ins (20)

Yes, You Can Develop for SharePoint
Yes, You Can Develop for SharePointYes, You Can Develop for SharePoint
Yes, You Can Develop for SharePoint
 
O365Engage17 - Supercharging Your Productivity and Business with Microsoft Po...
O365Engage17 - Supercharging Your Productivity and Business with Microsoft Po...O365Engage17 - Supercharging Your Productivity and Business with Microsoft Po...
O365Engage17 - Supercharging Your Productivity and Business with Microsoft Po...
 
#SPSNYC 2019 Automating your digital workplace provisioning with #MicrosoftGr...
#SPSNYC 2019 Automating your digital workplace provisioning with #MicrosoftGr...#SPSNYC 2019 Automating your digital workplace provisioning with #MicrosoftGr...
#SPSNYC 2019 Automating your digital workplace provisioning with #MicrosoftGr...
 
#SPFestSEA Automate digital workplace provisioning with #MicrosoftGraph and #...
#SPFestSEA Automate digital workplace provisioning with #MicrosoftGraph and #...#SPFestSEA Automate digital workplace provisioning with #MicrosoftGraph and #...
#SPFestSEA Automate digital workplace provisioning with #MicrosoftGraph and #...
 
Office apps in Office 365 - Napa the next big thing
Office apps in Office 365 - Napa the next big thingOffice apps in Office 365 - Napa the next big thing
Office apps in Office 365 - Napa the next big thing
 
#SPFestDC Automate your digital workplace provisioning with #Microsoft Graph ...
#SPFestDC Automate your digital workplace provisioning with #Microsoft Graph ...#SPFestDC Automate your digital workplace provisioning with #Microsoft Graph ...
#SPFestDC Automate your digital workplace provisioning with #Microsoft Graph ...
 
Comment tirer partie de Visual Studio Online pour vos développements SharePoint
Comment tirer partie de Visual Studio Online pour vos développements SharePointComment tirer partie de Visual Studio Online pour vos développements SharePoint
Comment tirer partie de Visual Studio Online pour vos développements SharePoint
 
PowerApps Deep Dive
PowerApps Deep DivePowerApps Deep Dive
PowerApps Deep Dive
 
BizSpark Startup Night Windows Azure March 29, 2011
BizSpark Startup Night Windows Azure March 29, 2011BizSpark Startup Night Windows Azure March 29, 2011
BizSpark Startup Night Windows Azure March 29, 2011
 
2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development 2013 - Back to the Future with Client/Server Development
2013 - Back to the Future with Client/Server Development
 
No-code developer options in Office 365 and SharePoint 2013
No-code developer options in Office 365 and SharePoint 2013No-code developer options in Office 365 and SharePoint 2013
No-code developer options in Office 365 and SharePoint 2013
 
#MicrosoftGraph Community call - automating your digital workplace provisioni...
#MicrosoftGraph Community call - automating your digital workplace provisioni...#MicrosoftGraph Community call - automating your digital workplace provisioni...
#MicrosoftGraph Community call - automating your digital workplace provisioni...
 
#SPSToronto Digital Workplace provisioning with #MicrosoftGraph and #Azure fu...
#SPSToronto Digital Workplace provisioning with #MicrosoftGraph and #Azure fu...#SPSToronto Digital Workplace provisioning with #MicrosoftGraph and #Azure fu...
#SPSToronto Digital Workplace provisioning with #MicrosoftGraph and #Azure fu...
 
Integrated Proposal (Vsts Sps Tfs) - MS stack
Integrated Proposal   (Vsts Sps Tfs) - MS stackIntegrated Proposal   (Vsts Sps Tfs) - MS stack
Integrated Proposal (Vsts Sps Tfs) - MS stack
 
CVNUG - Share Point Development
CVNUG - Share Point DevelopmentCVNUG - Share Point Development
CVNUG - Share Point Development
 
Microsoft Flow advanced: tips, pitfalls, problems and warnings to be known be...
Microsoft Flow advanced: tips, pitfalls, problems and warnings to be known be...Microsoft Flow advanced: tips, pitfalls, problems and warnings to be known be...
Microsoft Flow advanced: tips, pitfalls, problems and warnings to be known be...
 
Using office add ins to solve business problems-SharePoint Saturday Redmond 2015
Using office add ins to solve business problems-SharePoint Saturday Redmond 2015Using office add ins to solve business problems-SharePoint Saturday Redmond 2015
Using office add ins to solve business problems-SharePoint Saturday Redmond 2015
 
Webinar on Different types of SharePoint architectural models
Webinar on Different types of SharePoint architectural modelsWebinar on Different types of SharePoint architectural models
Webinar on Different types of SharePoint architectural models
 
MargeshPatel_Resume
MargeshPatel_ResumeMargeshPatel_Resume
MargeshPatel_Resume
 
Serverless Computing with Azure
Serverless Computing with AzureServerless Computing with Azure
Serverless Computing with Azure
 

Recently uploaded

Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
TIPNGVN2
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 

Recently uploaded (20)

Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 

Office Add-Ins

  • 1. Office Add-Ins Natallia Makarevich Belarus SharePoint User Group © 2016
  • 2. Agenda (I’d like to cover…) Overview How to get started with the environment What tools do we need What to expect from the technologies perspective
  • 3. Agenda (I’d like to cover…) AzureAD and OAuth 2.o Protocol Office 365API ADAL.JS “Show me the code!” session PnP patterns & practices
  • 5. Overview Web Application page inside an Office Application Office JS Model Contextual/Task Pane/ContentAdd-NS Office application extensions usingWeb technologies HTML JS/CSS REST/Web Services SPA
  • 7. How to get started quickly? You need the ENVIRONMENT! Thank you, Cap!
  • 8. How to get started quickly? Azure Subscription MSDN Premium (150$ per month) Trial Subscription AssociateTrial tenant with Office 365 (if necessary) Trial Office 365 E3Tenant Office Dev 1-year subscription
  • 9. How to get started quickly? Virtual Machine configured AzureVM Workstation Visual Studio (Code/2015 U1) Office DevTools (with latest update pack) Web Server (IIS/gulp web-server/etc.)
  • 10. How to get started quickly? I’m ready to CODE… NAPA https://www.napacloudapp.co m/ Visual Studio Yo Office https://dev.office.com/blogs/cr eating-office-add-ins-with- any-editor-introducing-yo- office
  • 11. I want to understand Azure AD authenticatio n flow… OpenID Connect Flow User Authentication Authorization Code AccessToken + RefreshToken Berear +AccessToken ADAL The OAuth 2.0 Authorization Framework - Definition of oAuth 2.0 protocol Welcome to OpenID connect - Protocol definition Azure AD GitHub projects ADAL Nuget Package for .NET jwt.io - Resolve JSOn web tokens
  • 12. I want to understand Azure AD authenticatio n flow… OAuth 2.0 from Office 365 perspective Add-ins can obtain a limited access token to access the Microsoft GraphAPI or the Office 365 API On behalf of a user App Only access token
  • 13. SHOW ME THE CODE!!! Let’s get coded :) https://graphexplorer2.azurew ebsites.net/ Yoman+Gulp
  • 14. Office Add-Ins Best Practices They want us to Add-ins to be native and intuitive Leverage UI framework Entry points to be scaled Add-in to run everywhere Office UI Fabric http://ngofficeuifabric.com/d emos/ Try to use
  • 15. PnP Community Check out these resources Office 365 Dev PnP at GitHub Office 365 Dev PnP Guidance Office 365 Dev PnP MSDN Office 365 Dev PnPTraining https://github.com/OfficeDev Or even contribute to the code...

Editor's Notes

  1. 1
  2. 5
  3. 6
  4. 7
  5. 8
  6. 9