Sysprep: Entfernt es die Windows-Anmeldeinformationen von einem Benutzerkonto?

Sysprep: Entfernt es die Windows-Anmeldeinformationen von einem Benutzerkonto?

Ich habe einen automatisierten Prozess, der ein Image erstellen und dieses Image mit einem Benutzer bereitstellen soll, der für die Ausführung eines Dienstes eingerichtet ist. Der Benutzer benötigt Zugriff auf eine Azure-Netzwerkdateifreigabe. Um die Anmeldeinformationen für den Zugriff auf die Dateifreigabe bereitzustellen, speichere ich die Anmeldeinformationen mit dem folgenden Befehl im Windows Credential Manager und lasse ihn als mein Dienstkonto ausführen.

cmdkey /add:storage.file.core.windows.net /user:Azure\storage /pass:password

Anschließend füge ich die Netzwerkkarte hinzu über

net use Z: \\storage.file.core.windows.net\share /persistent:yes

Das Netzwerk ist zugeordnet und ich kann auf den obigen UNC-Pfad zugreifen. Anschließend bereite ich die VM für die Image-Erfassung vor, indem ich Sysprep ausführe und es generalisiere.

C:\Windows\Sysprep\Sysprep.exe /oobe /generalize /quiet /quit /mode:vm

Wenn ich das Image erneut hochfahre, kann ich mich zwar bei meinem Servicekonto anmelden, aber der von mir hinzugefügte Cmdkey ist verschwunden. Ich kann eine geplante Aufgabe schreiben, um den Cmdkey erneut hinzuzufügen, frage mich aber, ob es wirklich Sysprep ist, das meine Windows-Anmeldeinformationen löscht, und ob es eine Möglichkeit gibt, dies zu vermeiden.

Antwort1

Ich habe diese Methode verwendet, um ein Image zu erstellen, das bereits über ein gemountetes Netzlaufwerk verfügt. Dabei habe ich festgestellt, dass mein automatisierter Prozess (Packer), selbst wenn er unter demselben Konto ausgeführt wurde, die Anmeldeinformationen der Skriptsitzung und die Anmeldeinformationen der Benutzersitzung nicht gemeinsam nutzt.

Das Mounten einer Netzwerkfreigabe über ein Skript (unabhängig davon, ob es auf demselben Konto ausgeführt wird) und die Erwartung, dass die Freigabe in Benutzersitzungen/Anwendungen gemountet wird, funktioniert nicht. Die Anmeldeinformationen werden nicht zwischen den beiden geteilt.

Ich habe mein Skript eine Batchdatei erstellen lassen, die die Netzwerkfreigabe mountet, sobald mein Dienst ausgeführt wird. Ich weiß, dass mein Dienst in der Sitzung als authentifizierte Sitzung ausgeführt wird, also kann ich einfach meine Batchdatei aufrufen und die Netzwerkfreigabe von meinem Dienst mounten und mein Dienst sollte auf die Netzwerkfreigabe zugreifen können.

Interessant ist, dass ich, wenn mein Dienst als mein Konto authentifiziert ist und die Netzwerkfreigabe mountet, per RDP auf die Netzwerkfreigabe zugreifen könnte, ohne Anmeldeinformationen angeben zu müssen. Dies weist darauf hin, dass die Anwendungssitzung in einer interaktiven Benutzersitzung geteilt wird.

verwandte Informationen