Software op een andere computer op afstand installeren

Remotely installing software on another computer

Om op afstand software op een andere computer te installeren, maak verbinding via Extern bureaublad en voer het installatieprogramma uit zoals je dat aan het toetsenbord zou doen, of push een stille installatie vanaf de opdrachtregel met PowerShell Invoke-Command of PsExec en msiexec /qn. De opdrachtregel is waar de meeste mensen tegen Access is denied aanlopen, zelfs met het juiste beheerderswachtwoord, omdat Windows gewone lokale beheerdersaccounts bij een netwerkaanmelding een gefilterd token geeft. Extern bureaublad omzeilt het filter omdat het een interactieve aanmelding is, en een domeinaccount uit het eigen domein van het doel krijgt in beide gevallen een volledig token.

Voor een gewoon lokaal beheerdersaccount is de snelste oplossing één registerwaarde op het doel: stel LocalAccountTokenFilterPolicy in op 1 onder HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System, voer vervolgens het installatieprogramma stil uit en leg de exitcode vast. Deze gids behandelt elke methode met geteste opdrachten, een script voor meerdere computers en een oplossing voor elke veelvoorkomende fout, van PSEXESVC-fouten tot winget 0x8a15000f.

Als je de tokenpuzzel liever helemaal overslaat, HelpWire is software voor externe ondersteuning die verbinding maakt met een machine aan de andere kant, en je kunt tijdens de sessie beheerdersrechten aanvragen. Je voert het installatieprogramma uit binnen een echt interactief bureaublad, zodat de prompt voor verhoogde rechten zich gedraagt zoals die dat doet aan het toetsenbord.

Waarom software-installaties op afstand mislukken, zelfs met een beheerdersaccount

De oorzaak is UAC-remotebeperkingen, ook wel tokenfiltering genoemd. Wanneer een lokaal account dat tot de groep Administrators behoort zich via het netwerk aanmeldt, geeft de Local Security Authority het een gefilterd token met een gemiddeld integriteitsniveau, waardoor de groep Administrators zich in een alleen-weigerenstatus bevindt en geprivilegieerde acties worden geblokkeerd. Netwerkaanmelding, oftewel WinRM, PsExec, WMI of een C$-kopie, levert voor lokale beheerders een gefilterd token op.

Twee details bepalen of je wordt getroffen. Een domeinaccount uit het eigen domein van het doelsysteem, in de lokale groep Administrators, is uitgezonderd en ontvangt een volledig token; daarom zie je dit zelden in domeinomgevingen. De ingebouwde RID 500 Administrator is ook een bijzonder geval en wordt niet gefilterd, tenzij FilterAdministratorToken is ingeschakeld. Alle anderen, dus gewone lokale beheerdersaccounts en accounts uit een ander domein, krijgen het gefilterde token, of het doelsysteem nu in een werkgroep staat of aan een domein is toegevoegd. Dat ene feit verklaart waarom Access is denied bij PsExec, net use, een C$-kopie, plus het gefilterde, niet-admin-token waarmee je via Invoke-Command eindigt.

De tweede onderliggende oorzaak is de niet-interactieve sessie. Een opdracht op afstand draait waar niemand kan klikken, dus een installatieprogramma dat een venster verwacht blijft ofwel hangen terwijl het op een knop wacht, of faalt meteen.

Software op afstand installeren: uw opties per methode vergeleken

De snelste manier om software op afstand te installeren is de methode af te stemmen op uw omgeving, omdat elke methode zich anders gedraagt met betrekking tot administratorstokens, werkgroepen en Windows Home. Deze tabel helpt die keuze te maken voordat u een enkele opdracht uitvoert. Groepsbeleid is hier opgenomen omdat het uitsluitend voor domeinen is en het de moeite waard is dit vroegtijdig in of uit te sluiten.

