gestion des apis avec azure api management - samir arezki

Post on 13-Apr-2017

114 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Software Architect chez Exakis - MVP Azure

Gérez vos APIs

avec

Azure API Management

Samir AREZKI

@itfana

#MSCloudSummit - MS Cloud Summit Paris 2017 Un événement proposé par Agile.Net, aOS, AZUG FR, CMD, GUSS

SPEAKER

Samir AREZKISoftware Architect chez Exakis

MVP Azure

@itfana

Agenda

1. Introduction

2. Etude de cas

3. Démarche

4. Mise en place

5. Conclusion

INTRODUCTION

C’EST QUOI UNE APIS ?

• Les API sont un moyen efficace de faire communiquer

entre elles deux applications.

CONSUMERSALWAYS CONNECTED

APPs ON DEVICES

PARTNERS

INTERNAL

APIs & DIGITAL TRANSFORMATION

• Les APIs alimentent les

applications et les

plateformes

• Les APIs sont la base

d’une stratégie multi-

canal et/ou omni-canal

APIs

Web Apps

Tablet

Mobile device

Gaming Console

Internet TV

Connected Car

Strategic Partner Integration

API ECONOMY

• Il y a plus de 20 millions de développeurs dans

le monde

• D'ici 2020, il y aura plus de 50 milliards

d'appareils connectés

API ECONOMY

Twitter

> 15B + API calls a day

Google

> 10 B + API calls a day

Facebook

> 7B API calls a day

Saleforce

> 1B + API calls a day

Ebay

> 1B + API calls a day

Netflix

1,5B API calls a day

LES OPPORTUNITÉS

• Étendre votre plate-forme– Ouvrir de nouveaux canaux

– Améliorer votre visibilité

– Présenter une façade uniforme

• Comprendre vos clients– Découvrir de nouveaux scénarios et marchés

– Prioriser vos offres

– Offrir plus de valeur

LES OPPORTUNITÉS

• Monétisation de vos données et services

– Vendre des APIs

– Augmenter les ventes via API

– Améliorer l'image de marque

– Améliorer l'agilité interne

MONÉTISER VOS DONNÉES ET SERVICES

API is the product

API projects the product

APIs promotes the product

API powers and feeds

the product

Direct revenue

Utility / Pay per transaction

Tiered Pricing Bands

Reach more placesProvide more utility

Allow deeper integration

Enable Mobile

Biz Development Lead Gen

User Acquisition

Advertising

Affiliate Programs

Brand promotion

Content AcquisitionPartner tie-in

Internal Innovation

Core value is tied up in the API

Extends availability of functionality to new places

Secondary function and indirect revenue impact

Content acquisition via the API

ETUDE DE CAS

LE CONTEXTE

• Client : Un groupe hôtelier

• En chiffre :

– En 2016: 1000 hôtels

– Cible 2020 : 5000 hôtels

LE BESOIN • Lancement d’un nouveau programme d’API

• Les objectifs du programme API : – Développement de nouvelles applications innovantes (web

/ mobiles)

– Ouverture d’APIs à des partenaires

– Analytiques sur l’utilisation des APIs pour le département marketing

– Animer une communauté de développeurs (internes et externes)

LES EXIGENCES – FOCUS APIS

• Faciliter l’utilisation des APIs par les développeurs

(internes/externes)

• Une expérience self-service

• Une solution globalisée

• Surveillance et contrôle des flux entrants et sortants

• Sécurité

DÉMARCHE

CYCLE DE VIE DES APIS

DESIGN

DEV

TEST

DEPLOY

MANAGE

MONITOR

ARCHITECTURE TECHNIQUE

APP DEVELOPERS

APPS

API PUBLISHERS

Hosted anywhere.Developed using any tech

nology.

BACKENDAPIs

DIRECT ORVPN

Publisher portal

Gateway

Developer Portal

MISE EN PLACE

ÉTAPES D’IMPLÉMENTATION1) API design

2) Develop

(Implement Logic)

