byggeproces - Hvordan kan jeg lade Windows-software køre som en anden bruger inden for et script?

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg bruger et build script, der kalder Wise til at oprette nogle installationsfiler. Problemet er, at Wise-licensen kun tillader, at den køres under en bestemt brugerkonto, hvilket ikke er den samme konto, som mit build script vil køre under. ved at Windows har kommandoen runas , men det virker ikke for et automatiseret script, da der ikke er nogen måde at indtaste adgangskoden via kommandolinjen.

Bedste reference


Dette kan hjælpe: Hvorfor accepterer RunAs-programmet ikke et kodeord på kommandolinjen? [2]

Andre referencer 1


Jeg anbefaler at kigge på CPAU. [3]



  Kommandolinjeværktøj til startproces
  i alternativ sikkerhedssammenhæng.
  Dybest set er dette en runas udskiftning.
  Tillader også at du opretter jobfiler
  og kode id, password og
  kommandolinje i en fil, så det kan være
  brugt af normale brugere.



Du kan bruge det som sådan (eksempler): [4]


CPAU -u user [-p password] -ex "WhatToRun" [switches]


Eller du kan oprette en '.job' -fil, som vil have brugeren og adgangskoden kodet inde i den. På denne måde kan du undgå at sætte kodeordet for brugeren inde i dit build script.

Andre referencer 2


Det er lidt af en løsning, men du kan oprette en planlagt opgave, der kører som din brugerkonto, og få den til at køre regelmæssigt, måske en gang hvert minut. Ja, du skal vente på, at den kører så.


Denne opgave kan derefter søge efter nogle datafiler til at behandle, og kun det rigtige arbejde, hvis de er der.

Andre referencer 3


Dette kan hjælpe, det er en klasse jeg har brugt i et andet projekt for at lade folk lave deres egne konti; alle skulle have adgang til programmet, men den samme konto kunne ikke få adgang til LDAP-stuffene, så programmet bruger denne klasse til at køre den som en anden bruger.


http://www.codeproject.com/KB/dotnet/UserImpersonationInNET.aspx[5]