Methode Gedrag van het beheerders-token Werkt in een werkgroep Windows Home-host Onderbreekt de gebruiker Via internet
RDP Volledig token, interactief Ja No host Ja, verbreekt hun verbinding Met VPN
PowerShell-afstandsbediening Gefilterd voor lokale beheerders Met TrustedHosts Ja Nee Zelden
cmd + PsExec Gefilterd. Gebruik -h. Met registeraanpassing Ja Nee Nee
winget Werkt niet onder WinRM Alleen lokale uitvoering Ja Nee Nee
Groepsbeleid SYSTEM, aan de computer toegewezen No, alleen domein Alleen domein Nee Nee
HelpWire Volledig, interactieve elevatie Ja Ja Nee Ja

Eén ding bepaalt of elke onderstaande opdrachtregelmethode werkt: het account waarmee je verbinding maakt. Een domeinaccount uit het eigen domein van het doel, in de groep Administrators, krijgt een volledig token en werkt direct. Een gewone lokale beheerdersaccount krijgt het gefilterde token, waardoor kopieën naar C$ en PsExec-aanroepen Toegang geweigerd retourneren, en PowerShell remoting weigert de sessie of voert die uit zonder administratorrechten, totdat je LocalAccountTokenFilterPolicy op 1 zet op het doel, zoals beschreven in de sectie met oplossingen. RDP is de uitzondering, omdat het een interactieve aanmelding is in plaats van een netwerkaanmelding.

Hoe installeer je op afstand software op een andere computer met Remote Desktop

Remote Desktop is de meest directe manier om op afstand software op een andere computer te installeren, omdat het een interactieve sessie is die draait met een volledig beheerders-token zodra je de UAC-prompt bevestigt. Maak verbinding en installeer vervolgens alsof je achter de computer zit.

  1. Op de doelcomputer drukt u op Win + R, typt u SystemPropertiesRemote, en schakelt u Externe verbindingen met deze computer toestaan in.

  2. Open op uw computer Verbinding met extern bureaublad (mstsc.exe), voer de doelnaam of IP in, en meld u aan met een account dat daar lokale beheerder is.

  3. Kopieer het installatieprogramma via de sessie, of koppel een lokaal station in Lokale hulpbronnen zodat je er toegang toe hebt.

  4. Voer het installatieprogramma uit. Wanneer de UAC-prompt verschijnt, keur deze goed in het RDP-venster en voltooi vervolgens de wizard.

Het is de moeite waard de beperkingen te kennen voordat je erop vertrouwt. Windows Home-edities kunnen helemaal geen RDP-sessie hosten. Ze draaien alleen de client. Op clientversies van Windows is er slechts één consolesessie toegestaan, dus bij het verbinden wordt de persoon die op de machine is aangemeld afgemeld. En een standaardgebruiker zonder beheerdersreferenties op de externe machine kan de prompt nog steeds niet goedkeuren, waardoor je uitkomt bij de onderstaande methoden via de opdrachtregel.

Software op afstand installeren met PowerShell

Om software op afstand te installeren met PowerShell, maak je gebruik van Invoke-Command, maar er zijn twee valkuilen die bijna iedereen treffen. De externe sessie is niet-interactief, dus het installatieprogramma moet volledig stil worden uitgevoerd, en de sessie kan sluiten voordat een installatieprogramma dat snel de controle teruggeeft is voltooid, waardoor de installatie wordt geannuleerd. Kevin Marquette’s bekende artikel over installaties op afstand beschrijft beide, en de oplossing voor de tweede is Start-Process -Wait.

Installeer op één computer met Invoke-Command

  1. Schakel op het doelsysteem eenmalig extern beheer in. Voer vanuit een verhoogd PowerShell-venster Enable-PSRemoting -Force uit.

  2. Kopieer het installatieprogramma naar het doel zodat de sessie nooit een netwerkpad hoeft te gebruiken:
    Copy-Item -Path "C:\Installers\app.msi" -Destination "\\PC01\c$\Windows\Temp\app.msi"

  3. Voer het stil uit en wacht tot het klaar is:
    Invoke-Command -ComputerName PC01 -ScriptBlock {

      Start-Process msiexec.exe -ArgumentList "/i
    C:\Windows\Temp\app.msi /qn /norestart" -Wait

    }

    Als je -Wait overslaat, kan het scriptblok afsluiten terwijl het installatieprogramma nog bestanden kopieert, en het sluiten van de sessie onderbreekt de installatie halverwege het schrijven. Als het installatieprogramma een venster toont, loopt het vast, omdat in een niet-interactieve sessie niets erop kan klikken.

