Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten...

12

Transcript of Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten...

Page 1: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects
Page 2: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

5

Inhaltsverzeichnis

InhaltsverzeichnisGrußwort 7

Vorwort 9

1 Einleitung 13

2 Architekturvarianten 172.1 REST und OData 172.2 Embedded Gateway 222.3 Gateway Hub 232.4 OData Provisioning 242.5 SAP HANA XSA und Cloud Foundry 25

3 SAP Cloud Connector 293.1 Installation 313.2 Konfiguration 333.3 Principal Propagation 42

4 SAP Mobile Cards 594.1 Kartentypen 594.2 Automatic Instance Generation 61

5 Hybride Apps 755.1 SAP Fiori Client 775.2 Eigene hybride Apps mit SAP Kapsel 80

6 Native Apps 876.1 SAP Cloud Platform SDK für iOS 876.2 SAP Cloud Platform SDK für Android 104

Page 3: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

6

Inhaltsverzeichnis

7 SAP Mobile Development Kit 1197.1 Erstellung einer App mit dem Mobile Development Kit 1217.2 Ausblick 137

8 Push und Offline 1398.1 Push-Benachrichtigungen 1398.2 Offline-Funktionalität 142

9 Fazit 151

A Der Autor 156

B Index 157

C Disclaimer 161

Page 4: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

29

3 SAP Cloud Connector

Der SAP Cloud Connector stellt eine sichere Verbindung zwischen unternehmensinternen On-Premise-Systemen und der SAP Cloud Platform her. Er ermöglicht Anwendungen und Diensten in der SAP Cloud Platform den Zugriff auf Dienste und Ressourcen im Unternehmensnetz. Umgekehrt können Systeme über den Cloud Connector Ressourcen in der SAP Cloud Platform nutzen. Dieses Kapitel erläutert Ihnen die notwendigen Schritte zur Installation und Konfiguration.

In aller Regel sind SAP-Systeme oder auch andere unternehmens-kritische Anwendungen gegen einen Zugriff aus Netzen außerhalb des eigenen Unternehmens geschützt und somit gut von der Außenwelt abgeschottet. Dies wird durch den Einsatz getrennter Netze, Router, Firewalls, Filter und spezieller Gateways sowie Proxys und Reverse Proxys ermöglicht.

Damit Dienste wie die Mobile Services dennoch auf Ressourcen wie z. B. einen OData-Service auf einem SAP-ERP-System zugreifen kön-nen, wird der SAP Cloud Connector benötigt. Dieser errichtet aus dem Unternehmensnetz heraus einen verschlüsselten Tunnel in die Cloud, über den dann weitere Verbindungen in beide Richtungen geschaffen werden können. Aus diesem Grund ist zwar eine ausgehende Verbin-dung für den Aufbau des Tunnels notwendig, aber Sie müssen in der Firewall keinen direkten externen Zugriff auf Ihr Unternehmensnetz-werk erlauben.

Abbildung 3.1 zeigt, wie das Gerät eines Benutzers über den Tunnel zwischen den Mobile Services in der SAP Cloud Platform und dem SAP Cloud Connector auf ein SAP-Backend-System zugreift.

Page 5: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

30

SAP Cloud Connector

Abbildung 3.1: Zugriff über den SAP Cloud Connector

Damit auch über diesen Tunnel kein unerwünschter Zugriff entstehen kann, verfügt der Cloud Connector über eine Zugriffskontrolle. Es ist möglich, verschiedene Systeme und Systemtypen zu konfigurieren und HTTP-Ressourcenpfade für den Zugriff aus der Cloud freizuge-ben. Weitere Protokolle wie RFC und LDAP (Lightweight Directory Access Protocol) werden für spezielle Anwendungen unterstützt.

Ein OData-Service wird, wenn es sich um keine rein technische Ver-bindung handelt, üblicherweise im Kontext des jeweiligen Benutzers ausgeführt. Um dies zu erreichen, muss eine HTTP-Anfrage für den

Page 6: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

31

SAP Cloud Connector

jeweiligen SAP-Benutzer authentisiert werden. Weil sich aber der An-wender einer App normalerweise nicht mit einem SAP-Benutzer an-meldet, sondern bei einem vom Unternehmen zur Verfügung gestell-ten und unternehmensweit genutzten Authentisierungsdienst (wie z. B. Microsoft Active Directory Federation Services [ADFS]), muss eine Übersetzung zwischen dem beim Authentisierungsdienst verifizierten Login und dem SAP-Benutzer stattfinden. Hier hilft ein Verfahren na-mens Principal Propagation, das ich Ihnen in Abschnitt 3.3 näher er-läutern werde.

