Automatischer Logon (Stichwort Gina.dll)



  • Hallo Leute,

    ich habe eine konkrete Frage an alle Gina.dll Spezialisten - Leider gibt es davon zu wenige 🙂

    Doch zunächst der Hintergrund: Ich habe eine Softwareverteilung in Borland C++ Builder geschrieben, die auf den Clients (Windows XP & Server 2003) aus einem Service und einer Useranwendung besteht. Funktioniert auch alles supi. Jetzt möchte ich einen Schritt weitergehen und eine automatische Anmeldung realisieren. Sprich, wenn der Computer abgemeldet ist und im STRG+ALT+ENTF Dialog steht, möchte ich einen speziellen Benutzer automatisch anmelden (Vom Service initialisiert). Anschließend sollten Maus + Tastatur gesperrt werden, die Clientanwendung von mir wird gestartet, die Software installiert und dieser Benutzer wieder abgemeldet bzw. der Rechner neu gestartet. Ich weiß, dass soetwas geht, da ich ziemlich lange mit On Technology - On Command (CCM) gearbeitet habe und die haben es irgendwie geschafft.

    Nun meine Frage(n): Wie kann ich mein Vorhaben bewerkstelligen und einen Benutzer automatisch anmelden? Muss ich hierzu wirklich eine komplett eigene Gina schreiben oder reicht es eine "zweite" Gina zu haben, die sich zwischen WinLogon und MSGina "schaltet"?

    Ich möchte nur sicher sein, dass ich mir das wirklich mit der Gina antun muss. Notfalls arbeite ich nach dem funktionierenden Schema weiter.

    Danke schon mal für alle konstruktiven Beiträge 😉



  • Warum überhaupt so kompliziert? Warum startest Du den Update-Prozess nicht einfach unter dem entsprechenden Benutzeraccount (CreateProcessAsUser)?

    Automatisch einloggen geht via:
    http://mcsetr.com/2000/autologon.asp



  • VS bietet einem ja auch die möglichkeit temporär auf autologin zu schalten, allerdings muss man da auch das Passwort mitangeben und ich denke, dass die Methode aus dem Link nicht greift im Falle der STRG+ALT+ENTF Sicherung.

    Ich würde mich auch dafür interressieren wie man das "umgehen" kann.
    Da nur Windows diese Tastenkombination bekommt ist mir nur eine Möglichkeit bekannt und die wäre nen Keyboardhook auf Treiberebene.



  • User--- schrieb:

    Ich würde mich auch dafür interressieren wie man das "umgehen" kann.

    Was umgehen?

    User--- schrieb:

    Da nur Windows diese Tastenkombination bekommt ist mir nur eine Möglichkeit bekannt und die wäre nen Keyboardhook auf Treiberebene.

    ???



  • Okay der Reihe nach:

    @Jochen: Danke mal für deine Antwort. Das Problem liegt ja eigentlich darin, dass derzeit KEIN Benutzer angemeldet ist und somit auch kein Desktop zum Anzeigen von Fenstern existiert. Man sieht nur das STRG+ALT+ENTF Fenster - Dieses Fenster wird auf einem Sicherheitsdesktop angezeigt. Bereitgestellt von Winlogon und der MSGina.dll. Ich würde jetzt gerne eine wirkliche Anmeldung ausführen. Der Autologon-Link ist mir bekannt, aber er funktioniert erst nach dem Restart und nicht Live.

    @User: Ich habe heute wieder den ganzen Abend recherchiert und einige Seiten zum Thema Gina gefunden. Um den STRG+ALT+ENTF Dialog zu "umgehen" kommt man scheinbar nicht drum herum eine eigene Gina.dll zu schreiben. Diese muss zwar nicht komplett programmiert werden, da man einige der Anfragen an die eigentliche msgina.dll weiterleiten kann, aber trotzdem starker Tobak.

    Langsam frage ich mich, ob ich es wirklich so brauche. Jochen hat mich da auf eine gute Idee gebracht. Der Service läuft ja ständig im Hintergrund. Er könnte die Clientanwendung unter einem "normalen" Benutzeraccount starten (auch wenn derzeit kein Benutzer angemeldet ist). Eine Interaktion ist NICHT unbedingt notwendig - wäre aber schön, wenn machbar. Hier die Frage: Geht eine Interaktion mit dem Sicherheitsdesktop?

    Okay, ich werde jetzt mal ins Bett gehen. Wenn jemand Bedarf hat, kann ich ja mal ein paar Links posten.

    N8



  • mymicha schrieb:

    Geht eine Interaktion mit dem Sicherheitsdesktop?

    AFAIK: Nein.



  • naja, eine zweite möglichkeit gibts schon noch.
    du kannst nämlich durchaus das anmelde-fenster "fernsteuern". dazu brauchst du einen windows-service, der als system-service bereits bei der anmeldung aktiv ist. mit diesem service wechselst du auf den winlogon-desktop und kannst dann mit dem anmeldefenster interagieren, sprich benutzername und pwd eintragen und den OK-Button betätigen. am schluss wechselst du wieder in deinen anwendungs-desktop zurück. hab das schon mal vor ein paar jahren gemacht, war rechtes gefrickel, aber irgendwann gings dann.






Anmelden zum Antworten