PowerShell-script om software op afstand op meerdere computers te installeren

Een PowerShell-script loopt door een lijst met computers, kopieert het installatieprogramma via een eigen sessie naar elke machine, voert het uit en registreert de exitcode, zodat je weet wat er op elke machine is terechtgekomen. Dit ondervangt het double-hop-probleem door vooraf te kopiëren in plaats van vanuit de sessie een share te benaderen.

$computers = Get-Content "C:\Installers\computers.txt"
$source = "C:\Installers\app.msi"
$results = @()

foreach ($pc in $computers) {
try {
$s = New-PSSession -ComputerName $pc -ErrorAction Stop
Copy-Item -Path $source -ToSession $s -Destination
"C:\Windows\Temp\app.msi"
$code = Invoke-Command -Session $s -ScriptBlock {
$p = Start-Process msiexec.exe -ArgumentList "/i
C:\Windows\Temp\app.msi /qn /norestart" -Wait -PassThru
$p.ExitCode
}
$ok = @(0, 3010, 1641) -contains $code
$results += [pscustomobject]@{ Computer = $pc; Exitcode = $code; Succes = $ok }
Remove-PSSession $s
}
catch {
$results += [pscustomobject]@{ Computer = $pc; Exitcode = "n.v.t."; Succes = $false }
}
}
$results | Export-Csv "C:\Installers\install-report.csv"
-NoTypeInformation

Behandel 3010 en 1641 als succes, niet als fout. Beide betekenen dat de installatie is gelukt: 3010 betekent dat een herstart vereist is om af te ronden, en 1641 betekent dat het installatieprogramma de herstart al heeft gestart. Veel eenvoudige scripts markeren deze ten onrechte als fouten. Let op dat Copy-Item -ToSession één sessie tegelijk uitvoert, dus de kopieerstap is per machine, ook al kan Invoke-Command uitwaaieren.

Vermijd de snelle CredSSP-oplossing die vaak wordt aangeraden voor de dubbele hop. De community is daarvan afgestapt omdat het beheerdersreferenties op de externe host in cache opslaat, waar een aanvaller ze kan bemachtigen. Vooraf kopiëren, zoals hierboven, omzeilt het hele probleem.

Veelvoorkomende msiexec-exitcodes om op te controleren:

Exitcode Betekenis
0 Geslaagd
1603 Fatale fout tijdens installatie
1618 Er wordt al een andere installatie uitgevoerd
1619 Installatiepakket kon niet worden geopend
1638 Er is al een andere versie van het product geïnstalleerd
1641 Geslaagd, herstart gestart
3010 Geslaagd, herstart vereist

Hoe installeer je software op afstand met cmd

Om software op afstand te installeren met cmd, heb je drie manieren: PsExec, winget en het oudere WMIC-commando, hoewel alleen de eerste twee betrouwbaar zijn op huidige Windows-versies. Elk daarvan gaat anders om met het beheerders-token, dus de parameters zijn belangrijker dan de tool.

PsExec met msiexec

  1. Download PsExec van Microsoft Sysinternals en pak het uit. Open cmd als beheerder, omdat PsExec bij elke uitvoering een service (PSEXESVC) installeert, en dat beheerdersrechten vereist.

  2. Kopieer de MSI naar de administratieve share van het doelsysteem:
    copy "C:\Installers\app.msi" \\PC01\C$\Windows\Temp\

  3. Voer de stille installatie uit met een verhoogd token. De optie -h is de belangrijkste. Hiermee wordt het proces uitgevoerd met het verhoogde token van het account:
    psexec \\PC01 -h -accepteula msiexec.exe /i "C:\Windows\Temp\app.msi" /qn /norestart

