Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Powershell start-process als aktueller Benuter mit adminrechten

Mitglied: Marabunta

Marabunta (Level 1) - Jetzt verbinden

20.12.2014, aktualisiert 21.12.2014, 2622 Aufrufe, 9 Kommentare

ich habe einen task der ein programm starten soll für den aktuell angemeldeten nutzer (i.d.R. Adminrechte verfügbar)
Der Task läuft unter dem Nutzer SYSTEM mit Adminrechten....

Das würde es mit Adminrechten starten, jedoch für den Benutzer "SYSTEM"
$todo=start-process -Verb RunAs $programm

Ich kann das Programm auch für den aktuell angemeldetem Benutzer starten, nur dann mit eingeschränkten rechten:

$todo=&"$programm"

Was ich brauche ist eine kombination von beiden:
$todo=start-process -Verb RunAs $loggedinUser $programm
mit credentials kann ich nicht arbeiten weil ich keine leeren passwörter in securestring konvertieren kann...
weiß jemand rat?
Mitglied: 114757
20.12.2014, aktualisiert um 23:10 Uhr
Moin,
start-process kennt den Parameter -Credential ... machts jetzt Klick

01.
$user = "username" 
02.
$pass = "password" 
03.
$cred = New-Object PSCredential($user,(ConvertTo-SecureString -String $pass -AsPlainText -Force)) 
04.
 
05.
Start-Process c:\deine.exe  -Credential ($cred)
Gruß jodel32
Bitte warten ..
Mitglied: Marabunta
20.12.2014, aktualisiert um 23:09 Uhr
hab ich eben noch editiert:
mit credentials kann ich nicht arbeiten weil ich keine leeren passwörter in securestring konvertieren kann...

also es ist eher eine private umgebung und da sind auch leere passwörter unterwegs
Bitte warten ..
Mitglied: 114757
20.12.2014, aktualisiert um 23:18 Uhr
was ist der Sinn und Zweck ?? Da scheint mit eher ein Denkfehler in der Logik zu sein.
Mit höchsten Rechten kannst du alles machen...,
Bitte warten ..
Mitglied: Marabunta
20.12.2014, aktualisiert um 23:31 Uhr
Die Software/Tool verwendet den Benutzernamen und schaltet entsprechende Oberflächen frei. Dazu wird der Username unter dem der Prozess läuft ausgelesen. "SYSTEM" hilft den Task recht einfach einzurichten und das Programm zu starten/updaten etc., aber bei dieser Software "darf" es eben nicht "SYSTEM" als Processowner sein.
Bisher wurde es mit psexec gemacht und funktioniert auch. Soll aber zukünftig ohne weitere Software auskommen.

