blaulichtSMS/docs

Neue Session ohne Passwort im Klartext

ulbrich opened this issue · 6 comments

Hallo,

Ich möchte ungern das Passwort im Klartext zwischenspeichern oder in Requests verwenden. Gibt es die Möglichkeit, stattdessen Username und Passwort z.B. als MD5-Hash anzugeben?

Vielen Dank,
Jan

pmig commented

Hallo Jan,

Verwendest du die Dashboard oder die Alarm-API?

Username und Passwort sind in beiden Fällen keine sensiblen Daten, da diese jeweils nur den Zugriff zu einer bestimmten Resource ermöglichen (man könnte diese Daten in Kombination auch Zugriffsschlüssel nennen) und hoffentlich ein zufälliges, sicheres Passwort beinhalten.

Natürlich könnte man auch statt der Username / Passwort Kombination auch einen Hash verwenden, jedoch sehe ich darin keine Vorteile, bzw. Nachteile. Beides muss geändert werden, wenn der Verdacht besteht, dass 3. Zugang zu diesen Daten haben. Da diese Daten aber nur via https übertragen werden, ist der Transport gesichert.

Ich hoffe, dass ich deine Frage richtig verstanden habe. Wo genau liegen den deine Bedenken?

Beste Grüße, Philip

Ich integriere testweise die Dashboard-API in das Intranet unserer Bergwacht-Bereitschaft. Für den Zugriff würde ich ungerne Username und Passwort im Klartext in der Datenbank stehen haben. So könnte ich Username und Password per Formular erfassen, aber dann nur den MD5-Key speichern...

pmig commented

Genau so ist unsere API aufgebaut. Zuerst kann man mit Username und Passwort einen Login Request machen. Bei diesem Login Request erhält man die SessionId, die man für den Dashboard Request verwendet. Somit musst du nur die SessionId in der Datenbank speichern.

Die SessionId hat eine unbegrenzte Gültigkeit, solange kein zweiter Login mit dem selben User erfolgt und die SessionId regelmäßig verwendet wird.

Die Integration erfolgt so, dass nicht immer im Hintergrund gepollt werden soll, sondern nur wenn jemand aktiv schaut. Damit kann tagelang kein Abruf erfolgen und die Session läuft ab. Wie gesagt ist das nun nicht das große Drama, aber das Speichern eines Passworts gefällt mir nicht. Ich werde es als einfachen Schutz zumindest verschlüsselt ablegen.

pmig commented

Hallo Jan,

Die Session läuft nicht ab, solange kein zweiter Login (mit dem selben User) erfolgt. Ich würde empfehlen wirklich nur die SessionId zu speichern und falls diese wirklich invalid wird, erneut zur Login Page zu verlinken.

Dafür ist die Session ID gedacht. In diesem Fall fühlt es sich wirklich falsch an das Passwort speichern zu müssen, nur um eine neue Session zu bekommen.

Falls bei euch die Session wirklich zu oft abläuft (was eigentlich nicht passieren sollte), können wir uns überlegen spezielle User anzulegen, die eine fixe Session haben.

Beste Grüße, Philip

OK, machen wir so!