Sla de -i-vlag over die in oudere handleidingen wordt rondgekopieerd. Die dwingt desktopinteractie af, wat een stille installatie dwarsboomt en precies de vastlopers kan veroorzaken die je probeert te vermijden. Het gedrag van -h en de volledige lijst met switches komen rechtstreeks uit de PsExec-referentie. Als je Couldn't install PSEXESVC service: Access Denied ziet, is de gebruikelijke oorzaak een lokale prompt zonder verhoogde rechten, al kan een geblokkeerde ADMIN$-share of het gefilterde token op het doel hetzelfde veroorzaken. Als je Couldn't access <PC>: Access is denied ziet op een werkgroepcomputer, is dat de tokenfiltering die in de sectie met oplossingen wordt behandeld.

winget via de opdrachtregel

winget installeert apps lokaal vanuit cmd met één regel, en het is de moderne vervanging voor verouderde tools:

winget install --id Google.Chrome --silent --accept-package-agreements --accept-source-agreements

Het op afstand uitvoeren is waar het tegenwerkt. Via een WinRM-sessie geeft winget vaak A specified logon session does not exist of meldt dat winget niet wordt herkend, omdat het draait als een verpakte app die een interactieve aanmelding verwacht. Een al lang bestaand winget-cli-probleem volgt dit, en een gerelateerd rapport laat zien dat een eerste externe aanroep mislukt met 0x8a15000f totdat een beheerder eenmaal lokaal op die machine een willekeurig winget-commando heeft uitgevoerd. Op een schone machine krijg je ook 0x8a150042, een input-promptfout, tenzij je --accept-source-agreements meegeeft. winget ondersteunt ook officieel het SYSTEM-account niet, en op Windows Server wordt het alleen ondersteund op 2025 en later, exclusief Server Core, waarbij 2019 en 2022 niet ondersteund en experimenteel zijn.

Waarom de WMIC-methode niet meer werkt

De oude wmic product call install-truc werkt niet meer op Windows 11 24H2 en nieuwer. Volgens de kennisgeving van Microsoft over het verwijderen van WMIC werd het hulpprogramma standaard uitgeschakeld in Windows 11 23H2 en 24H2, verwijderd bij een upgrade naar 25H2, en uit 24H2 en 25H2 gehaald door de preview-update van augustus 2026, waarbij 26H1 zonder wordt geleverd en er geen Feature on Demand is om het te herstellen. Op die versies geven scripts die wmic.exe aanroepen 'wmic' is not recognized terug. Microsoft beperkte de verwijdering tot Windows 11, dus WMIC wordt voorlopig nog meegeleverd met Windows 10 en Windows Server, maar overal luidt het advies om over te stappen op PowerShell’s Get-CimInstance en Invoke-Command. De HelpWire-handleiding voor cmd-installatie behandelt de opties voor de opdrachtregel uitgebreider.

Ondersteuning voor opdrachtregelhulpmiddelen per Windows-versie:

Functie Status Opmerkingen
WMIC Verwijderd in 24H2, 25H2, 26H1 Geen Functie op aanvraag vanaf augustus 2026
winget Win 10 1809+, Win 11, Server 2025 (niet Core) Geen SYSTEM-ondersteuning; Server 2019/2022 experimenteel
RDP-host Pro, Enterprise, Education Home-edities voeren alleen de client uit
 

Wat de meeste mensen als eerste proberen, en waarom het mislukt

De oppervlakkige oplossingen verspillen uren omdat ze het symptoom behandelen en niet het gefilterde token aan de externe kant. Het lokaal uitvoeren van cmd als beheerder verandert niets, aangezien de filtering op het doelsysteem gebeurt, niet op je machine. runas gebruiken met een gewoon beheerdersaccount levert je een venster op dat lid is van de beheerdersgroep maar niet verhoogd is, waardoor installaties nog steeds mislukken.

UAC volledig uitschakelen met EnableLUA op 0 laat de installatie wel doorgaan, maar laat beheerdersrechten ongecontroleerd en maakt Store-apps onbruikbaar, en daarom waarschuwen Microsoft en de community ervoor. Geen van deze pakt de daadwerkelijke oorzaak aan; de volgende sectie wel.

De bewezen oplossingen voor “Toegang geweigerd” en elevatiefouten

