Thomas Claudius Huber Trivadis Services AG. Daten aus Office 365 in die eigene App integrieren

Ähnliche Dokumente
Entwicklung einer REST-API zur Erstellung und Konfiguration von Microsoft Teams. Jan Kruse, utilitas GmbH

Oliver Scheer Chief Technical Advisor

Line-of-Business-Apps mit der Universal Windows Platform entwickeln. Thomas Claudius

Office 365 User Integration

Git-Grundlagen für Entwickler. Thomas Claudius

MVVM in Windows 8 und Windows Phone 8

Office 365 User Integration

Meine App, die Cloud und ich

Social Business Arena

OAuth 2.0. Ralf Hoffmann 03 /

Was gibt es Neues im Office 365 Umfeld?

Windows Azure für Java Architekten. Holger Sirtl Microsoft Deutschland GmbH

Mobile Backend in der

AZURE ACTIVE DIRECTORY

Thomas Claudius Huber. Asynchrone Programmierung mit C#

23. Januar, Zürich-Oerlikon

über mehrere Geräte hinweg...

Digicomp Microsoft Evolution Day ADFS Oliver Ryf. Partner:

Provider-hosted Add-Ins mit Azure. Carsten Büttemeier

Die S.O.L.I.D-Prinzipien für C# Entwickler Thomas Claudius

SAML2 und OAuth in der Cloud

Thomas Claudius Huber Trivadis Services AG. Endlich Cross-Platform: Universal- Windows-Apps für Windows 10

Demo: Sicherheitsmechanismen von Collaboration- und Community-Diensten

Control Templates. Thomas Claudius Huber

Flash, Network und Facebook. Steven Mohr

Raber+Märcker Techno Summit 2014 Microsoft Dynamics NAV 2013 R2 Überblick und Hintergründe zu aktuellen Version.

Neuerungen in Exchange Server 2016

{ "Einstöpseln" : "jetzt!" }

Daten in der Cloud mit Access, Office 365 und Apps foroffice Dirk Eberhardt

ASP.NET Web-API - Grundlagen

Best Practices - WatchGuard AuthPoint - Active Directory / LDAP Integration

Microsoft SharePoint. share it, do it!

Monty Möckel. Andreas Reisinger ÜBER UNS. Senior Technology Consultant IT Services Cloud & Datacenter

Die Neuerungen im Überblick

Microsoft Office 365 im Unternehmen

Mobile Backend in. Cloud. Azure Mobile Services / Websites / Active Directory /

User-Guide. von datac Kommunikationssysteme

InfoNet Day Groups, Delve, SharePoint App & Co. mission possible

INFONET DAY MODERN WORKPLACE 31. OKTOBER 2017

Identity & Access Management in der Cloud

DOAG 2009 Copyright 2009, Oracle Corporation

Überblick über die Windows Azure Platform

Microsoft Dynamics CRM 2016 What s New?

Preisliste Microsoft Office 365 von Swisscom. Gültig ab 1. Mai 2016

Kurzanleitung Microsoft Office365

Neue Funktionen der Version 10

SAP NetWeaver Gateway. 2013

Token statt Cookies dank JWT

Agenda. Ausgangssituation (Beispiel) PaaS oder IaaS? Migrationspfade Deep Dives. IaaS via Azure Site Recovery PaaS via SQL Deployment Wizard

Python VS Perl. Storage Monitoring per API statt SNMP. Björn Müller Marcel Denia. comnet GmbH

Modernes Windows 10 Deployment

Neue Funktionen der Version 10

Hybride Cloud-Infrastrukturen Bereitstellung & Verwaltung mit System Center 2012

Business Software für KMU. myfactory.api einrichten

Microsoft Azure für Java Entwickler

4. RADAR-WORKSHOP RADAR APPLICATION PROGRAMMING INTERFACE KARLSRUHE, 25./26. JUNI Matthias Razum, FIZ Karlsruhe

Integrated Search Einbindung von SharePoint Search in Office Apps Melanie Culver & Michael Appinger

Interaktive Berichte einbetten mit PowerBI Embedded. Lukas Lötters ORAYLIS GmbH

Deep Dive into WinRT-Controls:

Avanade Workplace HUB

Anleitung zur Integration der /data.mill API in SAP Java Applikationen

SharePoint 2013 The new way to work together

Data Templates. Thomas Claudius Huber

acoris App selector Ihre Entscheidungshilfe zur richtigen O365 APP

Enabling and Managing Office 365 MOC 20347

JEAF Cloud Plattform Der Workspace aus der Cloud

Systemvoraussetzungen und Architektur Nexthink for Service Desk

<Insert Picture Here> Ohne Fenster-zur-Welt SSO mit ios-apps und Oracle Access Manager

Quick Reference Guide Schnellstart Anleitung

!"#$"%&'()*$+()',!-+.'/',

Überblick. Teil A Das System zum Laufen bringen 23. Teil B Kommunikation mit Lync und Outlook 89. Teil C SharePoint einsetzen 255.

