Ich schreibe (in C# mit .NET 3.5) eine administrative Anwendung, die mehrere Windows-Systeme für verschiedene Bits von Daten abfragt. In vielen Fällen wird WMI verwendet, in manchen Fällen muss es jedoch möglicherweise die Remote-Registrierung lesen oder einen Befehl oder ein Skript über das abgefragte System ausführen. Diese Abfrage wird in wiederholten Intervallen durchgeführt - normalerweise nachts, kann aber so konfiguriert werden, dass sie öfter (oder weniger) häufig geschieht. So könnte die Umfrage so oft wie alle 10 Minuten oder so selten wie einmal im Monat geschehen. Es muss auf automatisierte Weise geschehen, ohne menschlichen Eingriff.Speichern von Windows-Passwörtern
Diese Funktionen erfordern Administratorzugriff auf die abgefragten Systeme. Jetzt erwarte ich, dass es in den meisten Anwendungsfällen eine Domain geben wird und die Polling-Anwendung als Dienst mit Domain-Admin-Rechten (oder gleichwertigen Rechten) ausgeführt werden kann, was bedeutet, dass ich mich nicht um die Speicherung von Passwörtern kümmern muss Die App definiert den Benutzernamen/das Passwort des Dienstes über Standard-Windows-Mechanismen.
Aber es gibt immer ein paar schwarze Schafe da draußen. Das Programm kann in Nicht-Domänen-Umgebungen ausgeführt werden oder in Fällen, in denen einige abgefragte Systeme nicht Mitglieder der Domäne sind. In diesen Fällen müssen wir einen Benutzernamen und ein Passwort definieren, sie sicher speichern und dann dieses Benutzer/Pass-Paar aufrufen, wenn wir dieses System abfragen. Also denken Sie daran - in diesem Fall ist das Programm geschrieben ist der Benutzer wer sendet Passwort an das Authentifizierungssystem.
Ich bin nicht sicher, ob ich einen reversiblen Hash verwenden muss, den ich dann zum Zeitpunkt der Verwendung in Klartext entschlüssle, oder ob es einen Windows-Mechanismus gibt, der es mir erlaubt, den Hash zu speichern und dann wiederzuverwenden. Offensichtlich ist der zweite Mechanismus vorzuziehen; Ich möchte mein Programm entweder nie kennen den Klartext-Wert des Passworts, oder kenne es für die kürzest mögliche Zeit.
Ich brauche Vorschläge für intelligente und sichere Wege, dies zu erreichen.
Danke fürs schauen! hier
mögliche Duplikate von [Wie Passwörter in WinForms-Anwendung zu speichern?] (Http://StackOverflow.com/Questions/40853/How-To-Store-passwords-in-winforms-application) – BalusC