Begin met de foutmelding en ga vervolgens naar de oplossing. Elk van de onderstaande punten is bevestigd in Microsoft-documentatie, kennisbanken van leveranciers en communitydiscussies.

Foutmelding Gegenereerd door Oorzaak
Access is denied PsExec, net use, C$ Gefilterd beheerderstoken
Couldn't install PSEXESVC service PsExec Lokale prompt niet verhoogd, of doel ADMIN$/token geblokkeerd
0x80090322 WinRM Werkgroep- of SPN-probleem
Access denied Invoke-Command naar een share Dubbele hop
0x8a15000f winget via WinRM Brongegevens ontbreken
1603 msiexec Fatale installatiefout

Los “Toegang geweigerd” op met LocalAccountTokenFilterPolicy

Stel op het doel één registerwaarde in om lokale beheerdersaccounts over het netwerk een volledig token te geven. Dit is de oplossing die is bevestigd door PDQ, Broadcom en talloze PsExec threads.

  1. Op de doelcomputer opent u de Register-editor (regedit) en gaat u naar:
    HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

  2. Maak een DWORD met de naam LocalAccountTokenFilterPolicy en stel deze in op 1. Of voer dit uit vanuit een verhoogde opdrachtprompt:
    reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

  3. Probeer de installatie opnieuw. Om dit achteraf ongedaan te maken, stel de waarde terug in op 0, waardoor UAC-filtering op afstand weer wordt ingeschakeld.

Het is niet nodig wanneer je verbinding maakt met een domeinbeheerdersaccount uit het eigen domein van het doel, dat al een volledig token ontvangt. Microsoft heeft de filtering ontworpen om loopback-aanvallen te blokkeren, dus het uitschakelen ervan vergroot het aanvalsoppervlak. Stel het doelbewust in en zet het terug wanneer de taak is voltooid.

Los “Kon PSEXESVC service niet installeren” op

Dit is bijna altijd een lokaal probleem met verhoogde rechten, bevestigd op Microsoft Q&A.

  1. Sluit uw prompt en open cmd of PowerShell als administrator opnieuw. PsExec installeert zijn service bij elke uitvoering en kan dat niet doen vanuit een standaardprompt.

  2. Als het nog steeds mislukt, kan een achtergebleven psexecsvc.exe vast blijven zitten op de doelmachine. Controleer %windir% op de externe machine en verwijder eventuele resterende kopie, probeer het daarna opnieuw.

  3. Bevestig dat de ADMIN$-share van het doel bereikbaar is, en dat Bestands- en printerdeling (SMB over TCP 445) via de firewall is toegestaan, aangezien PsExec de PSEXESVC-service daarheen kopieert om deze uit te voeren.

Verhelp WinRM 0x80090322 op werkgroepcomputers

PowerShell-op-afstand in een werkgroep mislukt omdat Kerberos een lokaal account niet kan authenticeren, dus voeg je de doelhost toe aan TrustedHosts en dwing je NTLM af. De fouttekst van WinRM zelf vermeldt het TrustedHosts-pad.

  1. Voeg op uw machine, vanuit een verhoogde PowerShell, het doel toe:
    Set-Item WSMan:\localhost\Client\TrustedHosts -Value "PC01" -Concatenate

  2. Maak verbinding met expliciete lokale referenties zodat Negotiate terugvalt op NTLM:
    $cred = Get-Credential

    Invoke-Command -ComputerName PC01 -Credential $cred -ScriptBlock { hostname }

  3. Als de fout blijft optreden op een domein-FQDN in plaats van een werkgroep, is het een SPN-probleem. Microsoft KB 4549715 behandelt de workarounds -IncludePortInSPN en spn_prefix.

Los de double-hop “Toegang geweigerd” op