System Center 2012 R2 und Microsoft Azure. Marc Grote

MICROSOFT SHAREPOINT 2010 Microsoft s neue Wunderwaffe!? Eike Fiedrich. Herzlich Willkommen!

Zend PHP Cloud Application Platform

Office 365 Automation mit PowerShell. Smart. Simple. Secure Frank Kresse Head of Products

windowsphone.de Windows Phone. Willkommen im Hier und Jetzt.

OSIAM. Sichere Identitätsverwaltung auf Basis von SCIMv2 und OAuth2

Empowering Employees. Secure Productive Enterprise

Microsoft Azure: Ein Überblick für Entwickler. Malte Lantin Technical Evangelist, Developer Experience & Evangelism (DX) Microsoft Deutschland GmbH

APEX Office Print - Einfach Druck machen! Daniel Hochleitner Freelance APEX Developer, FOEX GmbH

Die Verpflichtung von Microsoft zu den allgemeinen Datenschutzvorschriften (GDPR)

Stand der Entwicklung von Shibboleth 2

Titel. System Center Orchestrator 2012 R2 Anleitung zur Installation

Jörg Neumann Acando GmbH

HERZLICH WILLKOMMEN SHAREPOINT 2013 DEEP DIVE APPS IOZ AG 1

dox42sap Dokumentation Christian Bauer

Mobile Development in.net mit Xamarin

IBM Connections 4.0 Neuerungen

Silverlight 5 die Neuerungen. Thomas Claudius Huber Senior Consultant Trivadis AG

Thomas Claudius Huber. Alles, was Sie über XAML wissen müssen

Gemeinsam zum Ziel. Moderne IT Basis für die Digitalisierung. 29. Juni 2017 Astoria, Olten. BrainConsult AG

SharePoint 2013 The new way to work together

SEARCH DRIVEN APPLICATIONS MIT DEM CONTENT SEARCH WEBPART

The app the crashes, before the breakpoint is reached: Code to the event:

System Center 2012 R2 und Microsoft Azure. Marc Grote

Die Top10 der Windows 7 Features für Entwickler. Peter Kirchner Program Manager ISV

DHL-Plugin for NopCommerce 3.60, 3.70, 3.80

SHAREPOINT NEXT GENERATION EIN AUSBLICK

Transkript:

Thomas Claudius Huber Trivadis Services AG Daten aus Office 365 in die eigene App integrieren

Thomas Claudius Huber Principal Consultant bei Trivadis Pluralsight-Autor, Buchautor C#, XAML, TypeScript, Azure www.thomasclaudiushuber.com @thomasclaudiush

Agenda 1. Was ist der Microsoft Graph? 2. App Registration & Security 3. Microsoft Graph in UWP-App nutzen

Die Welt ohne Microsoft Graph Unterschiedliche Endpunkte für Services wie Azure AD Outlook OneDrive Sharepoint Unterschiedliche Authentifizierung für Geschäfts-/Schulkonto Persönliches Konto

OneDrive https://api.onedrive.com/v1.0/drive OneDrive for Business https://contoso-my.sharepoint.com/personal/ user_contoso_com/_api/v2.0/drive Azure Active Directory Graph https://graph.windows.net/contoso.com/users https://graph.windows.net/contoso.com/groups Outlook Mail REST https://outlook.office.com/api/v2.0/me/messages & https://outlook.office.com/api/v2.0/me/events Windows Live Profile API https://apis.live.net/v5.0/me Persönliches Konto Sharepoint Profile API https://contoso.sharepoint.com/_api/sp.userpro files.peoplemanager/getmyproperties Exchange HD Picture API https://graph.microsoft.com/v1.0/me/photo Geschäfts-/Schulkonto Office Graph in Sharepoint Online https://contoso.sharepoint.com/_api/search/quer y?querytext='&properties=...

Microsoft Graph fasst die zig Endpunkte zu einem einzigen Endpunkt zusammen: https://graph.microsoft.com

Datenzugriff /me, /users, /groups, /messages, /drive,... Daten ablaufen /drive/items/<id> /lastmodifiedbyuser Auf Insights zugreifen Microsoft Graph /insights/trending Source: microsoft.com

Microsoft Graph Abfragen Get my profile Get my files Get my photo Get my mail Get my calendar Get my manager Get users in my organization Get people related to me Get my tasks Get my notes Get trending around me https://graph.microsoft.com/v1.0/me https://graph.microsoft.com/v1.0/me/drive/root/children https://graph.microsoft.com/v1.0/me/photo/$value https://graph.microsoft.com/v1.0/me/messages https://graph.microsoft.com/v1.0/me/calendar https://graph.microsoft.com/v1.0/me/manager https://graph.microsoft.com/v1.0/users https://graph.microsoft.com/beta/me/people https://graph.microsoft.com/beta/me/tasks https://graph.microsoft.com/beta/me/notes/notebooks https://graph.microsoft.com/beta/me/trendingaround