das problem ohne pw:
01.
PS C:\...> $user = "$thisuser" 
02.
$pass = "" 
03.
$cred = New-Object PSCredential($user,(ConvertTo-SecureString -String $pass -AsPlainText -Force)) 
04.
ConvertTo-SecureString : Das Argument kann nicht an den Parameter "String" gebunden werden, da es sich um eine leere Zeichenfolge handelt. 
05.
In Zeile:3 Zeichen:71 
06.
+ $cred = New-Object PSCredential($user,(ConvertTo-SecureString -String $pass -AsP ... 
07.
+                                                                       ~~~~~ 
08.
    + CategoryInfo          : InvalidData: (:) [ConvertTo-SecureString], ParameterBindingValidationException 
09.
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorEmptyStringNotAllowed,Microsoft.PowerShell.Commands.ConvertToSecureStringCommand
Bitte warten ..
Mitglied: 114757
LÖSUNG 20.12.2014, aktualisiert 21.12.2014
https://clymb3r.wordpress.com/2013/11/03/powershell-and-token-impersonat ...

By the way sollte folgende Policy auf disabled stehen damit das klappen soll:

Start >> Ausführen ... >> secpol.msc
Local Policies >> Security Options >> Limit local account use of blank passwords to console logon only.

Dann kommt aber auch jeder Depp der einen Usernamen kennt auf den Rechner...

Andere Möglichkeit, du erstellst einen weiteren Task aus deinem PS-Script welcher dann mit den Creds des Users aus deinem PSScript heraus gestartet wird.
Bitte warten ..
Mitglied: Marabunta
21.12.2014, aktualisiert um 02:37 Uhr
danke hat teilweise funktioniert.
da es als system läuft scheint er mit $env:username ein problem zu haben und den computernamen doppelt zu setzen:

01.
Main : A token belonging to the specified username was not found. Username:  
02.
TestComputerTestComputer$ 
03.
In C:\test.ps1:1639 Zeichen:1 
04.
+ Main 
05.
+ ~~~~ 
06.
    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorExcep  
07.
   tion 
08.
    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorExceptio  
09.
   n,Main 
10.
 
kann ich den angemeldeten benutzernamen anders auslesen?


hab was gefunden:
01.
$proc = gwmi win32_process -computer localhost -Filter "Name = 'explorer.exe'" 
02.
        #Go through collection of processes 
03.
        ForEach ($p in $proc) { 
04.
            $temp = "" | Select Domain, User 
05.
            $temp.user = ($p.GetOwner()).User 
06.
            $temp.domain = ($p.GetOwner()).Domain 
07.
            $global:report += $temp 
08.
          }
Bitte warten ..
Mitglied: DerWoWusste
21.12.2014 um 18:40 Uhr
Hi.

Darf ich das Ding nochmal aufrollen? Du hast einen Adminuser, der einen Task nutzen soll, welcher ein Skript startet. Und dabei soll mit höchsten Rechten gearbeitet werden.
Wozu der Nutzer System, der wird meiner Ansicht nach nicht benötigt. Einfach den Task einrichten mit der Option "mit höchsten Rechten ausführen" und "nur wenn angemeldet ausführen" und fertig.
Bitte warten ..
Mitglied: Marabunta
21.12.2014 um 19:15 Uhr
https://www.administrator.de/forum/mit-powershell-einen-task-erstellen-2 ...
$Rootfolder.RegisterTaskDefinition('Run a powershell script through a scheduled task', $TaskDefinition, 6, "System", $null , 5)
lässt sich der Task mit der funktion auch ohne "System" starten? Also ohne einen User zu brauchen?
Dann würde ich es natürlich gleich streichen.
Bitte warten ..
Mitglied: DerWoWusste
21.12.2014 um 19:39 Uhr
Ich kann Dir zur Powershell-Syntax nichts aus dem Stegreif sagen, aber es wird mit Sicheheit gehen. Ein Kennwort musst Du hierbei nicht übergeben, du musst lediglich die Optionen "ausführen nur wenn angemeldet" "und mit höchsten Privilegien ausführen" umsetzen.
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Powershell start-process
gelöst Frage von Cougar77Batch & Shell4 Kommentare

Guten Morgen, ich habe da ein kleines Problem, das ich nicht ganz verstehe. Es geht um ein kleines Powershell-Skript, ...

Batch & Shell
Powershell Start-Process mit Argumenten
gelöst Frage von lisaluftBatch & Shell4 Kommentare

Ich hatte ein cmd-Skript mit den Befehl: start /wait c:\test\CitrixReceiver.exe /silent /includeSSON ENABLE_SSON="Yes" Funktionierte genau so. Jetzt habe ich ...

Batch & Shell

Powershell aus Powershell starten (start-process powershell) mit Leerzeichen im Pfad

gelöst Frage von adm2015Batch & Shell1 Kommentar

Ich möchte einfach ein Powershell Script aus einem anderen Powershell Script aufrufen. (start-process powershell "c:\test.ps1") Jedoch habe ich ein ...

Batch & Shell

Powershell Fehler beim Start von zweitem Process

gelöst Frage von iceboxyzBatch & Shell5 Kommentare

Hallo zusammen, ich habe mir ein Scrip geschrieben, das auf das speichern von Excel wartet und dann ein paar ...

Neue Wissensbeiträge
Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 21 StundenWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 1 TagSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 1 TagMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Hardware

Feueralarm killt Festplatten in Rechenzentrum - führt zu größerem Ausfall

Information von kgborn vor 1 TagHardware12 Kommentare

Noch ein kleiner Beitrag für Administratoren, die in Rechenzentren aktiv sind - so als Fingerzeig. Denn es gibt Szenarien, ...

Heiß diskutierte Inhalte
Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux27 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++24 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

LAN, WAN, Wireless
Watchguard T15 VPN Einrichtung
gelöst Frage von thomasjayLAN, WAN, Wireless22 Kommentare

Hallo zusammen, wir möchten gerne über unsere Watchguard T15 einen VPN-Tunnel (Mobile VPN with IPSec) einrichten! Als Client nutzen ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL19 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...