3.1 Installation

Der SAP Cloud Connector ist ein auf Java basierendes Programm, das auf einem vorhandenen oder neuen System ausgeführt werden kann. Wird der Cloud Connector auf einem existierenden System in-stalliert, spart man sich eine zusätzliche Latenz zu diesem System. Erfolgt die Installation des Cloud Connectors auf einem dedizierten System, lässt sich der Datenfluss vom und zum Cloud Connector über Firewall-Regeln besser kontrollieren. Es ist zudem möglich, den Cloud Connector auf einem Entwicklerrechner einzurichten, beispielsweise um den Zugriff der SAP Web IDE in der SAP Cloud Platform auf einen ansonsten noch nicht über einen Cloud Connector im Unternehmens-netz publizierten OData-Service zu gestatten.

Sie können unter https://tools.hana.ondemand.com/#cloud den für das bei Ihnen installierte Betriebssystem passenden SAP Cloud Connec-tor herunterladen. Die genauen Systemvoraussetzungen sind in der dort verlinkten Dokumentation zu finden. Unter anderem wird ein Java Development Kit (JDK) in den Versionen 7 oder 8 benötigt.

Für den produktiven Einsatz sind Installationspakete sowohl für Microsoft Windows als auch für Linux verfügbar, für beide Betriebs-systeme werden bei der Installation entsprechende Systemdienste eingerichtet. Für den nicht produktiven Einsatz gibt es je eine sog.

Page 7: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

32

SAP Cloud Connector

portable Version für Microsoft Windows, Linux und macOS, die keine Administratorenrechte erfordert und lediglich entpackt werden muss.

Installation unter macOS

Als Beispiel soll die Installation unter macOS dienen. Wenn Sie den Cloud Connector als tar.gz-Datei he-runtergeladen haben, können Sie diese mit einem Doppelklick entpacken. Öffnen Sie nun die Terminal-Anwendung von macOS und wechseln Sie mithilfe des

cd-Befehls in das entpackte Verzeichnis. Durch die Eingabe von ./go.sh starten Sie den Cloud Connector. Es dauert ein paar Se-kunden, bis er gestartet ist (siehe Abbildung 3.2).

Abbildung 3.2: Start des Cloud Connectors im macOS-Terminal

Page 8: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

33

SAP Cloud Connector

3.2 Konfiguration

Die Konfiguration erfolgt nach der Installation im Webbrowser über eine vom Cloud Connector bereitgestellte Adresse.

3.2.1 Erste Anmeldung

Im Auslieferungszustand ist der Cloud Connector unter https://localhost:8443 zu erreichen. Das initiale Passwort für den Adminis-trator lautet manage, wie auch in Abbildung 3.3 zu sehen ist. An dieser Stelle kommt es auf die korrekte Groß- und Kleinschreibung an.

Abbildung 3.3: Anmeldemaske des SAP Cloud Connectors

Nach der ersten Anmeldung sollte das Kennwort geändert werden. Zudem können Sie auswählen, ob der Cloud Connector als »Master« oder als »Shadow« betrieben werden soll. Ein als »Shadow« konfigu-rierter Cloud Connector kann den Dienst des als »Master« konfigurier-

Page 9: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

157

Index

B Index

AABAP 22, 146Android 15, 59, 75, 87, 104Android Studio 104Apache Cordova 14, 16, 75API-Entwurf 18App-Bundle 132Apple Developer Program 89Apple Push Notification Service

139App-Metadaten 119, 132, 137

Actions 119Application.app 120Globals 120I18N 120Images 120Objects 120Pages 120Rules 120Services 120Styles 120

App Store 59, 77, 89Architekturvarianten 22Assoziationen 19Ausfallsicherheit 34

BBackend 17, 29, 43, 47Baidu 142Beispielzertifikat 49BlackBerry 142Buildpacks 25

CCache 18Capabilities 141Certificate Signing Request 48Client-Server-Architektur 17Cloud Foundry 25Cloud-Platform-Anbieter

Amazon Web Services 26Google Cloud Platform 26Microsoft Azure 26

Cloud-Plattform-Anbieter 26Code on Demand 18Container 75Cordova-Plugins 14Core Data Services 26CSS 16, 65, 75

DDefining Queries 84, 131, 144,

146Delta-Query 147Designentscheidungen 142Design Language 15, 87, 104Destination 57, 62, 63, 95, 98,