Microsoft Graph Abfrage-Muster https://graph.microsoft.com/{version}/{resource}?[odata_query_parameters] Stand heute gibt es zwei Versionen v1.0 für produktiven Einsatz beta für kommende APIs

Das Microsoft Graph Portal Enthält http://graph.microsoft.io - Dokumentation - Beispiele - SDKs - Graph Explorer zum Testen von Abfragen

DEMO Erste Schritte mit dem Microsoft Graph via http://graph.microsoft.io

OData Abfragen $select $expand $count $skip $orderby $filter $top $skiptoken https://graph.microsoft.io/docs/overview/query_parameters

OData-Metadaten OData stellt Metadaten zu Entitäten und Aktionen als XML-Datei bereit https://graph.microsoft.com/v1.0/$metadata https://graph.microsoft.com/beta/$metadata

DEMO Metadaten einsehen und verstehen

Aktionen ausführen Metadaten enthalten auch Actions Dateien erstellen, löschen, verschieben,... Excel-Dateien navigieren, aktualisieren, speichern,... Mails erstellen, versenden, beantworten,...

DEMO Eine Mail versenden

Agenda 1. Was ist der Microsoft Graph? 2. App Registration & Security 3. Microsoft Graph in UWP-App nutzen

Quelle: https://graph.microsoft.io/docs

Was muss man tun 1. App registrieren 2. OpenID Connect / OAuth2 verwenden 3. Auf Microsoft Graph zugreifen

App registrieren http://dev.office.com/app-registration Funktioniert für Geschäfts-/Schulkonto, nicht für persönliches Konto V2.0: http://apps.dev.microsoft.com - Wird für Azure AD v2.0-endpunkt verwendet - Funktioniert für Geschläfts-/Schulkonto UND für persönliches Konto - https://azure.microsoft.com/documentation/articles /active-directory-v2-limitations/

Azure AD v2.0 Endpunkt aufrufen Für OpenID Connect / OAuth2 sind diverse Libraries verfügbar Oder manuell via v2.0 Endpunkt https://login.microsoftonline.com/common/oauth2/v2.0/authorize https://login.microsoftonline.com/common/oauth2/v2.0/token

Den Authorize-Endpunkt manuell aufrufen

Testen mit dieser URL https://login.microsoftonline.com/common/oauth2/v2.0/authorize? client_id=enter_app_id &scope=openid+profile &response_type=id_token &redirect_uri=https://localhost &nonce=enter_random_number_here JSON Web Token (JWT) anschauen: http://calebb.net/

Wenn Du nicht Chuck Norris bist:

Wenn Du nicht Chuck Norris Dominic Baier bist: Nur zum Testen manuell aufrufen Ansonsten eine Library / SDK verwenden Azure AD Authentication Libary (ADAL) Microsoft Authentication Library (MSAL)... NuGet: Microsoft.Identity.Client (preview for.net) Dominic s Session zu OpenID Connect / OAuth2: 21. Sept, 16:15-17:30, Gutenberg 1

Agenda 1. Was ist der Microsoft Graph? 2. App Registration & Security 3. Microsoft Graph in UWP-App nutzen

REST oder SDK? SDK via NuGet: Microsoft.Graph OAuth2: Microsoft.Identity.Client (noch in Preview) Samples unter github.com/microsoftgraph Enthalten AuthenticationHelper-Klasse Zeigen sowohl REST als auch SDK

OneDrive Daten abrufen

OneDrive Daten abrufen var graphclient = AuthenticationHelper.GetAuthenticatedClient(); var request = graphclient.me.drive.root.search(".jpg").request().top(10); var collection = await request.getasync();

Inhalt eines Bildes abrufen var graphclient = AuthenticationHelper.GetAuthenticatedClient(); var request = graphclient.me.drive.items[selecteditem.id].content.request(); var stream = await request.getasync();

Mail versenden var request = graphclient.me.sendmail( message, false).request(); await request.postasync();

Agenda 1. Was ist der Microsoft Graph? 2. App Registration & Security 3. Microsoft Graph in UWP-App nutzen

Summary

Microsoft Graph vs. spezifische API Der Microsoft Graph ist eine Facade Im Hintergrund werden spezifische APIs aufgerufen, bspw. Onedrive: https://api.onedrive.com/v1.0/drive Outlook: https://outlook.office.com/api/v2.0/me/messages... Spezifische API nur dann verwenden, wenn Funktion in Microsoft Graph nicht vorhanden ist

Summary Microsoft Graph vereinheitlicht Zugriff auf O365-Daten Integration in die eigene App gestaltet sich simpel Es existieren zahlreiche SDKs REST-APIs lassen sich auch ohne SDK auf jeder Plattform aufrufen

Info / Resourcen Kontakt Thomas @thomasclaudiush thomas.huber@trivadis.com www.thomasclaudiushuber.com Session-Inhalt: www.thomasclaudiushuber.com/talks Office 365 Demo-Umgebung anlegen: - http://demos.microsoft.com - Graph Samples: http://github.com/microsoftgraph