Das SAL ist bekanntermaßen ein optional einzusetzendes Protokollierungs-Tool, mit dessen Hilfe ausgewählte Benutzeraktivitäten im ABAP-Stack eines SAP-Systems aufgezeichnet werden können. Zu unterscheiden ist hier zwischen dem „alten“ SAL, das über die Transaktion SM19 konfiguriert wurde, und dem „neuen“ SAL, das über Transaktionen aus dem Namensraum RSAU_* administriert und ausgewertet wird.
Die SAP selbst hat sich in mehreren SAP-Hinweisen zu dessen Funktion bzw. Konfiguration geäußert. Der folgende Artikel erläutert nicht grundsätzlich die Funktion dieses Protokollierungs-Tools, sondern stellt Auszüge aus den Hinweisen 539404, 2883981 und 2676384 vor und gibt Hinweise zur Prüfung der Konfiguration.
1.1 Konfiguration über Parameter
Früher wurden generelle Einstellungen des SAL ausschließlich über Systemparameter überwiegend aus dem Namensraum rsau/* gepflegt (siehe Abb.1).
Abb. 1: Systemparameter in der Transaktion RSPFPAR
Ab dem SAP-Release 7.40 wurden zusätzlich Kernelparameter mit denselben Bedeutungen innerhalb der Pflegetransaktionen des SAL eingeführt (siehe Abb.2).
Abb. 2: Kernelparameter in der Transaktion RSAU_CONFIG
Oftmals besteht die Frage, welche der beiden Einstellungen hier greifen bei widersprechenden Werten. Die SAP-Hinweise beinhalten die Antwort, dass die Systemparameter nach wie vor berücksichtigt werden, aber nur, falls die entsprechenden Werte in den Kernelparametern nicht gepflegt sind, sie werden also durch die Kernelparameter überschrieben. Es wird hier empfohlen, die Werte der Kernel- und Systemparameter gleich auszuprägen, um Missverständnissen vorzubeugen.
1.2 Ausprägung der einzelnen Filter
Die konkrete Ausprägung der einzelnen Filter ist von verschiedenen Faktoren abhängig. Bei einer vollständigen Aufzeichnung aller Benutzeraktivitäten sind die entstehenden Protokollinhalte sehr sensibel, da über deren Auswertungen Rückschlüsse auf das Arbeitsverhalten der einzelnen Mitarbeiter möglich wären. Außerdem können hier große Datenmengen auch aufgrund der Hintergrundaktivitäten der Technischen Benutzer entstehen.
Ein oft genutzter Kompromiss zwischen einer möglichst umfassenden Nachvollziehbarkeit einerseits, und einer überschaubaren Datenmenge und einer Vermeidung einer Benutzerüberwachung andererseits besteht oft darin, nur nicht personifizierte, dialogfähige Benutzer mit sehr hohen Rechten (also zum Beispiel Notfallbenutzer) vollständig und allgemein nur kritische Aktivitäten aller Benutzer zu protokollieren. Werden alle Benutzer umfassender aufgezeichnet, so muss die Benutzerüberwachung über eine entsprechende Absicherung auf der Auswertungs-Seite dieser Protokolle verhindert werden. Dies ist beispielsweise über eine pseudonymisierte Auswertung der Protokolle über die Transaktion RSAU_READ_LOG_ADM möglich.
Ist eine möglichst umfassende Auszeichnung geplant, so ist die Empfehlung von SAP, die Meldungen mit den IDs AU5, AUK, AUW, CUV, DUI, DUR und EUE bei den Filtern evtl. auszusparen, um hohe Datenmengen trotz der Aufzeichnung auch technischer Benutzer zu vermeiden (siehe Abb.3)
Abb. 3: Auszusparende Meldungs-IDs mit Bedeutung
Folgende Filtereinstellungen werden konkret empfohlen:
- Aufzeichnung aller Meldungen in allen Mandanten für den Benutzer SAP* (Eintrag im Filter: SAP#*, damit der der Stern als String und nicht als Platzhalter interpretiert wird)
- Aufzeichnung aller Meldungen in allen Mandanten für Notfallbenutzer
- Aufzeichnung aller Meldungen für alle Benutzer im Mandanten 066 (falls dieser vorhanden ist)
- Aufzeichnung aller Meldungen in allen Mandanten für alle Benutzer bis auf die oben angegebenen auszusparenden Meldungs-IDs
1.2 Konfigurationsprüfung über die Tabelle RSAUPROF
Falls die Konfiguration des SAL geprüft werden soll, und nur Tabellenberechtigungen zur Verfügung stehen, so kann ein Großteil der Konfiguration auch über die Tabelle RSAUPROF ausgelesen werden.
Sowohl die Kernelparameter, als auch die Filtereinstellungen sind in dieser Tabelle abgespeichert, allerdings sind nicht alle Filterdetails ohne weiteres interpretierbar, aber es sind trotzdem wichtige Informationen auswertbar.
Ein Vergleich der Kernelparameter und Filtereinstellungen (siehe Abb.4, Abb.5) macht die Zusammenhänge offensichtlich.
Abb. 4: Konfiguration im SAL
Abb. 5: Resultierende Inhalte in der Tabelle RSAUPROF
Folgende Entsprechungen lassen sich bei den Kernelparametern erkennen:
Kernelparameter | Korrespondierender Tabelleneintrag |
Statisches AuditLog aktiv | $KERNEL$ 0001 |
Generische Benutzerselektion | $KERNEL$ 0002 |
Integritätsschutzformel aktiv | $KERNEL$ 0009 |
Anzahl Filter je Profil | $KERNEL$ 0003 |
Maximale Größe der Auditdatei | $KERNEL$ 0005 |
Maximale Größe einer Auditdatei | $KERNEL$ 0007 |
Maximale Größe aller Auditdateien | $KERNEL$ 0008 |
Eine Auditdatei pro Tag | $KERNEL$ 0004 |
Protokolliere Peer-Adresse anstatt Terminal-ID | $KERNEL$ 0011 |
Aufzeichnungsziel | $KERNEL$ 0010 |
Aufzeichnungsart | $KERNEL$ 0099 |
Mehrere Auditdateien pro Tag | $KERNEL$ 0006 |
Datensätze, deren Einträge im Feld PROFILNAME nicht mit den Zeichen $ oder ! beginnen, definieren die Einstellungen der statischen Filter. Hier lassen sich zumindest ohne aufwändige Analysen die hinterlegten Mandanten, Benutzer und die Aktivierung des Filters entnehmen. Das aktuelle Profil wird über den Profilnamen $CURPROF vorgegeben.