109, 129Discovery Service 96, 111

EEigenschaften 19Embedded Gateway 22Emulator 113Entität 19, 130, 136Entitätsmenge 19, 131, 136

Page 10: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

158

Index

Entitätstyp 19Entity Data Model 19Error Archive 145ETag 148Expand 65

FFirebase Cloud Messaging

Service 139Framework 88, 102, 104Funktionsimporte 145

GGateway Hub 23Global Account 62, 92Google Blockly 120Google Play 59, 77Gradle 117

HHandlebars 69HATEOAS 18HTML 16, 23, 65, 75HTTP 18, 20, 24, 30, 37, 55HTTP-Methode 21

DELETE 21GET 21POST 21

HTTPS-Proxy 36Hybride App 13, 14, 75, 80, 119Hybride Cloud 24

IIntermediate Certificate Authority

43, 48

Internet Communication Manager (ICM) 52

iOS 14, 59, 75, 87iOS Assistant 89

JJava 15, 16, 31, 137Java Development Kit (JDK) 31JavaScript 16, 25, 69, 75JavaScript Object Notation

(JSON) 64, 112

KKarten 59Kartentyp 59

Automatic Instance Generation 60, 61Default Card 60Server Managed Card 60Web Matching Card 60Welcome Card 59

Kotlin 15, 16

LLayered System 18LDAP-Anbindung 34Linux 32Low Code 137

MmacOS 32, 89Many-to-many-Relationships

147Mapping-Tabelle 43, 51, 54Metadaten 19Micro-App 59

Page 11: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

159

Index

Microsoft Active Directory Federation Services (ADFS) 31

Mobile Services App Development Tools 126

NNative App 14, 15, 87, 91, 106NativeScript 15, 16, 119Navigationseigenschaft 19, 65Netzwerkzone 23

OOAuth2 88, 124OData 17, 19, 21OData Provisioning 24OData-Service 19, 30, 61, 64,

95, 130Demo-OData-Service 62, 70, 95, 109, 121

Offline-OData 142Offline-Store 143Online-OData 143On-Premise 29OpenSSL 44Organization Identifier 97

PPasswort 33PEM 49PKCS12 49Principal Propagation 31, 42

Principal 42Principal Type 39Proxy-Generator 103, 106, 117Proxy-Klasse 98, 103, 117Push-Nachricht 101, 139

QQR-Code 70, 123

RReferential Constraints 146Registration ID 139Remote Function Call (RFC) 22,

24, 30Repeatable Request 148Request 17Request Queue 144Response 18REST 17, 59, 64, 139, 140REST-Client 21RESTful API 17Root Certificate Authority 44RSA-Schlüsselpaar 45

SS/4HANA 59SAML 88SAP Ariba 59SAP Cloud Connector 24, 29,

149Authentifikation 36Installation 31Konfiguration 33Master 33Shadow 33Status 40Verbindungsprüfung 41

SAP Cloud Identity 42SAP Cloud Platform 13, 24, 26,

29, 31, 34Global Account 35Subaccount 34Testzugang 34

Page 12: Inhaltsverzeichnis · Apple Developer Program 89 Apple Push Notification Service 139 App-Metadaten 119, 132, 137 Actions 119 Application.app 120 Globals 120 I18N 120 Images 120 Objects

160

Index

SAP Cloud Platform SDK für Android 104

SAP Cloud Platform SDK für iOS 87

SAP Fiori 15, 77Android 104iOS 87, 90

SAP Fiori Client 13, 16, 77SAP Fiori Launchpad 14, 23, 59,

77SAP Gateway 22, 37SAP HANA XS Advanced 25SAP Hybris 59SAP Kapsel 14, 75, 80SAP Mobile Cards 13, 16, 59SAP Mobile Development Kit

(MDK) 15, 119Client 119

SAP ONE Support Launchpad 89, 105

SAP SuccessFactors 59SAP Translation Hub 103SAP UI5 16, 80SAP Web IDE 31

Extensions 126Workspace 127

Skip-Token 147SMS 142Stateless 18S-User 106Swift 14, 16, 104, 137

TTeam ID 97Token 139

Apple Device Token 139Firebase Registration Token 139

Tombstone 148Transaktion 148

EXTID_DN 54RZ10 52SMICM 53, 56STRUST 51

Tunnel 29, 43

UUniform Interface 18

WWeb View 75Windows 32, 142Windows Phone 142

XXcode 85, 89, 97

ZZertifikat 43, 56

Gültigkeit 47Zugriffskontrolle 30