Ich möchte Benutzernamen und Kennwortinformationen von einem Prozess in einen anderen Prozess übertragen, der auf demselben Server in Windows ausgeführt wird. Was ist der beste Ansatz, um diesen Transfer auf sichere Weise zu erreichen? Ein einfacher Ansatz besteht darin, die Kennwörter in eine Datei zu kopieren und dann den anderen Prozess aus einer Datei lesen zu lassen und die Datei nach dem Lesen zu löschen. Obwohl dies einfach ist, mache ich mir Sorgen, ob es sicher ist, da es immer noch möglich ist, dass jemand Zugriff auf diese Datei erhält, obwohl sie nur für eine kurze Zeit existiert. & hat auch die Möglichkeit, dass die Datei weggelassen wird verarbeitet Fehler oder stürzt ab. IPCs wie Sockets und Named Pipes scheinen für dieses Problem ein Overkill zu sein. Ich bin mehr geneigt, Speicher-Mapped-Dateien zu verwenden, wie in diesem Link weiter unten erläutert, in dem es darum geht, speicherübergreifend Speicher zu teilen. Ist das der richtige Ansatz? Ist es auch eine gute Idee, den Speicher vor dem Freigeben/Löschen mit Dummy-Daten zu füllen, um Rouge-Prozesse daran zu hindern, Daten von diesem Speicherort aufzuspüren?Wie vertrauliche Daten zwischen Prozessen in Windows übertragen werden?
http://msdn.microsoft.com/en-us/library/aa366551(VS.85).aspx
Ihre erste Aufgabe sollte es sein, sicherzustellen, dass Sie Ihre Daten verschlüsseln. Dann arbeite daran, wie man zwischen Prozessen vorbeigeht. Arbeiten Sie unter der Annahme, dass unabhängig davon, welche Methode Sie verwenden, um die Daten über Prozesse hinweg zu übertragen, jemand in der Lage ist, die Daten zu finden. – Jeremy
Wenn ich mich für die Datenverschlüsselung entscheide, werde ich große Probleme mit der Schlüsselverwaltung bekommen. Denkst du nicht, dass das ein großer Overkill für solch eine einfache Aufgabe ist? – msvcyc