Wanneer de externe sessie een UNC-pad bereikt, kan deze zich niet authenticeren, het bestand vooraf kopiëren of zich opnieuw authenticeren binnen het scriptblok.

  1. Bij voorkeur: kopieer het installatieprogramma eerst naar het doel, zoals in het script voor meerdere computers, zodat de sessie alleen een lokaal pad gebruikt.

  2. Of wijs binnen de sessie een (netwerk)station toe met nieuwe aanmeldingsgegevens. De aanroep van New-PSDrive authenticeert een verbinding met de bestandsserver, en het onderstaande rechtstreekse starten via een UNC-pad hergebruikt die verbinding, zodat de aanmeldingsgegevens worden meegenomen, ook al verwijst de opdracht nooit naar het toegewezen station:
    $cred = Get-Credential

    Invoke-Command -ComputerName PC01 -ScriptBlock {

      New-PSDrive -Name X -PSProvider FileSystem -Root "\\fileserver\share" -Credential $using:cred | Out-Null

      Start-Process "\\fileserver\share\app.exe" -ArgumentList "/silent" -Wait

    }

Herstel winget 0x8a15000f en 0x8a150042

Beide fouten komen doordat winget een interactieve aanmelding verwacht die er niet is. De workaround is gedocumenteerd op de winget-cli tracker.

  1. Meld u eenmalig als beheerder aan bij het doel en voer een willekeurig winget-commando uit, bijvoorbeeld winget list. Hierdoor wordt de bron geïnitialiseerd en verdwijnt 0x8a15000f bij latere externe aanroepen.

  2. Geef altijd de akkoordvlaggen mee om de 0x8a150042-invoerprompt bij de eerste uitvoering te voorkomen:
    winget install --id Google.Chrome --silent --accept-package-agreements --accept-source-agreements

  3. Vertrouw niet op winget in de SYSTEM-context. Het App Installer-pakket dat winget levert, wordt per gebruiker geregistreerd, en die registratie is normaal gesproken niet aanwezig voor het SYSTEM-account, waardoor zelfs het aanroepen van het volledige pad in C:\Program Files\WindowsApps vaak nog steeds niet tot installatie leidt. Voor uitrol in de SYSTEM-context gebruik msiexec via PsExec of in plaats daarvan een pakkettool.

Los msiexec-fout 1603 op

Exitcode 1603 is een algemene fatale fout, dus de oplossing is altijd om het uitgebreide logboek te lezen in plaats van te gokken. Probleemoplossing van Microsoft voor 1603 wijst op dezelfde aanpak.

  1. Voer nogmaals uit met uitgebreide logging naar een schrijfbaar pad op het doelsysteem:
    msiexec /i "C:\Windows\Temp\app.msi" /qn /l*v "C:\Windows\Temp\install.log"

  2. Open het logbestand en zoek naar return value 3, dat direct na de mislukte actie staat. Veelvoorkomende oorzaken zijn weinig schijfruimte, een mismatch tussen per-gebruiker- en per-machine-eigenschappen, of een vergrendeld bestand.

  3. Als het log geen uitsluitsel geeft, voer de installatie interactief opnieuw uit op het doelsysteem via RDP, waar een GUI-installatieprogramma de daadwerkelijke foutmelding kan tonen, omdat een start vanuit de SYSTEM-context geen bureaublad heeft om die weer te geven.

Hoe software op afstand installeren met beheerdersrechten met behulp van HelpWire

HelpWire is software voor externe toegang waarmee u een installatie kunt uitvoeren op een externe machine binnen een live interactieve sessie vanuit de app (Operator) op uw apparaat. U maakt verbinding via een link en vraagt beheerdersrechten aan op de externe zijde. Zodra de rechten zijn verleend, wordt de app van de externe gebruiker (Client) opnieuw gestart zodat u installatieprogramma’s direct kunt uitvoeren.

Beheerderstoegang aanvragen tijdens een sessie

  1. Start een sessie en maak verbinding met het externe werkstation. Zie de HelpWire-gids voor beheerdersrechten voor het volledige proces.

  2. Klik op Beheerderstoegang aanvragen op de werkbalk van de Operator-app.

    Klikken op de knop Beheerderstoegang aanvragen op de werkbalk van de Helpwire Operator-app
  3. De cliënt klikt op Toegang verlenen en vervolgens op Ja in de prompt voor het wijzigen van het apparaat. De Client-app wordt opnieuw gestart met beheerdersrechten en de verbinding wordt hersteld.

  4. Als Beheerderstoegang verleend op de werkbalk wordt weergegeven, voert u uw installatieprogramma via het extern bureaublad uit met volledige beheerdersrechten.

    Melding “Beheerderstoegang verleend” op de HelpWire-werkbalk

