extending enterprise applications to mobile interfaces-final
TRANSCRIPT
![Page 1: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/1.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Extending Cloud-based Enterprise Applications to mobile interfaces
Rohit Dhamija Principal Product Manager, Cloud Application Development, Oracle India Private Limited Nov 11, 2016
Confidential – Oracle stricted
![Page 2: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/2.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
Confidential – Oracle Internal/Restricted/Highly Restricted 2
![Page 3: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/3.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Program Agenda
Functional Flow– MCS , JET & Enterprise Apps
Enterprise App – Oracle Sales Cloud
Mobile Backend – Oracle MCS
Mobile Client – Oracle JET Hybrid app
Run-Time Flow & Demo
Q&A
1
2
3
4
5
Confidential – Oracle Internal/Restricted/Highly Restricted 3
6
![Page 4: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/4.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Functional Flow – Enterprise Apps, MCS & JET Extend, Integrate, Analyze
![Page 5: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/5.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Use Case: Account Health mobile app
Confidential – Oracle Internal/Restricted/Highly Restricted 5
![Page 6: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/6.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Reference Architecture
SaaS and on-Prem Application
Services
Simplification Services– Integration
PaaS - API Management
Client Channels – Mobile
Integration Cloud Services
Mobile Cloud Service
JET Hybrid Application
Oracle Sales Cloud Oracle Service Cloud On-Prem EBS
Oracle Confidential – Internal
Content Management
Services
Documents Cloud Services
![Page 7: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/7.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Functional Flow – Sales Cloud, MCS & JET
Oracle Confidential – Internal
Component Summary
Oracle Sales Cloud
Oracle Sales Cloud for sales effectiveness, better understand customers, and build a pipeline for success.
Oracle MCS MCS -Mobile Cloud Service, delivers cloud-based, server-side mobile services to enable quick and easy app development
Client app A JET Hybrid application that communicates with Oracle MCS
![Page 8: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/8.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle Sales Cloud - Overview
![Page 9: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/9.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle Sales Cloud
• Delivers a wide range of functionality to improve sales effectiveness, better understand customers, and build a pipeline for success.
Confidential – Oracle Internal/Restricted/Highly Restricted 9
MAINTAINABLE
API-FIRST APPROACH
Architects and IT Ops
SCALABLE MOBILE- FRIENDLY
RESOURCE- ORIENTED MODEL
EASE OF USE
LIGHTWEIGHT
Account Activity Competitor
Opportunity
Partners Sales Orders
Lead
Contact Territory Forecast
Key Restful Web Services resources:
![Page 10: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/10.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Mobile Backend – Oracle MCS Oracle Mobile Cloud Services
![Page 11: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/11.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle Mobile Cloud Service – Why MBaaS is the developer’s new best friend?
Confidential – Oracle Internal/Restricted/Highly Restricted 11
On-premise Apps
Cloud Services
3rd Party Services
1
2 3 4
5
![Page 12: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/12.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Mobile Backend - Step-by-step process
Confidential – Oracle Internal/Restricted/Highly Restricted 12
API • Create Custom API
Connector • Create Connector API
Backend • Create Mobile Backend
Test • Test Custom API using MCS UI
![Page 13: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/13.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Mobile Client – Oracle JET Hybrid app Oracle JavaScript Extension Toolkit (JET)
![Page 14: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/14.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle JavaScript Extension Toolkit (JET) Two way binding
Resource management
DOM Manipulation + AJAX
Cross Platform Development
![Page 15: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/15.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Tooling – JET Hybrid application
• Mobile Tooling used for building JET based hybrid application Yeoman Grunt Apache Cordova Android & iOS tools
• Oracle MCS Cordova SDK Simplifies authentication with MCS Provides native wrapper objects for MCS platform APIs
•Oracle JET key modules
Oj.Oauth for Security (Basic and Oauth) Model and Collection for REST Services Android and iOS Alta themes
![Page 16: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/16.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Architecture – Oracle JET Hybrid App
Confidential – Oracle Internal/Restricted/Highly Restricted 16
WebView (Native Browser)
Cordova Plugins
HTML/CSS/JS/Cordova JS API
Native API’s
Mobile OS (Android/iOS)
HTML/CSS/JS
Oracle MCS SDK
Oracle JET
Core OS API’s
Web-View
![Page 17: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/17.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Run Time Flow & Demo Accessing Sales Cloud from Mobile
![Page 18: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/18.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Run Time Flow - Overview
Confidential – Oracle Internal/Restricted/Highly Restricted 18
1. SSO Login remote IDP URL
2. Receive SSO Token
3. In subsequent MCS REST Call include the given token in the Authorization header
4. SAML policy used in connector to propagate identity to authenticate with Sales Cloud
![Page 19: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/19.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 19
Demo - Login via SSO
![Page 20: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/20.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal/Restricted/Highly Restricted 20
Demo – Opportunities retrieved from Sales Cloud
![Page 21: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/21.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
References
• Cloud Developer Solution Blogs , link: https://community.oracle.com/community/cloud_computing/oracle-cloud-developer-solutions/blog/authors/Rohit%20Dhamija-Oracle • Demo Solution: PaaS for SaaS - Extend CX Cloud with Account 360 Mobile Application using PaaS: MCS, Ionic, ICS, link: https://demo.oracle.com/apex/f?p=GO:PAGE:0:DSD:NO:1:ID:28628
![Page 22: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/22.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Q&A
![Page 23: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/23.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
Confidential – Oracle Internal/Restricted/Highly Restricted 23
![Page 24: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/24.jpg)
![Page 25: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/25.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Addendum
Confidential – Oracle Internal/Restricted/Highly Restricted 25
![Page 26: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/26.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Security Approach
• Client Side: JET Hybrid Mobile Application:
– Authenticated the mobile application via SSO:
– On success , status 200 OK, API returns SSO TOKEN
– Used this SSO Token in Authorization header while calling MCS Custom API.
– This token is used to propagate identity to MCS Connector
• Mobile Back-end: Oracle Mobile Cloud Service
– SSO Enabled Mobile Backend
– MCS API:
• Developed custom API which in turn calls REST based connector (Oracle Sales Cloud)
– MCS Connector:
• Developed Connector API pointing to Sales Cloud
• Set the security policy to “oracle/http_saml20_token_bearer_over_ssl_client_policy” , keeping everything as default
Confidential – Oracle Internal/Restricted/Highly Restricted 26
![Page 27: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/27.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
REST Connector API – Run Time Flow
• Custom code sends a request to REST Connector API.
• The connector API retrieves the remote URL, applies rules and the security policy.
• The connector sends the request to the external service.
• The service sends a JSON response back to the connector.
• The connector sends JSON response to the custom code.
Confidential – Oracle Internal/Restricted/Highly Restricted 27
![Page 28: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/28.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Create Mobile Backend and associate API
•Login into Oracle MCS and create a new mobile back-end, provide a suitable Name and description
•Enable OAuth Consumer
•Check-box to select "Enable Single Sign-On"
•Select the custom API created and associate it with your mobile backend
Confidential – Oracle Internal/Restricted/Highly Restricted 28
![Page 29: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/29.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Run Time Flow - Custom API
Confidential – Oracle Internal/Restricted/Highly Restricted 29
![Page 30: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/30.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Mobile Backend - Step-by-step process
Confidential – Oracle Internal/Restricted/Highly Restricted 30
API • Create Custom API
Connector • Create Connector API
Backend • Create Mobile Backend
Test • Test Custom API using MCS UI
![Page 31: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/31.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Implementation Custom API
Confidential – Oracle Internal/Restricted/Highly Restricted 31
Connector API
Design
API
Download Scaffold
Write Custom Code
Package code as Node.js module
Upload
Module
General Settings
• API Name
• Remote URL
Set Rules
• Set New Rule
• Add Parameter
Security
• Select security policy
• Specify overrides
Test
• Using MCS Connector Test UI
![Page 32: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/32.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Create Mobile Backend and associate API
Confidential – Oracle Internal/Restricted/Highly Restricted 32
Create Mobile Backend
Associate with Realm
Add APIs
Add Collections
Register Client Apps
![Page 33: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/33.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Test Backend – Authenticate using SSO Login
•Open the following URL in an incognito or private browser window. The URL formation is as below:
•<SSO_Token_Endpoint>?clientID=<client_ID>
•Enter mobile username and password
•Upon Success, the browser will show Single Sign-On Auth Token as shown above
Confidential – Oracle Internal/Restricted/Highly Restricted 33
![Page 34: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/34.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Test Backend – Custom API
•Select Mobile Backend
•Paste SSO Token
•Click Test Endpoint
•Upon Success : Status 200 , data would be displayed
Confidential – Oracle Internal/Restricted/Highly Restricted 34
![Page 35: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/35.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Brief Implementation steps
• Mobile Backend: Oracle Mobile Cloud Service
– Created a new Backend - SSO Enabled Mobile Backend
– MCS API:
• Developed custom API which in turn calls REST based connector (Oracle Sales Cloud)
– MCS Connector:
• Developed Connector API pointing to Oracle Sales Cloud
• Set the security policy to “oracle/http_saml20_token_bearer_over_ssl_client_policy” , keeping everything as default
– Test • Test custom API implementation using MCS Test UI / REST Client
Confidential – Oracle Internal/Restricted/Highly Restricted 35
![Page 36: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/36.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Custom and Connector API Custom API
Confidential – Oracle Internal/Restricted/Highly Restricted 36
Connector API
Design
API
Download Scaffold
Write Custom Code
Package code as Node.js module
Upload
Module
General Settings
• API Name
• Remote URL
Set Rules
• Set New Rule
• Add Parameter
Security
• Select security policy
• Specify overrides
Test
• Using MCS Connector Test UI
![Page 37: Extending Enterprise Applications to mobile interfaces-Final](https://reader034.vdocuments.us/reader034/viewer/2022051521/5871d1e91a28ab423c8b5d01/html5/thumbnails/37.jpg)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Run Time Flow – Detailed
Confidential – Oracle Internal/Restricted/Highly Restricted 37
Authentication Flow
Load Mobile Backend's Configuration
Get mobile backend and set auth to ssoAuth
Call MCS Platform API “authenticate”
App opens the MCS SSO URL in a browser.
URL:<SSO_Token_Endpoint>?clientID=<client_ID>
App displays login screen of the remote IDP
On success, app receive an OAuth token
MCS Custom API Flow
Use OAuth token to include as bearer token
In MCS REST Call include the given token in the Authorization header
SAML policy used in connector to propagate identity to authenticate with Sales Cloud