API Management
Thomas Bayer
bayer@predic8.de
@thomasub
predic8 GmbH
Moltkestr. 40
53177 Bonn
predic8.de
API bietet Funktionen über das Netz an
Ca. 15.000 öffentliche APIs
API, brauche ich das?
Apps brauchen APIs
HTML5
B2B Integration
APIs in Action
MembraneFirewall
Technische
Security
Validierung
ERGO Direkt
Erweiterung
Backend
Pflege & Reports
Service
P...
Bank mit REST API!
Ein API ermöglicht ...
... neue Apps, Sites & Anwendungen. Also Folge ...
... wächst die Plattform und erschließt ...
... neue Vertriebskanäle
Internet of Things
Steuerung von Drohnen über API
ImplementierungClient
Schnittstelle
ImplementierungAPIClient
ImplementierungAPIClient
DMZ
ImplementierungAPIClient
Abo
Developer
Portal
Admin Konsole
Client
Entwickler
API Entwickler
Admin
API Gateway
Gateway bei apigee
23
<serviceProxy port=“80">
<rateLimiter requestLimit=“1000" requestLimitDuration="PT1H“ />
<target host=“api.predic8.de“ />
...
API Security
ImplementierungAPIClient
Developer
Portal
Admin Konsole
Entwickler
Username
Passwort
API Keys bei
3Scale & Tyk
Key Policy1*
User
1
1
Permission
1
*Ressource
1
*
policies:
- policy:
id: "Customer"
serviceProxy:
- "Order API"
- policy:
id: "FreeTrail"
rateLimit:
requests: 100
interval...
Developer Portal
Bestandteile eines Developerportals
Developer Portal
Dashboard API Explorer
Analytics Katalog
33
API Management != SOA Governance
Service Discovery
 SOA
 Lookup in Registry ( UDDI)
 API
 Katalog im Developer Portal
 Lookup in Registry ( REST, JSON)
Katalog anstatt Registry
API Explorer
https://developers.exlibrisgroup.com/alma/apis/bibs
Developer Dashboard
API Beschreibung mit Swagger
API Dokumentation
Request/Response Tracing mit Membrane
Created
Published
Deprecated
Blocked
Analyse
Design
Implementierung
Test
API Lifecycle Service Lifecycle
Deployment
Service
Cloud
Developer Portal
Admin Portal
On premise
API
Gateway
Service
Service
Service
API
Gateway
Service
Service
Ser...
Service
Cloud
SaaS
Developer Portal
SaaS
Admin Portal
On premise
API
Gateway
Service
Service
Service
API
Gateway
Service
S...
Service
Service
Service
Service
Service
Service
Cloud
SaaS
Developer Portal
SaaS
Admin Portal
On premise
API
Gateway
Servi...
Service
Service
Service
Service
Service
Service
Cloud
SaaS
Developer Portal
SaaS
Admin Portal
On premise
API
Gateway
Servi...
49
Beispiel Akana
50
Managed API ist gesichert, wird überwacht und kann „abonniert“ werden.
52
Danke!
Thomas Bayer
bayer@predic8.de
blog.predic8.de
http://membrane-soa.org
@thomasub
Ihr Sprecher
53
Thomas Bayer @thomasub
Programmierer, Copter Pilot, Maker
Schwerpunkte
APIs
Microservices
Integration
API Management
API Management
API Management
Nächste SlideShare
Wird geladen in …5
×

API Management

393 Aufrufe

Veröffentlicht am

Vortrag von der HK 2015 bei OIO in Mannheim, der die folgenden Fragen beantwortet:

- Was ist API Management?
- Welche Anforderungen und Aufgaben werden ans API Management gestellt?
- Wie ist eine API Management Lösung aufgebaut
- Welche Produkte gibt es am Markt?