Als je zelf over de inloggegevens beschikt, gebruik dan de vervolgkeuzelijst naast Beheerderstoegang aanvragen en kies Beheerder met inloggegevens, voer vervolgens de gebruikersnaam en het wachtwoord van het beheerdersaccount in. De externe gebruiker kan aan hun kant ook de rechten verhogen met Opnieuw starten als beheerder in de Client-app.

Zet het installatieprogramma over en maak later opnieuw verbinding

Je kunt een installatieprogramma rechtstreeks in de sessie plaatsen zonder RDP-problemen met kopiëren en plakken, of het naar het Operator-venster slepen. Wanneer een oplossing vervolgwerk vereist, kun je via onbewaakte toegang later opnieuw verbinding maken met dezelfde ingeschakelde machine zonder dat de externe gebruiker aanwezig is.

Verhoging naar beheerdersrechten gebeurt binnen een echte interactieve desktop, zodat installatieprogramma’s en hun UAC-prompts zich normaal gedragen zonder registerwijzigingen op het doel.

De externe gebruiker behoudt de controle. Elke beheerdersaanvraag vereist hun goedkeuring, en ze kunnen de toegang op elk moment intrekken.

Veelgestelde vragen

Het hangt ervan af van wie de rechten ontbreken. Een per-machine-installatie die naar Program Files of HKLM schrijft, heeft beheerdersrechten nodig op het doelsysteem, dus als jij degene bent die dit initieert, verstrek je beheerdersreferenties of verhoog je de rechten via een tool die de gebruiker een prompt toont. De eindgebruiker op het doelsysteem heeft geen beheerdersrechten nodig wanneer een beheerder vooraf een implementatiemechanisme heeft geconfigureerd: software die via Groepsbeleid als computer-toegewezen is, installeert per-machine-apps bij het opstarten in de SYSTEM-context, zonder elevatie door de gebruiker. Per-gebruiker-apps zoals Google Chrome installeren ook in het gebruikersprofiel zonder beheerdersrechten.

Stel LocalAccountTokenFilterPolicy in op 1 op de doelcomputer, gebruik vervolgens PsExec met -h of PowerShell waarbij de computer is toegevoegd aan TrustedHosts. Computers in een werkgroep hebben geen domein dat volledige tokens uitgeeft, dus zijn zowel de registerwaarde als NTLM-verificatie met expliciete lokale aanmeldingsgegevens vereist.

Het hangt af van de methode. Een RDP-verbinding meldt de persoon aan de console af, vergrendelt hun sessie terwijl hun programma’s blijven draaien, terwijl PsExec, PowerShell remoting en een stille /qn-installatie op de achtergrond draaien zonder hen te storen. Een tool voor externe ondersteuning die het actieve bureaublad deelt, laat de gebruiker ook op zijn plaats, wat van belang is wanneer je midden op de werkdag op iemands machine installeert.

Controleer de exitcode van het installatieprogramma, niet alleen of de opdracht is afgelopen. Een 0 betekent succes, 3010 en 1641 betekenen succes met een herstart, en 1603 betekent een fatale fout. De exitcode is het betrouwbare signaal, dus vang deze op met -PassThru in PowerShell. De meeste MSI- en EXE-apps die een uninstaller registreren, verschijnen ook onder de uninstall-sleutels op HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall, de subsleutel WOW6432Node daarvan voor 32-bits apps, en HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall voor installaties per gebruiker, hoewel niet elke app daar een vermelding plaatst. MSIX- en andere AppX-verpakte apps verschijnen daarentegen via Get-AppxPackage, ongeacht de bron. Sla Get-CimInstance Win32_Product over, omdat die alleen Windows Installer-producten opsomt en de query een trage MSI-consistentiecontrole kan activeren.