Cloud Integration with SAP Integration Suite
Bring your cloud and on-premise applications together with Cloud Integration (formerly SAP Cloud Platform Integration) in SAP Integration Suite! Integrate processes and data in your system, step by step, by developing and configuring integration flows in the SAP BTP, Cloud Foundry environment. Enhance your integrations with APIs, open connectors, and custom adapters. Explore prepackaged content in the content catalog, debug and secure integration projects, connect to third-party systems, and more!
- Your complete guide to Cloud Integration with SAP Integration Suite
- Model synchronous and asynchronous integration scenarios
- Monitor, maintain, secure, and enhance integration flows
You'll learn about:
- Fundamentals:
Find out how Cloud Integration fits into SAP's cloud strategy. Explore its architecture and tools, learn how to run your first integration flow, and see how to migrate from the SAP BTP, Neo environment to the SAP BTP, Cloud Foundry environment.
- Integration Development:
Using prepackaged integration content? Developing custom integrations? Either way, this guide has you covered with step-by-step instructions and screenshots. Master the Cloud Integration runtime, including processes like debugging and error handling.
- Functionality:
Put SAP Integration Suite to work! See how tools like APIs, application connectors, and the Integration Advisor work with Cloud Integration.
- Updated and Revised:
This fourth edition has been revised to reflect the latest SAP Integration Suite features, including SAP Event Mesh, SAP Process Integration, message routing, integrating SAP S/4HANA with Salesforce. Review special topics such as migration from SAP Process Orchestration to SAP Integration Suite.
Key Highlights:
- Integration flows
- Integration content catalog
- SAP API Business Hub
- Modeling synchronous and asynchronous scenarios
- Debugging
- Security
- Operations
- Root cause analysis
- Web UI
- Message mappings
- SAP API Management
View Full Table of Contents
- Foreword by Andreas Quenstedt
- Preface
- Structure of the Book
- Sample Applications
- Who This Book Is For
- Acknowledgments
- John Mutumba Bilay
- Shashank Singh
- Swati Singh
- 1 Introduction to Cloud Integration
- 1.1 The Role of Cloud Integration in a Cloud-Based Strategy
- 1.2 Use Cases
- 1.2.1 Point-to-Point versus Mediated Communication
- 1.2.2 Message-Based Process Integration
- 1.2.3 Cloud-to-Cloud Integration
- 1.2.4 Cloud-to-On-Premise Integration
- 1.2.5 On-Premise-to-On-Premise Integration
- 1.2.6 Hybrid Usage of Cloud and On-Premise Integration Solutions
- 1.2.7 Usage in Different Cloud Environments
- 1.3 Capabilities
- 1.3.1 Integration Platform as a Service
- 1.3.2 Message Processing Step Types (Integration Capabilities)
- 1.3.3 Connectivity Options
- 1.3.4 Prepackaged Integration Content
- 1.3.5 Security Features
- 1.3.6 High Availability
- 1.3.7 Integration Design and Monitoring Tools
- 1.4 Editions
- 1.5 Summary
- 2 Getting Started
- 2.1 Architecture Overview
- 2.1.1 Containerized and Clustered Integration Platform
- 2.1.2 Basic Constituents of the Cloud Integration
- 2.1.3 Architecture: User Access and Data Storage Areas
- 2.1.4 Secure Communication
- 2.1.5 Implementation of Message Flows
- 2.1.6 Architecture Summary
- 2.1.7 Environment-Specific Aspects of the Architecture
- 2.2 Tools and Processes
- 2.2.1 Tools
- 2.2.2 Processes
- 2.3 Running Your First Integration Scenario
- 2.3.1 Demo Scenario and Landscape
- 2.3.2 Prerequisites
- 2.3.3 Setting Up the Landscape and the Technical Connections
- 2.3.4 Developing the Integration Flow
- 2.3.5 Creating and Deploying a User Credentials Artifact
- 2.3.6 Importing Certificates Required by the Mail Server into a Keystore
- 2.4 Summary
- 3 SAP Integration Content Catalog
- 3.1 Introduction to SAP Integration Content Catalog
- 3.2 Terms and Conditions of Using Prepackaged Integration Content
- 3.2.1 Quick Configure versus Content Edit
- 3.2.2 Notify about Update (Manual Updates)
- 3.2.3 Automatic Updates
- 3.3 Consuming Prepackaged Content
- 3.3.1 Searching SAP Integration Content Catalog
- 3.3.2 Importing Prepackaged Integration Content
- 3.3.3 Modifying or Configuring the Integration Package
- 3.3.4 Deploy Content
- 3.4 Prepackaged Content Provided by SAP
- 3.4.1 Content for SAP SuccessFactors
- 3.4.2 Content for SAP Cloud for Customer
- 3.4.3 Content for Integrating with SAP Customer Experience
- 3.4.4 Content for Integrating with SAP Business Network
- 3.4.5 Content for Globalization Scenarios
- 3.4.6 Content for ELSTER Integration
- 3.4.7 Content for Salesforce Integration
- 3.5 Creating Your Own Content Package
- 3.6 Adapters to Third-Party Applications for SAP Integration Suite
- 3.7 Summary
- 4 Basic Integration Scenarios
- 4.1 Working with Cloud Integration’s Data Model
- 4.1.1 Message Processing: The Apache Camel Framework
- 4.1.2 Working with Apache Camel’s Message Model
- 4.1.3 Connecting and Configuring a Sender with an Integration Flow
- 4.1.4 Adding and Configuring Steps in the Integration Flow
- 4.1.5 Checking Configuration Using the Problems Tab
- 4.1.6 Running the Integration Flow
- 4.1.7 Troubleshooting
- 4.2 Using Externalization to Enable Easy Reuse of Integration Flows
- 4.2.1 Externalizing
- 4.2.2 Configuring and Running the Scenario
- 4.3 Calling External Systems by Invoking an OData Service
- 4.3.1 The Target Scenario
- 4.3.2 Invoking an OData Service
- 4.3.3 Configuring the OData Connection
- 4.3.4 Creating the Resource Path Using the Query Editor
- 4.3.5 Using the Content Enricher Step
- 4.3.6 Using the Poll Enrich Step
- 4.4 Working with Mappings
- 4.4.1 The Scenario
- 4.4.2 Adding and Using Resources via the References Tab
- 4.4.3 Applying the Mapping Step in the Message Processing Chain
- 4.4.4 Using Value Mappings to Enhance Your Scenario
- 4.5 Defining and Provisioning API-based Integration
- 4.5.1 The Target Scenario
- 4.5.2 Providing an OData Service
- 4.5.3 Providing a SOAP Service
- 4.5.4 Providing a REST Service
- 4.6 Message Routing
- 4.6.1 The Scenario
- 4.6.2 Configuration of the Content-Based Router
- 4.6.3 Running the Content-Based Router Scenario
- 4.7 Summary
- 5 Advanced Integration Scenarios
- 5.1 Working with an Aggregator
- 5.1.1 Sample Scenario
- 5.1.2 Sending Messages via SoapUI
- 5.2 Working with Lists
- 5.2.1 The Scenario
- 5.2.2 Configuring the Integration Flow
- 5.2.3 Running the Integration Flow
- 5.2.4 Enriching Individual Messages with Additional Data
- 5.3 Asynchronous Message Handling
- 5.3.1 Synchronous versus Asynchronous Communication from the Cloud Integration Perspective
- 5.3.2 Adding an Asynchronous Receiver
- 5.3.3 Routing a Message to Multiple Receivers Using the Multicast Pattern
- 5.4 Reliable Messaging Using the JMS Adapter
- 5.4.1 Asynchronous Decoupling of Inbound Communication
- 5.4.2 Configuring Retry for Multiple Receivers
- 5.4.3 Configuring Explicit Retry with Alternative Processing
- 5.5 SAP Process Integration and the XI Adapters
- 5.6 Using Event-Driven Messaging
- 5.6.1 Configuring a Publish-Subscribe Scenario
- 5.6.2 Reading Business Details from Providers
- 5.6.3 Sending Events to SAP Integration Suite, Advanced Event Mesh
- 5.7 Summary
- 6 Special Topics in Integration Development
- 6.1 Timer-Based Message Transfers
- 6.1.1 The Scenario
- 6.1.2 Configuring a Timer-Based Integration Flow
- 6.1.3 Externalizing Timer Configurations
- 6.1.4 Running the Integration Flow
- 6.2 Using Dynamic Configuration via Headers or Properties
- 6.2.1 An Integration Flow with a Dynamically Configured Attribute
- 6.2.2 Monitoring Dynamically Configured Attributes at Runtime
- 6.2.3 Using Predefined Headers and Properties to Retrieve Specific Data Provided by the Integration Framework
- 6.2.4 Adding a Custom Header to the Message Exchange
- 6.2.5 Monitoring Messages Using Custom Headers
- 6.3 Structuring Large Integration Flows Using Local Processes
- 6.3.1 Managing Complexity through Modularization
- 6.3.2 Developing an Integration Flow with a Local Integration Process
- 6.3.3 Using Exception Subprocesses
- 6.4 Connecting Integration Flows Using the ProcessDirect Adapter
- 6.4.1 Use Cases for the ProcessDirect Adapter
- 6.4.2 A Simple Example
- 6.4.3 Using Variables to Share Data between Different Integration Flows
- 6.4.4 Dynamic Endpoint Configuration with the ProcessDirect Adapter
- 6.5 Connecting to a Database Using the JDBC Adapter
- 6.5.1 JDBC Adapter Concepts
- 6.5.2 Setting Up a Database System
- 6.5.3 Setting Up an Example Scenario
- 6.6 Connecting to an AS2 Server Using an AS2 Adapter
- 6.6.1 Configuration of Sender Adapter to Receive Messages
- 6.6.2 Configuration of the Receiver Adapter to Send AS2 Messages
- 6.7 Versioning and Migration of Integration Flows
- 6.7.1 Integration Flow Component Versions
- 6.7.2 Upgrading an Integration Flow Component
- 6.7.3 Adapting Integration Content for SAP Process Orchestration
- 6.8 Simulation of Integration Flow Processing
- 6.9 Transporting Integration Packages to Another Tenant
- 6.9.1 Manually Transporting Integration Packages
- 6.9.2 Transporting Integration Packages Using Enhanced Change and Transport System
- 6.9.3 Transporting Integration Packages Using the Cloud-Based Transport Management Service
- 6.10 Using the Adapter Development Kit
- 6.10.1 Overview
- 6.10.2 Installing the Adapter Development Kit
- 6.10.3 Developing a Sample Adapter (SAP BTP, Neo and Cloud Foundry Environments)
- 6.10.4 Deploying the Adapter (SAP BTP, Neo Environment)
- 6.10.5 Deploying the Adapter (SAP BTP, Cloud Foundry Environment)
- 6.10.6 Testing the New Adapter
- 6.11 Guidelines for Integration Flow Development
- 6.11.1 Running an Integration Flow Under Well-Defined Boundary Conditions
- 6.11.2 Relaxing Dependencies to External Components
- 6.11.3 Keeping Readability in Mind
- 6.11.4 Handling Errors Gracefully
- 6.11.5 Applying the Highest Security Standards
- 6.11.6 Additional Best Practices
- 6.12 Working with Script Collections
- 6.12.1 Creating a Script Collection
- 6.12.2 Using the Script Collection in an Integration Flow
- 6.13 Advanced Message Mapping Concepts
- 6.13.1 Creating Message Mapping as an Artifact
- 6.13.2 Using the Message Mapping in Integration Flow
- 6.14 Summary
- 7 Cloud Integration Operations
- 7.1 Operations: Overview
- 7.2 Monitoring Integration Content and Message Processing
- 7.2.1 Managing Integration Content
- 7.2.2 Log Configuration
- 7.2.3 Monitoring Message Processing
- 7.2.4 Managing Tiles
- 7.3 Managing Security
- 7.3.1 Maintaining Security Material
- 7.3.2 Managing the Keystore
- 7.3.3 Maintaining Pretty Good Privacy Keys
- 7.3.4 Defining User Roles
- 7.3.5 Maintaining Certificate-to-User Mappings
- 7.3.6 Defining Access Policies
- 7.3.7 Managing Java Database Connectivity Data Sources
- 7.3.8 Testing Outbound Connectivity
- 7.4 Managing Temporary Data
- 7.4.1 Monitoring Data Stores
- 7.4.2 Monitoring Variables
- 7.4.3 Maintaining Message Queues
- 7.4.4 Maintaining Number Ranges
- 7.5 Accessing Logs
- 7.5.1 Monitoring Audit Logs
- 7.5.2 Checking System Log Files
- 7.6 Managing Locks
- 7.6.1 Dealing with Message Locks
- 7.6.2 Managing Design Time Artifact Locks
- 7.7 Monitoring Message Usage
- 7.8 Integrating Cloud Integration with Enterprise Monitoring Tools
- 7.8.1 Configuring Splunk to Receive Data from Cloud Integration
- 7.8.2 Enabling External Logging from SAP BTP Cockpit
- 7.9 Summary
- 8 Application Programming Interfaces
- 8.1 Introduction
- 8.2 Java APIs Provided by Cloud Integration
- 8.3 Using the Java API in a User-Defined Function
- 8.4 Using the Script Step
- 8.4.1 Target Scenario
- 8.4.2 Enhancing the Integration Flow
- 8.5 Open Data Protocol API
- 8.5.1 SAP Business Accelerator Hub
- 8.5.2 Cross-Site Request Forgery Token Handling for SAP BTP, Neo Environment
- 8.5.3 Monitoring Message Flows Using the API
- 8.5.4 Managing Deployed Integration Content Using the API
- 8.5.5 Managing Log Files Using the APIs
- 8.5.6 Managing Message Store Entries Using APIs
- 8.5.7 Managing Security Material Using the API
- 8.5.8 Managing the Partner Directory Using the API
- 8.6 Using Cloud Integration with API Management
- 8.6.1 Establishing a Connection between Cloud Integration and API Management
- 8.6.2 Provisioning APIs
- 8.6.3 Consuming APIs
- 8.7 Summary
- 9 Connecting to External Third-Party Systems
- 9.1 Introduction
- 9.2 Open Connectors: Connectors Catalog
- 9.2.1 Overview Tab
- 9.2.2 Information Tab
- 9.2.3 Setup Tab
- 9.2.4 Resources Tab
- 9.2.5 Validation Tab
- 9.2.6 API Docs Tab
- 9.3 Open Connectors: Understanding Connectors
- 9.3.1 Authenticate Connections with API Providers
- 9.3.2 Inspect Authenticated Connector Instances
- 9.3.3 Testing in the API Docs
- 9.4 Open Connectors: Understanding Common Resources
- 9.4.1 Creating a Common Resource
- 9.4.2 Cloning Common Resources
- 9.4.3 Transforming Resources
- 9.5 Using Cloud Integration with Open Connectors
- 9.5.1 Scenario
- 9.5.2 The Solution
- 9.6 Using Cloud Integration to Connect to Third-Party Systems without Open Connectors
- 9.6.1 Connecting to Salesforce
- 9.6.2 Connecting to Amazon Web Services
- 9.7 Summary
- 10 Cloud Integration Security
- 10.1 Technical System Landscape
- 10.1.1 Architecture
- 10.1.2 Network Infrastructure
- 10.1.3 Data Storage Security
- 10.1.4 Data Protection and Privacy
- 10.1.5 Malware Scanner
- 10.1.6 Physical Data Security
- 10.2 Processes
- 10.2.1 Software Development Process
- 10.2.2 Operating the Cloud Infrastructure and Providing and Updating the Software
- 10.2.3 Setting Up Secure Connections between the Tenant and Remote Systems
- 10.3 User Administration and Authorization
- 10.3.1 Technical Aspects of User Management
- 10.3.2 Personas, Roles, and Permissions
- 10.3.3 Managing Users and Authorizations for a Cloud Integration Subaccount
- 10.3.4 Authorization on the Package and Integration Flow Level
- 10.4 Data and Data Flow Security
- 10.4.1 Basic Cryptography in a Nutshell
- 10.4.2 Transport-Level Security Options
- 10.4.3 Authentication and Authorization
- 10.4.4 Securely Connecting a Customer System to Cloud Integration through HTTPS
- 10.4.5 Setting Up a Scenario Using OAuth with the Twitter Adapter
- 10.4.6 Message-Level Security Options
- 10.4.7 Designing Message-Level Security Options in an Integration Flow
- 10.5 Keystore Management
- 10.5.1 Using X.509 Security Material for Cloud Integration
- 10.5.2 Managing Security Material in the Tenant Keystore
- 10.5.3 Managing the Lifecycle of Keys Provided by SAP
- 10.6 Summary
- 11 Productive Scenarios Using Cloud Integration
- 11.1 Integration of SAP Cloud for Customer and SAP ERP
- 11.1.1 Technical Landscape
- 11.1.2 Example Adapter Configurations
- 11.2 Integration of SAP Cloud for Customer with SAP S/4HANA Cloud
- 11.3 Integration of SAP Marketing Cloud and Various Applications
- 11.4 Integration of SAP SuccessFactors and SAP ERP
- 11.4.1 Technical Landscape
- 11.4.2 SAP SuccessFactors Adapter
- 11.5 Integration of SAP Applications with SAP Business Network
- 11.6 Integration with German Tax Authorities Using the ELSTER Adapter
- 11.7 SAP S/4HANA Integration with Salesforce
- 11.7.1 Technical Landscape
- 11.7.2 Example Adapter Configurations
- 11.8 Summary
- 12 Special Topics in Cloud Integration
- 12.1 Edge Integration Cell: Overview
- 12.2 Edge Integration Cell: High-Level Architecture
- 12.2.1 Edge Lifecycle Management
- 12.2.2 Runtime and Operations
- 12.2.3 External Services
- 12.3 Edge Integration Cell: Setup and Installation
- 12.4 Develop, Deploy, and Monitor Your Integrations in the Edge Integration Cell
- 12.5 Migration from SAP BTP, Neo Environment to SAP BTP, Cloud Foundry Environment
- 12.5.1 Benefits of Migration to SAP BTP, Cloud Foundry Environment
- 12.5.2 Availability Zones and Regions
- 12.5.3 Migration Approach
- 12.6 Migration from SAP Process Orchestration to Cloud Integration
- 12.6.1 Assessment and Evaluation
- 12.6.2 Planning and Preparation
- 12.6.3 Migrate and Manage
- 12.7 Summary
- 13 Summary and Outlook
- 13.1 Integration Content Design
- 13.2 Connectivity
- 13.3 Edge Integration Cell
- 13.4 Migration from SAP Process Orchestration to Cloud Integration
- 13.5 Summary
- The Authors
- Index