Veröffentlicht in: Software
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
393
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
34
Aktionen
Geteilt
0
Downloads
3
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie
  • Was ist ein API, Versuch einer einfachen Erklärung:
    API bietet Funktionen über das Netz an
  • Beispiel für ein API: Openweathermap.org
    Im Hintergrund: die Webseite
    Im Vordergrund: Abfrage des aktuellen Bonner Wetter
  • Öffentliche APIs wie das von Open Weather Map gibt es laut Programmable Web knapp 15000
    Programmable Web ist ein populäres Verzeichnis für APIs

  • API, brauche ich das?
  • Apps brauchen APIs
    Eine App ohne Backend ist oft nutzlos
    selbst Spiele greifen auf Server zu.
  • HTML5 Anwendungen kommunizieren für APIs mit einem Backend
  • Auf der Amazon Webseite erscheint das Angebot eines Partners für eine Geräteversicherung. Die Anbindung erfolgt über APIs.
  • Bank mit REST API!
  • Ein API ermöglicht ...
  • ... neue Apps, Sites & Anwendungen. Also Folge ...
  • ... wächst die Plattform und erschließt ...
  • ... neue Vertriebskanäle
  • Internet of Things
    Auch für IoT & Homeautomation gibt es APIs
  • Drohnen Steuerung über API
  • Was ist ein API? Fangen wir vorne an: Was ist eine Schnittstelle?
    Über eine Schnittstelle kann auf eine Komponente zugegriffen werden. Die Details der Implementierung sind verborgen.
    Datenstrukturen und Befehle werden festgelegt.


    Herausforderungen:
    Sicherheit, Dokumentation
    Überwachung, Versionierung
  • Im Sinne des API Management ist ein API eine
    Virtualisierung der Schnittstelle.
    Über ein API Gateway oder Proxy wird ein
    virtueller Endpunkt für eine Komponente zur Verfügung gestellt.
    Zusätzliche Eigenschaften: Sicherheit, Zugriff, Analyse, ...
  • Gateways oder Proxies, die ein API anbieten werden oft in der DMZ plaziert.
  • So sieht API Management bei den meisten Herstellern aus:
    Es gibt einen API Proxy, ein Developer Portal und einen Admin Bereich.
  • API Gateway
  • Beispiel:
    API Proxy der API Management Lösung von CA (Proxy war früher von Layer7)
  • Beispiel: API im Membrane Service Proxy
  • Definition eines Proxys mit Membrane
  • API Security
  • Ein Mensch läßt sich einen API Key ausstellen. Der Key kann immer wieder erneuert werden aber der
    Username und Passwort des Entwicklers bleibt meist gleich.
    Es gibt keine Sessions. Passwörter gehen nie über das Netz.
    Mögliche API Keys:
    - OAuth 1 oder 2
    - JWT
    - OpenID Connect
    - SAML
  • API Keys bei 3Scale & Tyk
  • Exemplarisches Objektmodell mit User, Key, Policy, Resource und Permission
  • Policy Beschreibung beim Membrane
  • Developer Portal
  • API Katalog bei Tyk und Mule.
    Der Client Entwickler wählt API aus, das er nutzen möchte
  • API Management != SOA Governance
  • SOA: Service Nutzungsbeziehung in Registry
    API: Registrien auf dem Portal
    Katalog ist jetzt weniger technisch, Unterstützung durch API Explorer
  • SOA Governance
    Wir schreiben in einer Registry auf, welcher Client welchen Service nutzt
    Wer macht das wirklich?
    API Management
    Ohne Anmeldung am Portal kein Key, ohne Key keine API Nutzung
    Im Portal wird EULA Vertrag geschlossen
    Best Practice: Hinweis wann alte Versionen abgeschaltet werden
  • API Explorer am Beispiel der Swagger UI
  • CA Developer Portal mit UI vom Kunden verpackt
  • Developer Dashboard von Tyk
  • Funktion für API Entwickler
    API Blueprint
    RAML
    Swagger
    (WADL)
  • Sowohl Entwickler / Admin
  • Versioning
    API Lifecycle != Service Lifecycle
    Erst im API anlegen, wenn er fertig und „deployt“ ist
  • On premise Lösung hinter einer Firewall?
  • Cloud basiertes API Management mit onpremise API Gateways
  • Cloud basiertes API Management mit onpremise Services
  • Kombinierte onpremise / Cloud Lösung
  • API Management Player
  • Ich bin der Thomas
  • API Management

    1. 1. API Management Thomas Bayer bayer@predic8.de @thomasub predic8 GmbH Moltkestr. 40 53177 Bonn predic8.de
    2. 2. API bietet Funktionen über das Netz an
    3. 3. Ca. 15.000 öffentliche APIs
    4. 4. API, brauche ich das?
    5. 5. Apps brauchen APIs
    6. 6. HTML5
    7. 7. B2B Integration
    8. 8. APIs in Action MembraneFirewall Technische Security Validierung ERGO Direkt Erweiterung Backend Pflege & Reports Service Proxy Service Proxy B2B Mobile Web
    9. 9. Bank mit REST API!
    10. 10. Ein API ermöglicht ...
    11. 11. ... neue Apps, Sites & Anwendungen. Also Folge ...
    12. 12. ... wächst die Plattform und erschließt ...
    13. 13. ... neue Vertriebskanäle
    14. 14. Internet of Things
    15. 15. Steuerung von Drohnen über API
    16. 16. ImplementierungClient Schnittstelle
    17. 17. ImplementierungAPIClient
    18. 18. ImplementierungAPIClient DMZ
    19. 19. ImplementierungAPIClient Abo Developer Portal Admin Konsole Client Entwickler API Entwickler Admin
    20. 20. API Gateway
    21. 21. Gateway bei apigee 23
    22. 22. <serviceProxy port=“80"> <rateLimiter requestLimit=“1000" requestLimitDuration="PT1H“ /> <target host=“api.predic8.de“ /> </serviceProxy>
    23. 23. API Security
    24. 24. ImplementierungAPIClient Developer Portal Admin Konsole Entwickler Username Passwort
    25. 25. API Keys bei 3Scale & Tyk
    26. 26. Key Policy1* User 1 1 Permission 1 *Ressource 1 *
    27. 27. policies: - policy: id: "Customer" serviceProxy: - "Order API" - policy: id: "FreeTrail" rateLimit: requests: 100 interval: 3600 serviceProxy: - "Order API" keys: - key: "afdhetertwe45sgsretrtrejsdf" policies: - "Customer" - key: "sfdgh32522114affaawer324gre" policies: - "FreeTrail"
    28. 28. Developer Portal
    29. 29. Bestandteile eines Developerportals Developer Portal Dashboard API Explorer Analytics Katalog
    30. 30. 33
    31. 31. API Management != SOA Governance
    32. 32. Service Discovery  SOA  Lookup in Registry ( UDDI)  API  Katalog im Developer Portal  Lookup in Registry ( REST, JSON)
    33. 33. Katalog anstatt Registry
    34. 34. API Explorer
    35. 35. https://developers.exlibrisgroup.com/alma/apis/bibs
    36. 36. Developer Dashboard
    37. 37. API Beschreibung mit Swagger
    38. 38. API Dokumentation
    39. 39. Request/Response Tracing mit Membrane
    40. 40. Created Published Deprecated Blocked Analyse Design Implementierung Test API Lifecycle Service Lifecycle
    41. 41. Deployment
    42. 42. Service Cloud Developer Portal Admin Portal On premise API Gateway Service Service Service API Gateway Service Service Service API Gateway Service Service
    43. 43. Service Cloud SaaS Developer Portal SaaS Admin Portal On premise API Gateway Service Service Service API Gateway Service Service Service API Gateway Service Service
    44. 44. Service Service Service Service Service Service Cloud SaaS Developer Portal SaaS Admin Portal On premise API Gateway Service Service Service API Gateway API Gateway
    45. 45. Service Service Service Service Service Service Cloud SaaS Developer Portal SaaS Admin Portal On premise API Gateway Service Service Service API Gateway API Gateway API Gateway API Gateway API Gateway
    46. 46. 49
    47. 47. Beispiel Akana 50
    48. 48. Managed API ist gesichert, wird überwacht und kann „abonniert“ werden.
    49. 49. 52 Danke! Thomas Bayer bayer@predic8.de blog.predic8.de http://membrane-soa.org @thomasub
    50. 50. Ihr Sprecher 53 Thomas Bayer @thomasub Programmierer, Copter Pilot, Maker Schwerpunkte APIs Microservices Integration

    ×