Table of Contents

Open all
Close all
Foreword by Gunther Rothermel
17
Preface
21
Structure of the Book
22
Sample Applications
25
Who This Book Is For
26
Acknowledgments
27
John Mutumba Bilay
27
Peter Gutsche
28
Mandy Krimmel
29
1 Introduction to SAP Cloud Platform Integration
31
1.1 The Role of SAP Cloud Platform Integration in a Cloud-Based Strategy
33
1.2 Use Cases
36
1.2.1 Point-to-Point versus Mediated Communication
36
1.2.2 Message-Based Process Integration
37
1.2.3 Cloud-to-Cloud Integration
38
1.2.4 Cloud-to-On-Premise Integration
39
1.2.5 On-Premise-to-On-Premise Integration
40
1.2.6 Hybrid Usage of Cloud and On-Premise Integration Solutions
41
1.2.7 Usage in Different Cloud Environments
42
1.3 Capabilities
44
1.3.1 Integration Platform-as-a-Service
44
1.3.2 Message Processing Step Types (Integration Capabilities)
45
1.3.3 Connectivity Options
46
1.3.4 Prepackaged Integration Content
49
1.3.5 Security Features
50
1.3.6 High Availability
51
1.3.7 Integration Design and Monitoring Tools
51
1.4 Editions
51
1.5 Summary
53
2 Getting Started
55
2.1 Architecture Overview
55
2.1.1 Containerized and Clustered Integration Platform
56
2.1.2 Basic Constituents of the Integration Platform
60
2.1.3 Architecture Including User Access and Data Storage Areas
62
2.1.4 Secure Communication
68
2.1.5 Implementation of Message Flows
68
2.1.6 Architecture Summary
72
2.1.7 Environment-Specific Aspects of the Architecture
75
2.2 Tools and Processes
76
2.2.1 Tools
76
2.2.2 Processes
83
2.3 Running Your First Integration Scenario
84
2.3.1 Demo Scenario and Landscape
84
2.3.2 Prerequisites
86
2.3.3 Setting Up the Landscape and the Technical Connections
86
2.3.4 Developing the Integration Flow
88
2.3.5 Creating and Deploying a User Credentials Artifact
113
2.3.6 Importing Certificates Required by the Mail Server into Keystore
117
2.4 Summary
123
3 SAP Integration Content Catalog
125
3.1 Introduction to the SAP Integration Content Catalog
125
3.2 Terms and Conditions of Using Prepackaged Integration Content
128
3.2.1 Quick Configure versus Content Edit
129
3.2.2 Notify about Update (Manual Updates)
130
3.2.3 Automatic Updates
131
3.3 Consuming Prepackaged Content
132
3.3.1 Searching the SAP Integration Content Catalog
132
3.3.2 Importing Prepackaged Integration Content
137
3.3.3 Modifying or Configuring the Integration Package
138
3.3.4 Deploy Content
145
3.4 Prepackaged Content Provided by SAP
145
3.4.1 Content for SAP SuccessFactors
146
3.4.2 Content for SAP Cloud for Customer
148
3.4.3 Content for Integrating with SAP C/4HANA
149
3.4.4 Content for Integrating with the Ariba Network
152
3.4.5 Content for Globalization Scenarios
153
3.4.6 Content for ELSTER Integration
154
3.5 Creating Your Own Content Package
157
3.6 Summary
160
4 Basic Integration Scenarios
163
4.1 Working with SAP Cloud Platform Integration’s Data Model
163
4.1.1 Message Processing: The Apache Camel Framework
165
4.1.2 Exercise: Working with Apache Camel’s Message Model
168
4.1.3 Connecting and Configuring a Sender with an Integration Flow
170
4.1.4 Adding and Configuring Steps in the Integration Flow
173
4.1.5 Checking Configuration Using the Problems Tab
177
4.1.6 Running the Integration Flow
179
4.1.7 Troubleshooting
184
4.2 Using Externalization to Enable Easy Reuse of Integration Flows
185
4.2.1 Externalizing
186
4.2.2 Configuring and Running the Scenario
190
4.3 Content Enrichment by Invoking an OData Service
192
4.3.1 The Target Scenario
193
4.3.2 Invoking an OData Service
194
4.3.3 Configuring the OData Connection
196
4.3.4 Creating the Resource Path Using the Query Editor
198
4.3.5 Using the Content Enricher Step
203
4.4 Working with Mappings
208
4.4.1 The Scenario
209
4.4.2 Adding and Using Resources via the Resources Tab
211
4.4.3 Applying the Mapping Step in the Message Processing Chain
216
4.4.4 Using Value Mappings to Enhance Your Scenario
223
4.5 Defining and Provisioning an OData Service
229
4.5.1 The Target Scenario
229
4.5.2 Providing an OData Service
229
4.6 Working with an Aggregator
241
4.6.1 Sample Scenario
242
4.6.2 Sending Messages via SoapUI
245
4.7 Summary
251
5 Advanced Integration Scenarios
253
5.1 Message Routing
253
5.1.1 The Scenario
254
5.1.2 Configuration of the Content-Based Router
256
5.1.3 Running the Content-Based Router Scenario
260
5.2 Working with Lists
262
5.2.1 The Scenario
263
5.2.2 Configuring the Integration Flow
265
5.2.3 Running the Integration Flow
275
5.2.4 Enriching Individual Messages with Additional Data
279
5.3 Asynchronous Message Handling
281
5.3.1 Synchronous versus Asynchronous Communication from the SAP Cloud Platform Integration Perspective
283
5.3.2 Adding an Asynchronous Receiver
293
5.3.3 Routing a Message to Multiple Receivers Using the Multicast Pattern
297
5.4 Reliable Messaging Using the JMS Adapter
304
5.4.1 Asynchronous Decoupling of Inbound Communication
305
5.4.2 Configuring Retry for Multiple Receivers
316
5.4.3 Configuring Explicit Retry with Alternative Processing
323
5.5 Using Event-Driven Messaging
331
5.5.1 Configuring a Publish-Subscribe Scenario
332
5.5.2 Reading Business Details from Providers
346
5.5.3 Sending Events to SAP Cloud Platform Enterprise Messaging
349
5.6 Summary
354
6 Special Topics in Integration Development
355
6.1 Timer-Based Message Transfers
356
6.1.1 The Scenario
356
6.1.2 Configuring a Timer-Based Integration Flow
357
6.1.3 Running the Integration Flow
361
6.2 Using Dynamic Configuration via Headers or Properties
362
6.2.1 An Integration Flow with a Dynamically Configured Attribute
364
6.2.2 Monitoring Dynamically Configured Attributes at Runtime
369
6.2.3 Using Predefined Headers and Properties to Retrieve Specific Data Provided by the Integration Framework
374
6.3 Structuring Large Integration Flows Using Local Processes
381
6.3.1 Managing Complexity through Modularization
381
6.3.2 Developing an Integration Flow with a Local Integration Process
382
6.3.3 Using Exception Subprocesses
389
6.4 Connecting Integration Flows Using the ProcessDirect Adapter
395
6.4.1 Use Cases for the ProcessDirect Adapter
397
6.4.2 A Simple Example
398
6.4.3 Using Variables to Share Data between Different Integration Flows
403
6.4.4 Dynamic Endpoint Configuration with the ProcessDirect Adapter
406
6.5 Connecting to a Database Using the JDBC Adapter
412
6.5.1 JDBC Adapter Concepts
413
6.5.2 Setting Up a Database System
414
6.5.3 Setting Up an Example Scenario
416
6.6 Versioning and Migration of Integration Flows
420
6.6.1 Integration Flow Component Versions
421
6.6.2 Upgrading an Integration Flow Component
423
6.6.3 Adapting Integration Content for SAP Process Orchestration
426
6.7 Simulation of Integration Flow Processing
433
6.8 Transporting Integration Packages to Another Tenant
441
6.8.1 Manually Transporting Integration Packages
441
6.8.2 Transporting Integration Packages Using CTS+
442
6.8.3 Transporting Integration Packages Using the Cloud-Based Transport Management Service
442
6.9 Using the Adapter Development Kit (ADK)
445
6.9.1 Overview
445
6.9.2 Installing the Adapter Development Kit
446
6.9.3 Developing a Sample Adapter (Neo and Cloud Foundry)
449
6.9.4 Deploying the Adapter (Neo)
455
6.9.5 Deploying the Adapter (Cloud Foundry)
457
6.9.6 Testing the New Adapter
461
6.10 Guidelines for Integration Flow Development
463
6.10.1 Running an Integration Flow Under Well-Defined Boundary Conditions
465
6.10.2 Relaxing Dependencies to External Components
466
6.10.3 Keeping Readability in Mind
466
6.10.4 Handling Errors Gracefully
467
6.10.5 Applying the Highest Security Standards
467
6.10.6 Additional Best Practices
467
6.11 Summary
468
7 B2B Integration with the SAP Cloud Platform Integration Suite
471
7.1 B2B Capabilities in the SAP Cloud Platform Integration Suite: Overview
472
7.2 Defining Interfaces and Mappings in the SAP Cloud Platform Integration Advisor
474
7.2.1 Creating Message Implementation Guidelines
476
7.2.2 Configuring Mapping Guidelines
488
7.2.3 Generating the Runtime Content
490
7.3 Configuring a B2B Scenario with AS2 Sender and IDoc Receiver Adapters
490
7.3.1 Creating an Integration Flow Using a Template
491
7.3.2 Configuring the AS2 Sender Channel to Receive EDI Messages
498
7.3.3 Adding an IDoc Receiver
504
7.3.4 Configuring Acknowledgment Handling
508
7.4 Using the Partner Directory for Partner-Specific Configuration Data
518
7.4.1 Concept of the Partner Directory
518
7.4.2 Using a Receiver Endpoint URL Dynamically in the Integration Flow
520
7.4.3 Storing the Partner-Specific Endpoint URL in the Partner Directory
523
7.5 Summary
532
8 SAP Cloud Platform Integration Operations
533
8.1 Operations: Overview
533
8.2 Monitoring Integration Content and Message Processing
535
8.2.1 Managing Integration Content
538
8.2.2 Log Configuration
541
8.2.3 Monitoring Message Processing
543
8.2.4 Managing Tiles
557
8.3 Managing Security
560
8.3.1 Maintaining Security Material
562
8.3.2 Managing the Keystore
565
8.3.3 Defining User Roles
573
8.3.4 Maintaining Certificate-to-User Mappings
575
8.3.5 Defining Access Policies
577
8.3.6 Managing JDBC Data Sources
581
8.3.7 Testing Outbound Connectivity
584
8.4 Managing Temporary Data
600
8.4.1 Monitoring Data Stores
600
8.4.2 Monitoring Variables
603
8.4.3 Maintaining Message Queues
605
8.4.4 Maintaining Number Ranges
614
8.5 Accessing Logs
616
8.5.1 Monitoring Audit Logs
616
8.5.2 Checking System Log Files
618
8.6 Managing Locks
620
8.7 Summary
624
9 Application Programming Interfaces
625
9.1 Introduction
625
9.2 Java APIs Provided by SAP Cloud Platform Integration
626
9.3 Using the Java API in a User-Defined Function
628
9.4 Using the Script Step
633
9.4.1 Target Scenario
634
9.4.2 Enhancing the Integration Flow
634
9.5 OData API
637
9.5.1 SAP API Business Hub
641
9.5.2 Cross-Site Request Forgery Token Handling for Neo
655
9.5.3 Monitoring Message Flows Using the API
658
9.5.4 Managing Deployed Integration Content Using the API
664
9.5.5 Managing Log Files Using the APIs
666
9.5.6 Managing Message Store Entries Using APIs
668
9.5.7 Managing Security Material Using the API
671
9.5.8 Managing the Partner Directory Using the API
672
9.6 Using SAP Cloud Platform Integration with SAP Cloud Platform API Management
673
9.6.1 Establishing a Connection between SAP Cloud Platform Integration and SAP API Management
676
9.6.2 Provisioning Application Programming Interfaces
679
9.6.3 Consuming the Application Programming Interface
688
9.7 Summary
691
10 Integration with SAP Cloud Platform Open Connectors
693
10.1 Introduction
693
10.2 Connectors Catalog
695
10.2.1 Overview
698
10.2.2 Information
700
10.2.3 Setup
701
10.2.4 Resources
702
10.2.5 Validation
703
10.2.6 API Docs
704
10.3 Understanding Connectors
708
10.3.1 Authenticate Connections with API Providers
709
10.3.2 Inspect Authenticated Connector Instances
712
10.3.3 Testing in the API Docs
714
10.4 Understanding Common Resources
718
10.4.1 Creating a Common Resource
720
10.4.2 Cloning Common Resources
722
10.4.3 Transforming Resources
724
10.5 Using SAP Cloud Platform Integration with SAP Cloud Platform Open Connectors
727
10.5.1 Scenario
727
10.5.2 The Solution
728
10.6 Summary
737
11 SAP Cloud Platform Integration Security
739
11.1 Technical System Landscape
740
11.1.1 Architecture
740
11.1.2 Network Infrastructure
743
11.1.3 Data Storage Security
745
11.1.4 Data Protection and Privacy
746
11.1.5 Physical Data Security
748
11.2 Processes
749
11.2.1 Software Development Process
749
11.2.2 Operating the Cloud Infrastructure and Providing and Updating the Software
750
11.2.3 Setting Up Secure Connections between the Tenant and Remote Systems
751
11.3 User Administration and Authorization
752
11.3.1 Technical Aspects of User Management
753
11.3.2 Personas, Roles, and Permissions
754
11.3.3 Managing Users and Authorizations for an SAP Cloud Platform Integration Subaccount
755
11.3.4 Authorization on Package and Integration Flow Level
766
11.4 Data and Data Flow Security
772
11.4.1 Basic Cryptography in a Nutshell
773
11.4.2 Transport-Level Security Options
779
11.4.3 Authentication and Authorization
781
11.4.4 Securely Connecting a Customer System to SAP Cloud Platform Integration (through HTTPS)
795
11.4.5 Setting Up a Scenario Using OAuth with the Twitter Adapter
806
11.4.6 Message-Level Security Options
815
11.4.7 Designing Message-Level Security Options in an Integration Flow
818
11.5 Keystore Management
839
11.5.1 Using X.509 Security Material for SAP Cloud Platform Integration
839
11.5.2 Managing Security Material in the Tenant Keystore
843
11.5.3 Managing the Lifecycle of Keys Provided by SAP
847
11.6 Summary
852
12 Productive Scenarios Using SAP Cloud Platform Integration
855
12.1 Integration of SAP Cloud for Customer and SAP ERP
855
12.1.1 Technical Landscape
856
12.1.2 Example Adapter Configurations
857
12.2 Integration of SAP Cloud for Customer with SAP S/4HANA Cloud
860
12.3 Integration of SAP Marketing Cloud and Various Applications
861
12.4 Integration of SAP SuccessFactors and SAP ERP
862
12.4.1 Technical Landscape
863
12.4.2 SAP SuccessFactors Adapter
864
12.5 Integration of SAP Applications with the Ariba Network
866
12.5.1 Technical Landscape
868
12.6 Integration with German Tax Authorities Using the ELSTER Adapter
868
12.7 Summary
871
13 Summary and Outlook
873
13.1 Integration Content Design
874
13.2 Operations and Monitoring
875
13.3 Connectivity
876
13.4 B2B Integration
877
13.4.1 B2B Monitoring
878
13.4.2 Trading Partner Management
878
13.5 Migration from Neo to Cloud Foundry Environment
879
13.6 Hybrid Deployments on Cloud and On-Premise Infrastructures
879
13.7 Summary
880
Appendices
881
A Abbreviations
883
B Literature
889
B.1 Books
889
B.2 SAP Cloud Platform Integration Related Links
889
B.3 General Online Sources
890
B.4 SAP Communities
892
C The Authors
893
Index
895