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 AREZKI
Software 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.
CONSUMERS
ALWAYS 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 places
Provide more utility
Allow deeper integration
Enable Mobile
Biz Development Lead Gen
User Acquisition
Advertising
Affiliate Programs
Brand promotion
Content Acquisition
Partner 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.
BACKEND
APIs
DIRECT OR
VPN
Publisher portal
Gateway
Developer Portal
MISE EN PLACE
ÉTAPES D’IMPLÉMENTATION
1) API design
2) Develop
(Implement Logic)
Swagger
4) Publish 5) Share7) Monitor
Azure
Mobile
Engageme
nt
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
Policies
Developer
Portal
AZURE APIM – COMPOSANTS CLÉS (2/2)
• Developer Portal
– Documentation des APIs
– Tester les APIs
– Demander de l’aide
– Etc
Publisher
Portal
Gateway
Policies
Developer
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É
Applications
Azure 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 (Integration
Platform 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

Gestion des APIs avec Azure API Management - Samir AREZKI

  • 1.
    Software Architect chezExakis - MVP Azure Gérez vos APIs avec Azure API Management Samir AREZKI @itfana
  • 2.
    #MSCloudSummit - MSCloud Summit Paris 2017 Un événement proposé par Agile.Net, aOS, AZUG FR, CMD, GUSS SPEAKER Samir AREZKI Software Architect chez Exakis MVP Azure @itfana
  • 3.
    Agenda 1. Introduction 2. Etudede cas 3. Démarche 4. Mise en place 5. Conclusion
  • 4.
  • 5.
    C’EST QUOI UNEAPIS ? • Les API sont un moyen efficace de faire communiquer entre elles deux applications. CONSUMERS ALWAYS CONNECTED APPs ON DEVICES PARTNERS INTERNAL
  • 6.
    APIs & DIGITALTRANSFORMATION • 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
  • 7.
    API ECONOMY • Ily 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
  • 8.
    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
  • 9.
    LES OPPORTUNITÉS • Étendrevotre 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
  • 10.
    LES OPPORTUNITÉS • Monétisationde vos données et services – Vendre des APIs – Augmenter les ventes via API – Améliorer l'image de marque – Améliorer l'agilité interne
  • 11.
    MONÉTISER VOS DONNÉESET 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 places Provide more utility Allow deeper integration Enable Mobile Biz Development Lead Gen User Acquisition Advertising Affiliate Programs Brand promotion Content Acquisition Partner 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
  • 12.
  • 13.
    LE CONTEXTE • Client: Un groupe hôtelier • En chiffre : – En 2016: 1000 hôtels – Cible 2020 : 5000 hôtels
  • 14.
    LE BESOIN • Lancementd’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)
  • 15.
    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é
  • 16.
  • 17.
    CYCLE DE VIEDES APIS DESIGN DEV TEST DEPLOY MANAGE MONITOR
  • 18.
    ARCHITECTURE TECHNIQUE APP DEVELOPERS APPS APIPUBLISHERS Hosted anywhere. Developed using any tech nology. BACKEND APIs DIRECT OR VPN Publisher portal Gateway Developer Portal
  • 19.
  • 20.
    ÉTAPES D’IMPLÉMENTATION 1) APIdesign 2) Develop (Implement Logic) Swagger 4) Publish 5) Share7) Monitor Azure Mobile Engageme nt 6) Control 3) Deploy Developer Portal API Apps APIMAPIM APIMAPIM
  • 21.
    API DESIGN • Typesd’APIs : – Interne – Externe – Public/Privé • RESTful • Spécification • Versioning
  • 22.
    RENDEZ SWAG VOSAPIS • 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
  • 23.
    DÉVELOPPEMENT • Frameworks : –ASP.NET Web API – ASP.NET Core – JAVA – Node.JS – ….
  • 24.
    DEMO 1 API Design& Development
  • 25.
    DÉPLOIMENT • Azure AppService - API App – Service PaaS – Hébergement d’APIs REST • En .Net • Ou autres technologies : Node.JS, Java, PHP…
  • 26.
  • 27.
    AZURE API MANAGEMENT •Azure API Management – Une solution clé en main (PaaS) pour la publication d’APIs à destination de développeurs internes et externes
  • 28.
    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 Policies Developer Portal
  • 29.
    AZURE APIM –COMPOSANTS CLÉS (2/2) • Developer Portal – Documentation des APIs – Tester les APIs – Demander de l’aide – Etc Publisher Portal Gateway Policies Developer Portal
  • 30.
    DEMO 5 APIM -Publisher Portal
  • 31.
    Policies • Modifier lecomportement 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
  • 32.
  • 33.
    DEMO 6 APIM -Policies
  • 34.
    DEMO 7 APIM -Developer Portal
  • 35.
  • 36.
    ANALYTICS • Dashboard accessible directementdepuis 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
  • 37.
    ANALYTICS – SCENARIOAVANCÉ Applications Azure API Management Azure EventHub Azure Stream Analytics PowerBI Storage SQL Database Log events to Azure Event
  • 38.
    DEMO 8 APIM -Analytics
  • 39.
    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
  • 40.
    DEMO 8 APIM -API Security
  • 41.
  • 42.
    API MANAGEMENT &IPAAS VISION • Stratégie IPaaS (Integration Platform 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
  • 43.
    AZURE APIM PUBLICROADMAP http://aka.ms/apimroadmap
  • 44.
  • 45.
    Microsoft Azure makesall you want … …except French Kiss!
  • 46.
  • 47.
  • 48.
    Merci beaucoup ànos sponsors! Thank you to all our sponsors! Join the conversation #MSCloudSummit @MSCloudSummit
  • 49.
    Merci Beaucoup! Thankyou! Join the conversation #MSCloudSummit @MSCloudSummit