SAP Authorization and Trust Management Service (XSUAA) veranschaulichen

Objectives

After completing this lesson, you will be able to:
  • Veranschaulichen Sie den SAP Authorization and Trust Management Service (XSUAA).
  • Beschreiben Sie den App-Router.

Service SAP Authorization and Trust Management (XSUAA)

XSUAA: Übersicht

Der XSUAA-Service in SAP BTP wickelt den Berechtigungsfluss zwischen Benutzern, Identity-Providern und den Anwendungen oder Services ab. Der XSUAA-Service ist eine interne Entwicklung von SAP, die für SAP BTP vorgesehen ist. Im Cloud-Foundry-Projekt gibt es eine Open-Source-Komponente namens UAA. UAA ist ein OAuth-Provider, der sich um Authentifizierung und Autorisierung kümmert. SAP hat die Basis von UAA verwendet und um SAP-spezifische Funktionen erweitert, die in SAP BTP verwendet werden sollen.

Der XSUAA-Service kümmert sich um die Authentifizierung und Berechtigung in SAP BTP, Cloud Foundry, um Anwendungsbenutzern Berechtigungen über Benutzerrollen zu erteilen. Der XSUAA-Service speichert keine Benutzerdaten oder Benutzerdatensätze. Der XSUAA-Service benötigt eine vertrauenswürdige Verbindung zu einem Identity-Provider. Dies kann der SAP ID Service oder ein anderer Corporate-Identity-Provider sein, der in SAP BTP integriert wurde. Dies kann über SAP Cloud Identity Services - Identity Authentication Service (IAS) erfolgen.

Der XSUAA-Service fungiert als zentrale Infrastrukturkomponente der Cloud-Foundry-Umgebung auf SAP BTP für die Authentifizierung und Berechtigung von Anwendungsbenutzern. SAP hat die Cloud-Foundry-UAA um einen Service-Broker, Multi-Tenancy-Funktionen, Management-API-Funktionen und einige kleinere Erweiterungen erweitert. XSUAA verwendet OAuth, um sich zwischen mehreren Services zu authentifizieren und eine Verbindung zum Identity-Provider herzustellen.

OAuth ist ein offener Standard für Anwendungen und Websites zur Autorisierung. OAuth teilt keine Kennwortdaten, sondern verwendet stattdessen Autorisierungstoken, um eine Identität zwischen Consumern und Service-Providern nachzuweisen. Es handelt sich um ein Authentifizierungsprotokoll, mit dem Sie eine Anwendung genehmigen können, die in Ihrem Namen mit einer anderen interagiert, ohne Ihr Kennwort zu vergeben. Die von OAuth verwendeten Token werden JWT-Token genannt. JWT (ausgesprochen „jot") ist ein offener Standard, der eine kompakte und in sich geschlossene Art und Weise der sicheren Übertragung von Informationen zwischen Parteien definiert. JWT wird in OAuth häufig verwendet, um Benutzerinformationen und Zugriffsrechte sicher zu übertragen.

App-Router

Wenn eine Geschäftsanwendung aus mehreren verschiedenen Apps (Microservices) besteht, wird der Anwendungsrouter verwendet, um einen zentralen Einstiegspunkt für die Geschäftsanwendung bereitzustellen. Technisch gesehen ist ein Anwendungsrouter eine Node.js-basierte App, die in der öffentlichen NPM-Registry verfügbar ist. Ein App-Router wurde basierend auf einer Konfigurationsdatei namens xs-app.json gestartet. In dieser Datei wird definiert, welche Routen von diesem App-Router bedient werden und welche XSUAA-Serviceinstanz an den App-Router gebunden ist, um die Authentifizierungsanfragen zu verarbeiten.

Ein App-Router wird für Folgendes verwendet:

  • Statische Inhalte oder Dateien bedienen.
  • Authentifizieren Sie Benutzer.
  • Anforderung an Backend-Anwendungen (Microservices) versenden.

Fazit: Der App-Router leitet Authentifizierungsanfragen an den XSUAA-Service weiter, leitet zwischen den Apps oder Microservices weiter, und falls im Projekt vorhanden, bedient der App-Router auch statische Ressourcen wie Dokumente oder Bilder in einer Dateisystemstruktur.

Wichtigste Erkenntnisse dieser Lektion

Der XSUAA-Service ist die Verbindung zwischen Apps und Identity-Providern, um Sicherheit zu gewährleisten und Zugriff über Rollen zu gewähren, ohne Benutzerdaten oder Benutzerdatensätze zu speichern. Sie verwendet OAuth, um sich zwischen mehreren Services zu authentifizieren und um eine Verbindung zum Identity-Provider herzustellen. Darüber hinaus haben Sie den App-Router, der als zentraler Einstiegspunkt und Brücke zwischen Apps, Benutzern und dem XSUAA-Service fungiert.