bobstarlet
Goto Top

Batch-Script für FTP-Zugang lässt sich nicht als Admin ausführen

Hallo liebe Administrator-Community,

ich habe folgendes Problem. Ich möchte gern (da meine Kollegen das unbedingt wünschen) ein FTP-Verzeichnis als Netzwerklaufwerk einbinden.
Damit dass ganze automatisch läuft, möchte ich das ganze in einer Batch-Datei als Script laufen lassen.
Ich habe mir dazu ein kleines Programm namens "ftpuse" herunter geladen und meinen script (erstmalig auf einen XP-Rechner) durchlaufen lassen.

Auf dem XP-Rechner funktionierte das ganze ohne Probleme. Daraufhin wollte ich den selben Script auf einem Windows 7 PC laufen lassen, da kam mir aber leider die "Benutzerkontensteuerung" in die Quere und mir wurde der Zugriff des Befehls ftpuse <Laufwerk> \\<Serveradresse>\<Verzeichnis> /user:<Account> <Passwort> verweigert.

Wenn ich jetzt die Konsole als Administrator ausführe, wird mir der Befehl nicht mehr verweigert.

Daraufhin habe ich eine Batch-Datei geschrieben, die eine Batch-Datei, mit einem bestimmten Account ausführen soll.

Und zwar mit dem Befehl runas

runas /user:<Adminaccount> /env <Programm (in dem Fall eine Batch-Datei)>

Jedoch bekomme ich hier die selbe Fehlermeldung, wie zuvor. Also Zugriff verweigert.

Was mir jetzt noch aufgefallen ist. Wenn ich die CMD mit rechtem Mausklick und "Als Administrator ausführen" anklicke, steht im Konsolen-Kopf: "Administrator: C:\Windows\System32\cmd.exe"
Wenn ich es über die Batch-Datei starte steht im Header: "test.cmd(wird als LIVERGIE\Account(also Account mit Adminrechten) ausgeführt"

Gibt es eine Möglichkeit, die Batch via Script, mit vollen Adminrechten zu öffnen? Wäre toll, wenn mir da jemand helfen könnte!

Content-Key: 336950

Url: https://administrator.de/contentid/336950

Printed on: April 19, 2024 at 16:04 o'clock

Member: Friemler
Solution Friemler May 05, 2017 updated at 12:06:09 (UTC)
Goto Top
Hallo Bobstarlet,

der RUNAS-Befehl führt nicht dazu, dass die UAC anspringt. Nur dadurch kann jedoch das sog. Access Token des aktiven Benutzerkontos in seinen Berechtigungen hochgestuft werden (das Administratorkonto bekommt auch wirklich Adminrechte). Möglich ist das ganze jedoch mit der ShellExecute-Methode des Shell-Objekts und dem RUNAS-Verb.

Um z.B. die CMD.exe mit den Parametern /c dir zu starten kann man folgenden VBScript-Zweizeiler verwenden:
Set objShell = CreateObject("Shell.Application")  
objShell.ShellExecute "cmd.exe", "/c dir", "", "runas"  

Doku zur ShellExecute-Methode des Shell-Objekts: https://msdn.microsoft.com/en-us/library/gg537745(v=vs.85).aspx

Passe den Code auf Deine Bedürfnisse an, speichere ihn z.B. als StartFTPUse.vbs und Du kannst das ganze per Doppelklick starten (oder auch aus dem Autostart-Ordner).

[EDIT]
Es gibt auch noch einen Trick, wie man ein Script/ein Programm ganz ohne UAC-Abfrage mit erhöhten Rechten starten kann. Guckst Du hier. Ich meine die Lösung mit der Aufgabenplanung.
[/EDIT]

Grüße
Friemler
Mitglied: 132895
Solution 132895 May 05, 2017 updated at 09:53:12 (UTC)
Goto Top
Via Powershell geht's so:
start-process "C:\Ordner\ftpuse.exe" -Argumentlist 'Deine Argumente' -Verb runas
Bedenke aber folgendes: überprüfe ob das Laufwerk wirklich auch in der Usersession gemappt wird und nicht nur in der elevated Session, denn Laufwerke werden per Default sessionabhängig gemappt. Umgehen kann man das mit dem Eintrag EnableLinkedConnections in der Registry.
http://www.winfaq.de/faq_html/Content/tip2500/onlinefaq.php?h=tip2563.h ...

Gruß
Member: Bobstarlet
Bobstarlet May 05, 2017 at 12:22:08 (UTC)
Goto Top
Danke, das hat mir auf jeden Fall weiter geholfen und funktioniert auch schon. Ist es jetzt irgendwie noch möglich, dass mich die Benutzersteuerung nicht ständig danach fragt, dass ich das Programm als Admin ausführen möchte? Ich möchte ja gern, dass alle Benutzer das ausführen können, ohne ein Adminpasswort einzugeben.
Mitglied: 132895
Solution 132895 May 05, 2017 updated at 12:44:46 (UTC)
Goto Top
Über die Aufgabenplanung ausführen lassen.
UAC abschalten wäre keine gute Idee.
Member: Bobstarlet
Bobstarlet May 05, 2017 at 13:49:44 (UTC)
Goto Top
Ja, stimmt, das wäre ein Sicherheitsrisiko, aber mir fiel derzeit keine bessere Lösung ein. Die Aufgabenplanung funktioniert ebenfalls, danke!