c # - Bedste måde at køre en tilbagevendende opgave i Windows som en ikke-administrativ bruger?

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg var under indtryk af, at Planlagte opgaver ville være den bedste måde at køre en C # -synkroniseringstjeneste på (gør REST-anmodninger og skriver til MySQL-databasen), der kører hver halve time. Det ser imidlertid ud til, at i Windows 10, skal jeg tilpasse rettighederne til en ikke-admin-bruger ('køre som batch' rettigheder) for at få dette til at ske (noget der ikke er tilfældet i tidligere versioner af windows ?). Men hvis jeg skulle planlægge opgaven som administrator, kan ikke-administratoren ikke engang se opgaven, endsige få den sidste løbetid og resultatet. Således er det ikke muligt for ikke-admin-brugeren at se om opgaven eksisterer eller har haft succes med andre end at skrive resultater til en log eller noget.


Jeg tror, ​​jeg kan bare gå tilbage til at bruge timere i en applikation, der løbende kører. Er der en mere 'effektiv' måde?

Bedste reference


Vær ikke for forvirret her. Opgaver har både en ejer og en bruger, de kører som. Som standard kan kun ejeren af ​​et job og administratorer se/udføre jobbet. Ejeren er som standard den bruger, der oprettede jobbet.


Du en administrator kan manuelt give en ikke-admin-bruger den nødvendige ret ved hjælp af lokal gruppepolitik. Denne politik er tilgængelig ved at åbne lokal sikkerhedspolitik . Klik på Lokal politik , Brugerrettighedsopgave og Logon as batch -vinduet i vinduet Lokal sikkerhedspolitik . Du kan tilføje brugeren her, medmindre et højere niveau af gruppepolitik forhindrer dette.


Alternativt kan du få opgaven at køre som 'NT Authority \ Local Service', som er en ikke-admin-konto, der implicit har den nødvendige priveledge. Du skal oprette dette som administrator. Det betyder selvfølgelig, at administratoren vil eje jobbet.


Regelmæssige brugere kan få adgang til at se/udføre jobbet. For at gøre dette skal administratoren finde opgaven på disken (den findes i mappen C:windowssystem32 asks og bruge fanen Sikkerhed til at give 'Læs og eksekver' til 'Brugere' eller til bestemte brugere som ønsket.


Microsoft gør det faktisk med nogle af deres opgaver som standard, selvom opgaven kører med SYSTEM-tilladelser (selvom de selvfølgelig har installationsprogrammet, ændrer opgavefilens sikkerhed i stedet for at gøre det for hånd).