Wie Sie Datasphere CLI einrichten

Datasphere CLI einrichten

SAP Datasphere CLI (Command Line Interface) bietet eine Reihe von entscheidenden Vorteilen, insbesondere für Entwickler und Administratoren, die Prozesse über die grafische Benutzeroberfläche hinaus optimieren möchten. In diesem Beitrag führe ich Sie durch die Einrichtung von SAP Datasphere CLI.

Mithilfe von Datasphere CLI können Sie die Konsole / Eingabeaufforderung für die Interaktion mit Datasphere nutzen. Für die Einrichtung sind folgende Schritte notwendig:

Installation

Für die Installation von SAP Datasphere CLI müssen die folgenden Voraussetzungen erfüllt sein:

  • Node.js version >= 20 und <=24
  • npm version >= 8 und <=11

Diese können Sie mit den folgenden Befehlen prüfen:

node -v
npm -v
Node Version

Falls Sie statt der Version eine Fehlermeldung bekommen, ist Node.js nicht installiert und muss installiert werden. Wenn die Voraussetzungen erfüllt sind, können Sie Datasphere CLI mit dem folgenden Befehl installieren. Öffnen Sie dazu die Konsole / Eingabeaufforderung.

npm install -g @sap/datasphere-cli

Für Upgrades muss der Befehl wiederholt ausgeführt werden.

Testen Sie die Installation mit:

datasphere –v
# oder
datasphere --version
Datasphere Version

Host festlegen

Identifizieren Sie Ihren Datasphere Tenant, um Befehle ohne den --host Parameter ausführen zu können.

datasphere config host set <url>

Zum Beispiel:

datasphere config host set https://your-dsp-domain.eu10.hcs.cloud.sap

Die Domain wird in settings.json unter %userprofile%/.@sap/datasphere-cli/.cache gespeichert. Sie können die gespeicherte Domain mit dem folgenden Befehl anzeigen.

datasphere config host show

Falls Sie die gespeicherten Tenant löschen wollen, verwenden Sie

datasphere config host clean

OAuth Client in Datasphere einrichten

Als nächstes müssen Sie einen OAuth Client vom Typ Interactive Usage oder Technical User in Datasphere einrichten. Der Technische Benutzer hat einen eingeschränkten Umfang, so kann dieser zum Beispiel keine Benutzer verwalten. Allerdings erfolgt die Anmeldung einfacher. Es ist keine Authentifizierung erforderlich. Der OAuth-Client enthält die erforderlichen Anmeldeinformationen und Berechtigungen. Im folgenden Beispiel nutze ich Interactive Usage.

Folgen Sie in Datasphere den Menüpfad Datasphere → Administration → App Integration und fügen Sie einen neuen OAuth Client hinzu.

OAuth Client einrichten

Als Redirect URI können Sie http://localhost:8080 eingeben.

Client konfigurieren

Kopieren Sie nach der Einrichtung die Client ID und Secret. Der Secret Key kann danach nicht mehr angezeigt werden, falls Sie diesen verlieren, müssen Sie einen neuen Client einrichten.

Client ID und Secret kopieren

Anmeldung

Nach der Konfiguration des Clients können Sie sich über die Befehlszeile an Datasphere anmelden.

datasphere login

Alternativ können Sie die relevanten Parameter direkt mitgeben:

datasphere login 
    --client-id "<id>" 
    --client-secret "<secret>" 
    --authorization-url "<url>"
    --token-url "<url>"

Zum Beispiel:

datasphere login --client-id "your-id" --client-secret "your-secret" --authorization-url "https://your-dsp-domain.authentication.eu10.hana.ondemand.com/oauth/authorize" --token-url "https://your-dsp-domain.authentication.eu10.hana.ondemand.com/oauth/token"

Wenn Sie einen Interactive Usage Client verwenden, werden Sie zu Beginn Ihrer OAuth-Sitzung aufgefordert, sich mit Ihrem Benutzernamen und Kennwort für SAP Datasphere in einem Browserfenster anzumelden, um Ihre Space-Berechtigungen zu ermitteln. Anschließend sollte sich ein Fenster mit der Meldung Thank you, you can close the window öffnen. Wenn die Verbindung fehlschlägt, überprüfen Sie Ihre Datasphere Berechtigungen.

Bei der erfolgreichen Anmeldung wird unter %userprofile%/.@sap/datasphere-cli/.cache eine secrets.json Datei angelegt.

Sie können den Inhalt auch mit dem folgenden Befehl anzeigen:

datasphere config secrets show

Kopieren Sie die folgenden Werte in eine separate secrets Datei, z.B. dev-secrets.json oder prod-secrets.json. Die access und refresh Tokens sind 30 Tage lang gültig.

{
    "client_id": "<client-id>",
    "client_secret": "<client-secret>",
    "authorization_url": "<authorization-url>",
    "token_url": "<token-url>",
    "access_token": "<access-token>",
    "refresh_token": "<refresh-token>",
    "host": "<url>",
    "authorization_flow": "<flow>"
}

Zum Beispiel:

{
  "client_id": "sb-1331..",
  "client_secret": "1337a..",
  "authorization_url": "https://domain.authentication.eu10.hana.ondemand.com/oauth/authorize",
  "token_url": "https://domain.authentication.eu10.hana.ondemand.com/oauth/token",
  "access_token": "abc1337..",
  "refresh_token": "xyz1337..",
  "authorization_flow": "authorization_code"
}

Befehle ausführen

Nun können Sie über das Terminal Befehle auf Datasphere ausführen, ohne sich vorher anzumelden. Z.B. über den absoluten Pfad:

datasphere spaces list --secrets-file "c:/Users/denis/secrets.json"

Oder aus dem jeweiligen Verzeichnis

datasphere spaces list --secrets-file secrets.json
Spaces auflisten

Viel Spass damit!

0 Kommentare

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden.