Skip to end of metadata
Go to start of metadata

Problem:


Anbindung an SAP Solution Manager haben wir nach Signavio-Anleitung eingerichtet. Der Transaktionsimport funktioniert, doch Export der Diagramme nicht. Angezeigte Fehlermeldung ist "Authentication to Solution Manager failed".



Solution:


Analyse der Logs auf Kundenseite zeigt folgenden Muster:

  1. Es werden drei nacheinander folgende GET aufrufe gesetzt.
  2. Bei jedem dieser Aufrufe kommt eine Antwort zurück, in der Kombination von XCRSF-Token und Cookie geliefert wird.
  3. In dem PUT Call wird automatisch der Token aus dem ersten GET Aufruf und der Cookie aus dem letzten GET zusammen kombiniert
  4. PUT endet mit "Forbidden"

Analyse des Geschehens auf Kundenseite:

  • das CSRF Token wird als Header zurückgegeben / gesendet
  • die SAP Session ID wird als Cookie gesetzt
  • wir verwenden einen Cookie-Store (analog zu üblichem Browser-Verhalten), daher wird eine neue Session auch sofort im nächsten Request verwendet
  • allerdings beruht unsere Implementierung auf der Annahme, dass die Session über mehrere Requests hinweg offen bleibt, daher lesen wir den CSRF Token Header nur aus der Response des initialen Authentifizierungs-Requests aus. Die Header der folgenden Requests werden ignoriert.
  • bei allen anderen Kunden, ist deren Solution Manager offensichtlich so konfiguriert, dass keine neue Session erstellt wird, wenn ein Request bereits ein Session-Cookie mitsendet. Bei Ihrem System scheint dies nicht der Fall zu sein.

Es gibt zwei mögliche Lösungen:

  1. Kunde passt die Konfiguration Ihres Solution Managers so an, dass bestehende Sessions wiederverwendet werden
  2. Wir passen unsere Implementierung so an, dass sie robuster auf Systeme reagiert, die bei jedem Request eine neue Session erstellen

Aber: unsere Solution Manager Integration aktuell (Stand 03.07.2019) in einer Maintenance-Only-Phase befindet. Das heißt, dass wir die Implementierung vorerst nur bei kritischen Problemen anfassen. Da es sich hier aber eher um ein ungewöhnliches Verhalten des Kundensystems handelt, sehen wir dies nicht als kritisches Problem an. Folglich kann aktuell keine Aussage dazu getroffen werden, wann wir die Lösung 2 unsererseits zur Verfügung gestellt werden könnte.