Das Notes Forum
Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: Günther Rupitz am 18.09.13 - 09:11:21
-
Hallo
Ich benötige wieder einmal einenen Denkanstoß für ein Problem:
Diverse Notes-Applikationen greifen über unterschiedliche Schnittstellen (ODBC, OLE, Webservice) auf andere Datenbanken zu.
Dies geschieht sowohl aus Server-Agenten als auch aus der GUI.
Die Abfragen werden aber meistens mit den Rechten eines eigens dafür eingerichteten Benutzers durchgeführt.
Was ist nun der sicherste Weg um die Logindaten abzulegen?
Kann ich überhaupt verhindern, dass ein gewiefter Benutzer das irgendwo hinterlegte Kennwort ausliest?
Danke für Ideen, Günther
-
Wenn Du das in einem durch Verschlüsselung geschützten Kennwort- Feld ablegst, dann kommt da eigentlich keiner ran ausser denen, die den Schlüssel haben.
Die Verschlüsselung erfolgt dann entweder über einen Secret Encryption key oder eben über die IDs der Benutzer...
Den Schlüssel gibst Du dann nur den Servern / demjenigen der das Dokument pflegt UND demjenigen, der die Agenten signiert.
-
Hallo Thorsten
Dass das ganze über die Verschlüsselung gehen muss ist schon klar, ist auch kein Thema wenn es als Serveragent läuft.
Es gibt aber Fälle wo es am Client mit den Rechten des Benutzer läuft.
Wenn es geht möchte ich aber verhindern, dass der Benutzer als solches keine Möglichkeit hat die Credentials auszulesen (eben nur wenn er den von mir erstellten Code dafür verwendet).
Klar was ich meine?
Günther
-
Die Kernfrage für mich ist, warum das überhaupt über die GUI laufen muss. Eine saubere Schnittstellendatenbank, in die ein Auftrag geschrieben wird, dann ein Agent auf dem Server (agent.RunOnServer) die Daten aus dem Fremdsystem holt und in den Auftrag zurückschreibt und schließlich die Routine aus dem GUI sich dort die Daten abholt, benötigt niemals die mögliche Bekanntgabe eines Passwortes an den Benutzer.
Nächster Vorteil wäre, dass Verbindungen zu den Fremdsystemen nur auf dem Server vorhanden sein müssen, und nicht auf dem Client. Eine Fehlerquelle weniger und höhere Sicherheit wären das Ergebnis.
-
Die Idee mit der Schnittstellendatenbank gefällt mir schon ganz gut, der Aufwand für simple Datenabfragen hält sich wahrscheinlich auch in Grenzen.
Sobald es aber in Richtung Datenmanipulation, bzw. Navigieren in großen Datenmengen geht dürfte es aber doch recht aufwendig werden, bzw. es zu Performanceeinbußen durch den Overhead gehen da die Daten in der Schnittstellendatenbank ja gepuffert werden müssen, und "Stehende Verbindungen" zur Datenquelle gar nicht möglich sind.
Günther