This is a test message to test the length of the message box.
Login
|
BTP Basic Authentication & Principal Propagation
Erstellt von Software-Heroes

BTP - Basic Authentication & Principal Propagation

362

In diesem Artikel schauen wir uns die Anmeldemöglichkeiten vom ABAP Environment Richtung On-Premise an und wie sie Einfluss auf deine Entwicklung haben.

Werbung


In diesem Artikel schauen wir uns verschiedene Methoden an, um uns an einem On-Premise System anzumelden und auf Daten zuzugreifen. Dabei stehen uns verschiedene Szenarien für unterschiedliche Dinge zur Verfügung. Dazu mehr in den folgenden Kapiteln.

 

Einleitung

Solange du auf dem ABAP Environment arbeitest, verhält sich das System wie ein Cloud oder On-Premise System und alle Funktionen können normal verwendet werden. Möchtest du allerdings einen Service aufrufen, um On-Premise Daten zu lesen, dann wirst du vielleicht ein paar Schwierigkeiten haben oder an Stellen kommen, wo es nicht mehr weiter geht. Dann könnte vielleicht die Art des Users das entscheidende Kriterium sein.

 

Arten

Schauen wir uns dazu einmal die gängigsten Arten von Anmeldungen an und welche Vor- und Nachteile diese mit sich bringen.

 

Basic Authentication

Bei der Basic Authentication oder kurz BA, verwenden wir einen technischen User mit eigenen Berechtigungen, um uns am Backend System anzumelden. Damit muss nicht jeder User, der die Verbindung zu diesem System nutzen möchte, einen eigenen User auf dem System haben. In diesem Fall hinterlegen wir die Logindaten zum Beispiel in einer Verbindung im Subaccount in der BTP und jeder mit Zugriff auf die Verbindung kann auf das konfigurierte System zugreifen.

 

Principal Propagation

Bei der Principal Propagation oder kurz PP, melden wir uns über einen Identity Provider am System an, dieser stellt uns ein Ticket aus, womit wir am System angemeldet werden, solange das Ticket gültig ist. Bauen wir die Verbindung Richtung On-Premise auf, dann wird dieses Ticket an das System weitergeleitet. Besteht dann zwischen Subaccount -> Cloud Connector -> On-Premise eine Vertrauensbeziehung (Konfiguration und Zertifikat), dann werden wir am Ende im On-Premise System angemeldet und arbeiten dann mit unserem persönlichen User weiter. Damit weiß das System wer wir sind und es gelten unsere individuellen Berechtigungen.

 

Weitere Verfahren

Grundsätzlich gibt es weitere Anmeldeverfahren, wie OAuth, SAML und Zertifikate. In diesem Artikel gehen wir auf die beiden gängien Verfahren ein, wenn es um die Anbindung mit dem ABAP Environment geht. Möchtest du SAP Build Process Automation nutzen, wirst du meist auf den Destination Service mit OAuth zurückgreifen.

 

Verwendung

Schauen wir uns in diesem Kapitel einmal an, was wir mit den beiden Arten nun genau machen können und wir du sie effektiv für dich nutzen kannst.

 

Jobs

Möchten wir in einem Application Job auf On-Premise Daten zugreifen, dann benötigen wir hier eine Verbindung vom Typ BA. Grundsätzlich wird der Job unter dem User ausgeführt, der ihn auch eingeplant hat. Da der User sich aber vorher nicht angemeldet hat, besitzt er damit kein valides "Ticket", um sich am On-Premise System anzumelden. 

 

ABAP Development Tools

Möchtest du eine Schnittstelle in einer ausführbaren Klasse testen, dann kannst du das aktuell nur über eine BA Verbindung machen. Ähnlich wie beim Application Job, fehlt hier in den ABAP Development Tools ein valides Ticket zur Anmeldung am On-Premise System.

 

HTTP Service

Den HTTP Service rufen wir von außen über den Browser auf. Wenn wir den Service das erste Mal aufrufen, verlangt das System von uns eine Anmeldung. In diesem Fall wird nach erfolgreicher Anmeldung ein gültiges Ticket ausgestellt, damit haben wir die Möglichkeit eine Verbindung vom Typ PP zu verwenden und uns mit unserem eigenen User am Backend System anzumelden. Grundsätzlich kann auch eine technische Verbindung über BA verwendet werden.

 

Fiori App

Arbeiten wir in einer Fiori App und haben zum Beispiel eine Custom Entity über die wir Daten für unsere Wertehilfe nachlesen, dann können wir auch hier beide Arten von Verbindungen nutzen. Der Vorteil beim angemeldeten User liegt darin, dass er nur die Werte angeboten bekommt, für die er auch berechtigt ist. Auf der anderen Seite, wenn du sicherstellen willst, dass immer alle Werte angezeigt werden, solltest du einen technischen User verwenden und ihm die nötigen Berechtigungen geben.

 

Zusammenfassung

Was können wir nun aus den verschiedenen Verbindungen für uns mitnehmen? Zuerst einmal funktioniert in allen Fällen eine technische Verbindung über eine Basic Authentication, da bereits User und Passwort in der Verbindung hinterlegt sind und eine Anmeldung auf dem Zielsystem erfolgen kann.

Bei der Principal Propagation musst du dich zuvor angemeldet haben, bevor du auf ein Backend System zugreifen kannst. Dafür werden die Berechtigungen individuell gezogen, was sicherstellt, dass der angemeldete Benutzer nicht mehr sieht, als er eigentlich sollte. Dafür sind Verbindungen mit PP nicht überall verwendbar, wie zum Beispiel in einem Job oder direkt aus den ADTs zum Testen von Zugriffen.

 

Fazit

Solltest du im nächsten Test über die ABAP Development Tools mal Probleme mit der Anmeldung am On-Premise System haben, dann verwendest du wahrscheinlich eine Verbindung von Typ Principal Propagation. In diesem Fall auf Basic Authentication wechseln und der Zugriff sollte funktionieren.


Enthaltene Themen:
BTPABAP EnvironmentBasic AuthenticationPrincipal Propagation
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Dienstag und Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


RAP - Änderungsbelege implementieren (Nativ)

Kategorie - ABAP

Hast du das passende Release, dann kannst du Änderungsbelege auch mittlerweile nativ in RAP implementieren, ohne viel mnauelle Implementierung. Schauen wir uns dazu die verschiedenen Schritte an.

24.04.2026

RAP - Auxiliary Class

Kategorie - ABAP

Wenn die Implementierung in der Verhaltensimplementierung eines RAP Objekts wächst, welche Möglichkeiten hast du dann noch für eine saubere Kapselung? Schauen wir uns das einmal im Detail an.

17.04.2026

RAP - Änderungsbelege implementieren (Manuell)

Kategorie - ABAP

In diesem Artikel steigen wir in die manuelle Implementierung der Änderungsbelege in unser RAP Objekt ein und schauen uns die verschiedenen Schritte der Integration an. Am Ende sollen Änderungsbelege automatisch erzeugt werden.

14.04.2026

RAP - Draft Query

Kategorie - ABAP

In diesem Artikel schauen wir uns die Draft Query in RAP an und wie du damit die Einträge und ihre Sichtbarkeit steuern kannst. Dazu schauen wir uns die Praxis an einem Beispiel an.

03.04.2026

RAP - Importance

Kategorie - ABAP

Schauen wir einmal auf die Wichtigkeit von Informationen innerhalb einer SAP Fiori Anwendung und wie wir damit die Sichtbarkeit in der RAP Anwendung steuern können.

24.03.2026