der.muede.joe Geschrieben 7. August 2012 Teilen Geschrieben 7. August 2012 Hallo, ich habe eine Batchdatei, die von meinem Rechner aus ohne Probleme läuft (klar, bin ja auch Admin). Nun möchte ich diese Datei auf den Clients verteilen und dort ggfs von den Usern ausführen lassen. Das Problem ist, dass die User keine Adminrechte haben und die Batchdatei somit ihren Dienst verweigert. Ich möchte, dass in der Batchdatei der Administrator samt Passwort hinterlegt wird, damit die Datei ohne Probleme ausgeführt werden kann - Wo muss ich da was angeben? Hier mein (für euch total simples) Script: @echo off cls sc \\srv_002 stop spooler timeout /T 15 /NOBREAK SC \\srv_002 start Spooler echo Spooler-Neustart: OK timeout /T 3 /NOBREAK An welcher Stelle muss ich da die Daten des Serveradministrators angeben? Macht euch keine Gedanken drum, dass andere das Passwort auslesen könnten...dafür hab ich schon eine Lösung Mit freundlichen Grüßen Joe Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Ganymed Geschrieben 7. August 2012 Teilen Geschrieben 7. August 2012 Macht euch keine Gedanken drum, dass andere das Passwort auslesen könnten...dafür hab ich schon eine Lösung "Der Code wird alle 30min geändert"? Mal ehrlich, das ganze hört sich für mich sehr, sehr unschön als Lösung überhaupt an. Zugegeben, ich weiß nicht auf Anhieb, was man da jetzt ändern müsste, aber überdenke das mal generell. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 7. August 2012 Teilen Geschrieben 7. August 2012 Macht euch keine Gedanken drum, dass andere das Passwort auslesen könnten...dafür hab ich schon eine Lösung Gut du bist also auch drauf gekommen das gar nicht da rein zu schreiben und damit hat sich die Frage erledigt? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
der.muede.joe Geschrieben 7. August 2012 Autor Teilen Geschrieben 7. August 2012 (bearbeitet) Nein, die Batch wird zur .exe und kann dann nicht mehr von den Usern ausgelesen werden. Ich brauche nur noch den Befehl für die Anmeldedaten. Beim net use z.b. kann man ja auch Anmeldedaten hinterlegen...sowas müsste hier doch auch iwie möglich sein, oder liege ich da falsch? Edit: Falls es eine Möglichkeit gibt, für die Batch oder daraus erstellte Exe, die Anmeldedaten beim Ausführen zu hinterlegen (z.B. Ausführen als Administrator), wäre auch dies eine Lösung...aber selbst, wenn man einen Link erstellt und dann das Programm mit dem Parameter run as ausführt - selbst mit Passwortabfrage, speichert er sich zum Schluss das Passwort nicht Bearbeitet 7. August 2012 von der.muede.joe Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 7. August 2012 Teilen Geschrieben 7. August 2012 Nein, die Batch wird zur .exe und kann dann nicht mehr von den Usern ausgelesen werden. Die kann man mit ein klein wenig Ahnung genauso auslesen wie eine Textdatei. Das Passwort irgendwo fest zu hinterlegen ist ganz einfach ein riesen Sicherheitsloch und das solltest du tunlichst lassen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Eye-Q Geschrieben 7. August 2012 Teilen Geschrieben 7. August 2012 Wenn ich das richtig sehe, soll das Script den Druckspooler auf einem bestimmten Server neu starten, weil der sich in unregelmäßigen Abständen aufhängt, richtig? Wenn ja, würde ich eher das Problem (den Absturz des Druckspoolers) und nicht die temporäre Lösung (den simplen Neustart des Druckspoolers) angehen, dann kommst Du gar nicht in die Verlegenheit, irgendwo ein Admin-Kennwort hinterlegen zu müssen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
der.muede.joe Geschrieben 7. August 2012 Autor Teilen Geschrieben 7. August 2012 *sigh* ... Vor Ort wird sich schon keiner die Mühe machen, eine Exe zu entschlüsseln, um an ein mögliches Kennwort zu gelangen... Ich schrieb doch schon im ersten Post, dass ihr euch darum keine Sorgen machen braucht. Und ja, der Druckspooler hängt sich hin und wieder auf, was mit einer Software zu tun hat und der Hersteller weiss auch bescheid...Sind viele Ursachen, die man beheben könnte, wenn man gewillt ist, Geld in die Hand zu nehmen - aber da dies meist nie der Fall ist, bastel ich einfach eine Lösung... Nur um die Lösung hier vor Ort userfreundlich zu gestalten, benötige ich halt noch den Stein der Weisen, zur Hinterlegung der Admindaten in der Batchdatei. So nett eure Ratschläge auch sein mögen, die Kritik hat noch keine Lösung im Ansatz gebracht - dass es nicht das gelbe vom Ei ist, weiss ich selber. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 7. August 2012 Teilen Geschrieben 7. August 2012 Vor Ort wird sich schon keiner die Mühe machen, eine Exe zu entschlüsseln, um an ein mögliches Kennwort zu gelangen[...]dass es nicht das gelbe vom Ei ist, weiss ich selber. Sorry aber diese Einstellung ist dämlich und genau sowas ist auch der Grund dafür warum es in sovielen Firmen die es eigentlich auch besser wissen müssten trotzdem immer wieder zu Hacks, Datenklau und sonstigem kommt. Selbst wenn von den Usern niemand irgendwas böses im Schilde führen sollte. Was ist mit dem der sich (vielleicht von außen) zugriff auf einen dieser Rechner verschafft und dort dann plötzlich das Systemadmin Kennwort findet womit ihm dann ohne Aufwand alle Türen offen stehen. Das kann jawohl nicht dein Ernst sein. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DarkMaster Geschrieben 7. August 2012 Teilen Geschrieben 7. August 2012 vllt. hab ich es überlesen, aber welcher User soll denn das Skript ausführen? Leg doch einfach einen User an, der die notwendigen Rechte besitzt und der das dann ausführt?! Dann brauchst du auch keine Anmeldedaten dort eingeben. Du kannst es auch unter "Geplante Tasks" reinlegen und dort dann automatisch alle 15Min. ausführen lassen. Aber eigentlich sollte sich der SW-Hersteller, der das ganze nicht hinbekommt, darüber Gedanken machen..... es ist zwar ein Workaround, aber eigentlich ein unnötiger Aufwand.. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Enno Geschrieben 7. August 2012 Teilen Geschrieben 7. August 2012 Kreativ sein. a) du gibts wie oben schon geschrieben den Usern das Recht den Druckspooler neu zustarten du lässt den Druckspooler hart alle x Minuten neu booten (wie oft kommt es denn vor das er sich aufhängt) c) bastellösung: auf dem Druckserver eine Freigabe einrichten auf die alle User Schreibrechte haben Die User bekommen ein Script das eine Datei mit festgelegtem Namen in dieser Freigabe erzeugt Auf dem Server läuft ein Script im Admin kontext das dieses Verzeichnis alle Minute abfragt und wenn die Datei existiert diese wieder löscht und den Druckspooler neu startet. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thanks-and-Goodbye Geschrieben 7. August 2012 Teilen Geschrieben 7. August 2012 Ich spinne die Kritik an dem Vorgehen noch weiter: Ein Printserver ist ja nicht nur für einen Drucker zuständig. User A schickt auf Drucker 1 einen grösseren grafiklastigen Druckjob ab, der ein wenig Zeit braucht, bis er komplett durchgerendert ist. Dem User B, der mal eben ein kurzes Schreiben auf Drucker 1 ausdrucken will, dauert das zu lange, also mal eben kurz den Spooler abschiessen, Druckjob 1 ist weg, Kollege A geht mit dem Strick in den Keller und Kollege B kann drucken. Alternativ kann es unter Umständen auch vorkommen, dass Kollege A mit diversen grad griffbereiten Meinungsverstärkern bei Kollege B auftaucht und das Vorgehen ausdiskutieren will. Kurz: du doktorst nur (und das auch noch äusserst suboptimal) an den Phänomenen rum. Wenn du das wirklich immer noch mit einer Batch erledigen willst, lauten die Zauberworte PSExec und RunAs. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
der.muede.joe Geschrieben 8. August 2012 Autor Teilen Geschrieben 8. August 2012 Guten Morgen auch Also ich finde es ehrlich fazinierend, dass sich alle so einen Kopf um die Sicherheit machen, wobei mein Anliegen was anderes ist...die wenigsten sind da leider genauer drauf eingegangen. @Chief: der Druckserver ist NUR für den drucker da, weil Treibertechnisch lässt sich der Drucker nicht auf einem anderen Server sauber ansteuern. Und das RunAs läuft leider nicht so, wie es soll. Das PSExec schau ich mir mal genauer an, thx für die Info Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DarkMaster Geschrieben 8. August 2012 Teilen Geschrieben 8. August 2012 (bearbeitet) ich kann mich nur wiederholen. Leg einfach deine Batch unter Geplante Tasks und lass sie vom Administrator ausführen. Du brauchst dafür keine Benutzerdaten im Skript hinterlegen. Beim Zeitplan des Tasks kannst du unter "Erweitert" auf alle 15 Min. einstellen. Das Skript sieht dann in etwa so aus: net stop spooler net start spooler Aber wie Chief schon schreibt, wenn ein großer Auftrag in der Pipeline ist und der Dienst neu gestartet wird, ist dieser futsch.... Wenn du das mal probiert hast, dann berichte, ob es jetzt geht oder nicht... PS: wir denken scheinbar alle einen Meter weiter.... Bearbeitet 8. August 2012 von DarkMaster Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
der.muede.joe Geschrieben 8. August 2012 Autor Teilen Geschrieben 8. August 2012 Hallo DarkMaster, Geplante Tasks entfällt, weil der Druckserver sich vll einmal alle 2 Wochen verabschiedet. Die Ursache sind u.a. Buchhaltungssoftware, alte Treiber, neues System - neue Treiber gibt es nicht, alternative Treiber haben ein vollkommen anders Druckbild...deswegen bleibt es bei den alten Treibern. Würden neue/alternative Treiber gehen, wäre dieser eine Drucker auch auf dem anderen Server mit installiert und es gäbe keine Probleme. Grosse Aufträge für den Drucker wird es nie geben (Nadeldrucker für Berichte) und wenn einer nicht Drucken kann, können es alle nicht - deswegen ja die Idee mit der Batch zum Neustarten. Und darin würde ich halt gerne die Daten hinterlegen. Ich finde es wirklich lobenswert, dass sich alle Gedanken drum machen, dass es ein Sicherheitsrisiko ist und bei einem Kunden würde ich niemals so etwas einrichten. Nur sollte es jemand von ausserhalb, wie auch immer, auf unseren Server schaffen, um dann die aus der Batch generierten Exe zu !finden! und um sie dann wieder lesbar machen möchte, um an das Kennwort zu gelangen...nun..ganz ehrlich...wenn jemand so weit hier kommt, dann braucht er das Kennwort auch nicht mehr. Aber es muss doch irgendeine Befehls oder Commandzeile geben, die man in die Batchdatei integrieren kann, dass die gleich als Admin ausgeführt wird? MfG Joe Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DarkMaster Geschrieben 8. August 2012 Teilen Geschrieben 8. August 2012 (bearbeitet) Geplante Tasks entfällt, weil der Druckserver sich vll einmal alle 2 Wochen verabschiedet. jetzt sprechen wir aber nicht nur von einem reinen Restart des Spoolers. Dafür müsstest du den Status des Spoolers-Dienstes abfragen und wenn er gestoppt ist, diesen dann erst wieder anstarten. Dafür müsstest du dir ein Skript bauen, wie z.B. hier beschrieben Frage: Batch zur Dienstüberwachung - Batch & Shell - suche.administrator.de Oder du machst es einfach über die Dienst-Eigenschaften --> im Fehlerfall --> Neustarten (bei Wiederherstellen). Das dürfte vermutlich der schnellste Weg sein.... oder evtl. auch noch interessant.... http://www.administrator.de/forum/Programm-zur-Batch-%C3%9Cberwachung-172782.html Aber es muss doch irgendeine Befehls oder Commandzeile geben, die man in die Batchdatei integrieren kann, dass die gleich als Admin ausgeführt wird? werden wir doch mal konkret. Als welcher User soll denn der Task laufen? Was spricht dagegen, diesen unter dem Admin-Account einzurichten? Ansonsten hat es Chief doch bereits gesagt -> RunAs. Runas Poste doch einfach mal, was du bisher gemacht hast. Mir kommt es so vor, als würdest du jeden Ratschlag ignorieren und nur auf dem Sicherheitsaspekt rumreiten. Ich glaube, wir haben es verstanden, dass es in deinem Fall nicht kritisch ist. Ob dem so ist, können wir nicht beurteilen. Du brauchst dich deshalb nicht ständig zu wiederholen. Bearbeitet 8. August 2012 von DarkMaster Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
der.muede.joe Geschrieben 8. August 2012 Autor Teilen Geschrieben 8. August 2012 Also so schaut es aus: Im EventLog ist zu den Zeiten, wo das drucken von jetzt auf gleich nicht mehr funktioniert, nichts zu finden - also keine Einträge im Ereignisprotokoll. Der Dienst befindet sich, wenn das Problem auftritt, im Status "Gestartet" Im Fehlerfall Neustarten ist schon aktiviert, hilft aber nicht, da wohl kein Fehler erkannt wird (Ereignisprotokoll - kein Eintrag) Die von mir erwünschte Batch soll von einem Standard-User mit normalen Rechten gestartet werden, die Batch selber soll sich dann aber selber via Script mit Adminrechten versehen, also als Administrator laufen. Ich hatte auch schon eine Verknüpfung der Batchdatei erstellt und dort das RunAs hinterlegt, samt Befehl, dass Passwort dann zu speichern. Es kommt dann auch zur Passwortabfrage, aber die Befehle der Batchdatei werden dann nicht mehr ausgeführt. Beim erneuten Ausführen der Batch kommt dann keine Abfrage mehr, es springt kurz das CMD-Fenster auf und schliesst sich ohne nennenswerte Meldung wieder - ein Ausführen der Befehle bleibt aber auch aus. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 13. August 2012 Teilen Geschrieben 13. August 2012 Was mir gerade noch einfällt, warum gibst du nicht einfach allen Usern das Recht den Server neuzustarten? Dann muss die Batch auch nicht als Admin ausgeführt werden. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
der.muede.joe Geschrieben 14. August 2012 Autor Teilen Geschrieben 14. August 2012 Keine gute Idee, denn würden die User den Server komplett neu starten können, würde alles zum Erliegen kommen. Da es noch immer keine Lösung für das standardmässige Ausführen der Batch als Administrator gibt, sieht die Lösung so aus: Sofern ein Admin im Haus ist, wird diese Batch ausgeführt ...wenn nicht, C´est la vie... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 14. August 2012 Teilen Geschrieben 14. August 2012 Achso ja hatte nicht nochmal den Ursprungspost gelsen und dachte du wolltest den PC neustarten. How to grant users rights to manage services in Windows 2000 Da wird beschrieben wie man Benutzern das Recht geben kann Dienste zu verwalten. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.