- 17. Juni 2014

Betriebssystembefehle via Transaktion ausführen

betriebssystembefehle_02

Sie haben keinen direkten Zugriff auf die Betriebssystem-Ebene eines SAP-Systems, möchten aber dennoch Betriebssystembefehle ausführen. Mit der folgenden Transaktion ist das Ausführen von Betriebssystembefehlen ohne direkten Betriebssystem-Zugriff möglich.

Sie benutzen noch ein veraltetes Berechtigungskonzept mit Security-Problemen?
Fachbereichsleiter Tobias Harmes

Wir führen für Sie ein revisionssicheres SAP Berechtigungskonzept ein, das die Sicherheit in Ihrem Unternehmen nachhaltig erhöht. Dabei verwenden wir eine standardisierte Vorgehensweise zur Einführung von neuen Berechtigungen, die wir bei vielen Kunden erfolgreich eingesetzt haben. Deshalb haben wir dafür auch ein passendes Angebot: Neues SAP Berechtigungskonzept.

Unsere Referenzen finden Sie hier.

Kontaktieren Sie mich: Telefon 0211.9462 8572-25 oder per E-Mail info@rz10.de.

In einem unverbindlichen Gespräch kann ich mit Ihnen über Ihre Ausgangslage sprechen und Ihnen Möglichkeiten aufzeigen. Selbstverständlich können wir danach auch ein unverbindliches Angebot unterbreiten.

 

Die Transaktion SM49 ermöglicht das Ausführen externer Betriebssystembefehle aus dem SAP-System heraus. Dabei können Sie einerseits auf vordefinierte Betriebssystembefehle zurückgreifen und andererseits weitere Betriebssystembefehle hinzufügen. Beide Szenarien werden im Folgenden erläutert.

Externe Betriebssystembefehle ausführen:

Führen Sie zunächst die Transaktion SM49 – Externe Betriebssystemkommandos aus. Sie sehen eine Übersicht über alle vordefinierten Betriebssystembefehle:

betriebssystembefehle_01

Um einen Betriebssystembefehl auszuführen, klicken Sie doppelt auf den gewünschten Befehl. In diesem Beispiel wählen wir den Betriebssystembefehl PING aus. Es öffnet sich die Detailansicht des Befehls:

betriebssystembefehle_02

In der Detailansicht werden die Grundinformationen zum ausgewählten Befehl angezeigt – so zum Beispiel der Typ des Betriebssystems (z.B. Windows) auf dem der Befehl ausgeführt wird. Nach dem Klick auf Ausführen kann der Befehl weiter spezifiziert werden. Im Beispiel des Ping-Befehls muss schließlich noch eine IP-Adresse oder der Name eines Rechners als Parameter übergeben werden. Daraufhin kann der Befehl entweder direkt im Dialog ausgeführt werden [Ausführen (F8)] oder (zeitversetzt) im Hintergrund [Ausführen im Hintergrund (F9)]. Im Folgenden wird der Ping-Befehl direkt auf localhost ausgeführt:

betriebssystembefehle_03

Mit dem Klick auf Ausführen wird der Befehl direkt ausgeführt und die Ausgabe des Betriebssystembefehls wird angezeigt:

betriebssystembefehle_04

Weitere Betriebssystembefehle selbst definieren:

Neben den vordefinierten Befehlen können Sie auch eigene/weitere Befehle – die im Rahmen des hinterlegten Betriebssystems möglich sind – definieren. Hierfür klicken Sie im Einstiegsbildschirm der Transaktion auf das Anlegen-Icon:

betriebssystembefehle_05

In dem Dialog zum Anlegen eines Betriebssystembefehls müssen Sie folgende Informationen hinterlegen:

Kommandoname: Der Titel des definierten Befehls, welcher in der Übersicht im Einstiegsbildschirm angezeigt wird. Wichtig: Der Name eigens definierter Betriebssystembefehle muss im Kundennamensraum liegen und mit Z oder Y beginnen.

Betriebssystem: Hier geben Sie das Betriebssystem an, auf welchem das SAP-System läuft. Wählen Sie hierfür das Feld aus und öffnen Sie die Wertehilfe mit F4. Anschließend können Sie ein bestimmtes Betriebssystem oder ANYOS auswählen, um den Befehl betriebssystemunabhängig zu hinterlegen.

Betriebssystem-Kommando: Hier geben Sie den eigentlichen Betriebssystembefehl an, welcher ausgeführt werden soll.

Parameter für Betriebssystem-Kommando: In diesem Feld können Sie feste Parameter hinterlegen, die mit dem Befehl ausgeführt werden sollen.

Zusätzliche Parameter erlaubt: Setzen Sie den Haken, um zusätzliche Parameter beim Ausführen des Befehls zu erlauben.

Zur Veranschaulichung zeigt der folgende Screenshot das beispielhafte Anlegen eines externen Kommandos für den Betriebssystembefehl help:

betriebssystembefehle_006

Letztendlich taucht der eigens definierte Betriebssystembefehl in der Übersicht im Einstiegsbild auf und kann wie oben beschrieben ausgeführt werden.

betriebssystembefehle_07

 

Sicherheitshinweis: Zugriff limitieren!

Der Zugriff auf die SM49 und das Ausführen von Betriebssystembefehlen aus dem SAP-System heraus ist aus sicherheitstechnischer Sicht natürlich höchst kritisch und sollte deswegen sehr limitiert werden. Beim Öffnen der Transaktion und Ausführen von Befehlen werden die folgenden Berechtigungsobjekte geprüft:

betriebssystembefehle_08

Neben dem obligatorischen S_TCODE für das Ausführen der Transaktion an sich, ist hierbei das Berechtigungsobjekt S_LOG_COM interessant, welches beim Ausühren eines Betriebssystembefehls geprüft wird. Es besteht aus den drei Berechtigungsfeldern:

COMMAND:  In der Transaktion definierter Name des Betriebssystemkommandos

OPSYSTEM: Betriebssystem des Zielsystems (bspw. WINDOWS NT, ANYOS, AIX, UNIX)

HOST: Hostname des Zielsystems

Über dieses Berechtigungsobjekt können Sie das Ausführen einzelner Betriebssystembefehle limitieren.

Welche Erfahrungen haben Sie mit dem Ausführen und Anlegen von Betriebssystembefehlen über die SM49 gemacht? Gab es bereits Situationen, in denen Sie auf diese Möglichkeit zurückgreifen mussten? Ich freue mich auf Ihre Kommentare und Antworten!

Jetzt das kostenlose E-Book zum Thema SAP Basis herunterladen:

Jetzt das kostenlose E-Book mit ausgewählten Fachartikeln herunterladen:




Schreiben Sie einen Kommentar

Bitte füllen Sie alle mit * gekennzeichneten Felder aus. Ihre E-Mail Adresse wird nicht veröffentlicht.