Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Extending Adobe Experience Manager with Adobe I/O Events

Extending Adobe Experience Manager with Adobe I/O Events

These slides are from my presentation with Francois Le Droff (@francoisledroff) at the 2017 Immerse AEM developer conference. We are introducing Adobe I/O Events, a unified event bus for Adobe APIs that allows pub-sub-style integrations and show how it can be used with Adobe Experience Manager as an event emitter.

4841b262608160b87e5e9766ee041a2a?s=128

Lars Trieloff

May 16, 2017
Tweet

More Decks by Lars Trieloff

Other Decks in Programming

Transcript

  1. © 2016 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    Adobe I/O Events and Adobe Experience Manager Lars Trieloff | @trieloff & François Le Droff | @francoisledroff
  2. Lighting-fast Event-based Integrations

  3. © 2016 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    © 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Request/response is great, but every developer faces three questions Polling 100s of resources? How to find them? Resource usage? Scale Speed Stability Update frequency? Rate limits? Asynchronous updates? Client-state management? What about retries? Queue management? ? ? ?
  4. © 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    Adobe Cloud Platform Adobe I/O Private, Public or Hybrid Cloud Adobe Sensei Content Data Developer Ecosystem Client SDKs Services Tools CoralUI API Gateway Console Adobe Mobile Events Command Line Runtime Documentation
  5. © 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    Adobe I/O Events Adobe I/O Adobe Internal APIs Experience Cloud API Document Cloud API Event Gateway Authentication & Security Subscription Management Throttling & Aggregation Your Application Creative Cloud API … Event Adapter Event Adapter Event Adapter subscribe events subscribe events
  6. © 2016 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    © 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Event-based triggers notify you when something happens, no need to make repeated requests. Publish Subscriptions are managed by Adobe I/O Events and can handle large numbers of events and clients. Simple API for handlers allows flexible implementation and connection to existing apps. Subscribe Handle • Adobe APIs publish events when something interesting happens • e.g. an asset in Adobe Experience Manager is changed • e.g. an asset in Creative Cloud is uploaded • Developer subscribes to event type, event topic and specifies a WebHook callback • Subscriptions can be managed via API or Adobe I/O Console • Event notifications are WebHooks, i.e. HTTPs request with a JSON payload • Event handlers can make additional API requests after being called
  7. How does it work with AEM?

  8. © 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    Adobe I/O Events and AEM Adobe I/O Your AEM Instances Development Staging Event Gateway Authentication & Security Subscription Management Throttling & Aggregation Your Application Production … Event Adapter Event Adapter Event Adapter subscribe events Event Proxy Event Proxy Event Proxy
  9. Keeping it Secure

  10. © 2016 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    © 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. API requests you can sign – powered by RFC 7519 12.05.17, 11)07 RFC 7519 - JSON Web Token (JWT) Internet Engineering Task Force (IETF) M. Jones Request for Comments: 7519 Microsoft Category: Standards Track J. Bradley ISSN: 2070-1721 Ping Identity N. Sakimura NRI May 2015 JSON Web Token (JWT) Abstract JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted. Status of This Memo This is an Internet Standards Track document. This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741. Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc7519.
  11. © 2016 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    © 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. JWT – JSON Web Tokens API Consumer (a.k.a. you) API Provider (a.k.a. Adobe I/O Events) Make/Buy Certificate Private Public Public Upload Token Header Payload Signed Token Header Payload Signature Base64 HTTP Request Authorization: Bearer eyJ0eXAiOiJKV1QiLA0KICJhbG ciOiJIU.eyJpc3MiOiJqb2UiLA 0HA6Ly9leGFt cGxlLmNv90cnVlfQ.dBjftJeZ4 CVPmB92K27_wW1gFWFOEj Validate Authenticate
 Dispatch
 Respond
  12. Show me what’s inside

  13. © 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    Inside the AEM Event Proxy OSGi Event AEM Event Proxy Subscription Manager Adobe I/O Events – Subscription Manager Cloud Event OSGi Event Handler Event Transformer Adobe I/O Event Producer subscribe XDM Event Model (Asset Event)
  14. You say you want a demonstration Well, you know We

    all want to see the code You tell me there’s no negotiation Well, you know We all want to see the code
  15. © 2016 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.

    © 2017 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Q1 Q2 Q3 Q4 Q1‘18 Adobe I/O Events private beta starts Adobe I/O Events general availability Adobe I/O Events Roadmap Adobe Summit Adobe MAX
  16. Join us for a private beta – https://www.adobe.io/apis/cloudplatform/events.html