Swagger

4) Publish 5) Share 7) Monitor

AzureMobile

Engagement

6) Control

3) Deploy

Developer Portal

API Apps

APIMAPIM APIMAPIM

API DESIGN

• Types d’APIs :

– Interne

– Externe

– Public/Privé

• RESTful

• Spécification

• Versioning

RENDEZ SWAG VOS APIS

• Swagger

– Décrire d’une manière agnostique et standard les APIs REST.

– Permet aux humains et aux ordinateurs de comprendre les capacités du service.

• The OpenAPI Specification

– https://github.com/OAI/OpenAPI-Specification

DÉVELOPPEMENT

• Frameworks :

– ASP.NET Web API

– ASP.NET Core

– JAVA

– Node.JS

– ….

DEMO 1

API Design & Development

DÉPLOIMENT

• Azure App Service - API App

– Service PaaS

– Hébergement d’APIs REST

• En .Net

• Ou autres technologies : Node.JS, Java, PHP…

DEMO 4

Déploiement

AZURE API MANAGEMENT

• Azure API Management

– Une solution clé en main (PaaS)

pour la publication d’APIs à

destination de développeurs

internes et externes

AZURE APIM – COMPOSANTS CLÉS (1/2)

• Publisher Portal :

– Interface d’administration pour

configurer votre programme d’API

• Gateway :

– le point de terminaison (Endpoint) des

APIs managées

• Policies :

– Les règles à appliquer sur les APIs

(restrictions, transformation

authentification, mise en cache, etc..)

Publisher Portal

Gateway

PoliciesDeveloper

Portal

AZURE APIM – COMPOSANTS CLÉS (2/2)

• Developer Portal

– Documentation des APIs

– Tester les APIs

– Demander de l’aide

– Etc

Publisher Portal

Gateway

PoliciesDeveloper

Portal

DEMO 5

APIM - Publisher Portal

Policies• Modifier le comportement de l'API via de la configuration

• Types : – Access restriction

– Authentication

– Transformation

– Advanced

– Custom

• La liste des policies : https://docs.microsoft.com/en-us/azure/api-management/api-management-policy-reference

Policies

DEMO 6

APIM - Policies

DEMO 7

APIM - Developer Portal

DEMO 8

Client Libraries / SDKs

ANALYTICS • Dashboard accessible

directement depuis le Publisher

Portal : – Usage :

• Calls, Bandwidth

– Health :

• Status codes, API response time,

Service response time, cache

– Activity :

• Developers, Products, Subscriptions,

APIs, Operations

Usage Health

Activity

ANALYTICS – SCENARIO AVANCÉ

ApplicationsAzure API Management

Azure EventHub

Azure Stream Analytics

PowerBI

Storage SQL Database

Log events to Azure Event

DEMO 8

APIM - Analytics

API Security • Transport

– HTTPS/SSL

• Authentification– HTTP Basic

– Client Certificates

– Authorization Servers• OAuth2

• OpenIdConnect

• Last Mile Security – Sécurisation du lien entre la Gateway et le Backend

DEMO 8

APIM - API Security

CONCLUSION

API MANAGEMENT & IPAAS VISION

• Stratégie IPaaS (IntegrationPlatform as a Service) sur Azure

• Composantes de cette stratégie :

– Logic Apps

– Connectors

– Azure Services : API Apps, Functions..

– Azure Service Bus

– API Management

Logic

Apps

AZURE APIM PUBLIC ROADMAP

http://aka.ms/apimroadmap

APIs - PREVIEW

Microsoft Azure makes all you want …

…except French Kiss!

QUESTIONS ?

http://bit.ly/MSCSevalJ2

Evaluez les sessions…

…et tentez de gagner une Surface Pro 4

Merci beaucoup à nos sponsors!

Thank you to all our sponsors!

Join the conversation

#MSCloudSummit

@MSCloudSummit

Merci Beaucoup! Thank you!

Join the conversation

#MSCloudSummit

@MSCloudSummit

top related