Kako odobriti redovnim korisnicima prava na pokretanje / zaustavljanje usluga u sustavu Windows

Prema zadanim postavkama redoviti korisnici koji nemaju prava administratora sustava ne mogu upravljati uslugama Windows sustava (i većine aplikacija). To znači da se ne mogu zaustaviti, pokrenuti (ponovno pokrenuti), promijeniti postavke i dozvole takvih usluga. U nekim slučajevima je još uvijek potrebno da korisnik ima prava na ponovno pokretanje i upravljanje određenim uslugama. U ovom ćemo vas članku provesti kroz nekoliko načina upravljanja pravima za Windows usluge. Konkretno, pokazat ćemo kako pružiti običnom korisniku, bez prava Windows administratora, pravo na pokretanje, zaustavljanje i ponovno pokretanje određene usluge.

Pretpostavimo da moramo osigurati račun domene Contoso\ tuser prava na ponovno pokretanje usluge ispisa (Print Spooler) s nazivom sustava posrednika.

Ne postoji jednostavan i praktičan ugrađeni alat za upravljanje dozvolama usluga u sustavu Windows. Razmotrit ćemo nekoliko načina davanja korisničkih prava na uslugu:

sadržaj:

  • Ugrađeni uslužni program SC.exe (servisni kontroler)
  • SubInACL: Dodijelite prava usluge pomoću Sysinternals
  • Istraživač procesa: Postavljanje dozvola za uslugu
  • Sigurnosni predložak
  • Upravljanje pravima usluga putem grupnih politika
  • Dodijelite servisna dopuštenja pomoću PowerShell-a

Koji je lakši i praktičniji ovisi o vama..

Ugrađeni uslužni program SC.exe (servisni kontroler)

Standardna, ugrađena Windows metoda upravljanja pravima na sistemske usluge uključuje upotrebu uslužnog programa SC.eXE (Servisni kontroler).

primjedba. Primjer korištenja sc.exe za ručno uklanjanje usluge u sustavu Windows.

Glavni problem je bijesna sintaksa formata za dodjelu prava na uslugu (SDDL format).

Možete dobiti trenutna prava na uslugu poput ove:

sc.exe sdshow Spooler

D: (A;; CCLCSWLOCRRC;;; AU) (A;; CCDCLCSWRPWPDTLOCRSDRCWDWO;;; BA) (A;; CCLCSWRPWPDTLOCRRC ;;; SY) S: (AU; FA; CCDCLCSWRPWPDTDOCL

Što znače svi ti simboli??

S: - Popis kontrole pristupa sustavu (SACL)
D: - Diskrecijski ACL (DACL)

Prvo slovo nakon zagrade znači: dopustiti (A, dopustiti) ili zabraniti (D, zabraniti).

Sljedeća hrpa znakova - pridružena prava.
CC - SERVICE_QUERY_CONFIG (zahtjev za postavke usluge)
LC - SERVICE_QUERY_STATUS (ispitivanje statusa usluge)
SW - SERVICE_ENUMERATE_DEPENDENTS (istraživanje o ovisnosti)
LO - SERVICE_INTERROGATE
CR - SERVICE_USER_DEFINED_CONTROL
RC - READ_CONTROL
RP - SERVICE_START (početak usluge)
WP - SERVICE_STOP (zaustavljanje usluge)
DT - SERVICE_PAUSE_CONTINUE (obustava, nastavak usluge)

Zadnja dva slova, objekti (korisnička grupa ili SID) na koja su prava dodijeljena. Postoji popis unaprijed definiranih grupa.

AU Autentični korisnici

Operatori AO računa
RU Alias ​​kako bi se omogućio prethodni Windows 2000
ANnonimna prijava
AU Autentični korisnici
BA Ugrađeni administratori
BG Ugrađeni gosti
Bo rezervni operatori
BU ugrađeni korisnici
Administratori poslužitelja CA certifikata
CG Grupa autora
Vlasnik CO Stvoritelja
DA administratori domene
Računala sa DC domenom
DD kontroleri domena
Gosti DG Doma
Korisnici DU domene
Administratori tvrtke EA Enterprise
ED Enterprise kontroleri
Wd svima
Administratori pravila grupe PA
IU Interaktivno prijavljen korisnik
LA Lokalni administrator
LG Local gost
LS račun lokalne usluge
SY lokalni sustav
Korisnik za prijavu na NU mrežu
NE Mrežni operateri za konfiguraciju
Račun usluge NS mreže
Operatori za tiskanje PO
PS Osobno ja
Korisnici PU napajanja
RS RAS grupa poslužitelja
Korisnici poslužitelja RD Terminala
RE Replikator
RC Ograničeni kod
Administratori sheme SA
Tako operatori poslužitelja
Korisnik prijave za SU servis

Umjesto unaprijed definirane skupine, možete eksplicitno odrediti korisnika ili grupu prema SID-u. Korisnički SID za trenutnog korisnika možete dobiti pomoću naredbe:

whoami / korisnik

ili za bilo kojeg korisnika domene koji upotrebljava PowerShell cmdlet Get-ADUser:

Get-ADUser -Identity 'iipeshkov' | odaberite SID

Na primjer, prava korisniku za uslugu spoolera mogu se dodijeliti sa sljedećom naredbom:

sc sdset Spooler "D: (A;; CCLCSWRPWPDTLOCRRC;;; SY) (A;; CCDCLCSWRPWPDTLOCRSDRCWDWO;;; BA) (A;; CCLCSWLOCRRC;;; IU) (A;; CCLCSWLOCRRC; RPWPCR ;;; S-1-5-21-2133228432-2794320136-1823075350-1000) S: (AU; FA; CCDCLCSWRPWPDTLOCRSDRCWDWO ;;; WD) "

SubInACL: Dodijelite prava usluge pomoću Sysinternals

Puno je lakše koristiti uslužni program za konzolu. SubInACL iz paketa Sysinternals Marka Russinovicha (na koji Microsoft sada ima pravo s autorom). Sintaksa ovog uslužnog programa mnogo je jednostavnija i prikladnija za percepciju. Kako odobriti prava na ponovno pokretanje usluge pomoću SubInACL:

  1. preuzimanje MSI sa stranice (https://www.microsoft.com/en-us/download/details.aspx?id=23510) i instalirajte je na ciljni sustav.
  2. U naredbenom retku s administratorskim pravima idite u direktorij s uslužnim programom: cd "C: \ programske datoteke (x86) \ Windows Resource Kits \ Tools \)"
  3. Pokrenite naredbu: subinacl.exe / usluga Spooler / grant = contoso \ tuser = PTO primjedba. U ovom slučaju, korisniku smo dali pravo obustaviti (zaustaviti / nastaviti), pokrenuti (pokrenuti) i zaustaviti (zaustaviti) uslugu. Potpuni popis dozvola dostupan:F: Potpuna kontrola
    R: Općenito čitanje
    W: Općenito pisanje
    X: Generički eXecute
    L: Pročitajte kontrolu
    P: Konfiguracija usluge upita
    S: Status usluge upita
    E: Nabrojite ovisne usluge
    C: Konfiguracija promjene usluge
    T: Pokretanje usluge
    O: Zaustavite uslugu
    P: Pauza / nastavak usluge
    Ja: Ispitna služba
    U: Uslužne upravljačke naredbe definirane od strane korisnika

    Ako trebate dodijeliti prava na uslugu koja se izvodi na udaljenom računalu, sintaksa će biti sljedeća:
    subinacl / SERVICE \\ msk-buh01 \ spooler / grant = contoso \ tuser = F

  4. Ostaje se prijaviti u ovaj sustav pod korisničkim računom i pokušati ponovo pokrenuti uslugu naredbama:
    neto zaustavni spojler
    neto startni spooler

Ako ste učinili sve kako treba, usluga bi se trebala zaustaviti i ponovno pokrenuti.

Istraživač procesa: Postavljanje dozvola za uslugu

Jednostavno promijenite dozvole za uslugu pomoću drugog uslužnog programa Sysinternals - postupak istraživač. Pokrenite Explorer Explorer s povlasticama administratora i pronađite postupak usluge koja vam je potrebna na popisu procesa. U našem primjeru to je spoolsv.exe (spiler za ispis je C: \ Windows \ System32 \ spoolsv.exe). Otvorite svojstva procesa i otvorite karticu usluge.

Kliknite gumb Dozvole i u prozoru koji se otvori dodajte korisnika ili grupu kojoj trebate dodijeliti prava na uslugu i razinu ovlasti..

Sigurnosni predložak

Vizualniji (ali zahtijeva i više radnji) grafički način upravljanja pravima na usluge je korištenjem sigurnosnih predložaka. Za primjenu otvorite konzolu MMC.eXE i dodajte škljocanje sigurnosti Predlošci.

Izradite novi predložak (Novi predložak).

Imenujte novi predložak i idite na sistem usluge. Na popisu usluga odaberite svoju uslugu Spoler ispisa i otvoriti svoja svojstva.

Postavljanje vrste pokretanja (automatski) i pritisnite gumb Uredi sigurnost.

Pomoću gumba dodati Dodajte račun korisnika ili grupe na koju želite dodijeliti prava. U našem slučaju imamo dovoljno prava početak, zaustaviti i pauza.

Spremi predložak (Spremi).

primjedba. Sadržaj sigurnosnog predloška sprema se u inf datoteku u direktorij C: \ Korisnici \ korisničko ime \ Dokumenti \ Sigurnost \ Predlošci

Ako otvorite ovu datoteku, možete vidjeti da se podaci o pravima pristupa spremaju u prethodno spomenutom SDDL formatu. Tako dobiveni niz može se koristiti kao argument naredbi sc.exe..

[Unicode] Unicode = da [Verzija] potpis = "$ CHICAGO $" Revizija = 1 [Opće postavke usluge] "Spooler", 2, "D: AR (A;; CCDCLCSWRPWPDTLOCRSDRCWDWO;;; SY) (A;; CCDCLCSWRPWPDTLOCODRWW ;; BA) (A;; CCLCSWLOCRRC;;; IU) (A; RPWPDTRC;; S-1-5-21-3243688314-1354026805-3292651841-1127) S: (AU; FA; CCDCLCSWRPWPDTLOCRSDRCWDWO ;; ) "

S lijeve strane Sigurnosna konfiguracija i analiza stvorite novu bazu podataka (Open Database) i uvezite naš sigurnosni predložak iz datoteke Prava korisnika spoolera.inf.

Predložak primjenjujemo pozivanjem naredbe iz kontekstnog izbornika Konfiguracija računalo sada.

Sada kao korisnik možete potvrditi da on ima prava za upravljanje uslugom Print Spooler.

Upravljanje pravima usluga putem grupnih politika

Ako korisnicima trebate dati pravo da odmah pokrenu / zaustave uslugu na mnogim poslužiteljima ili računalima domena, najlakši način je korištenje mogućnosti grupnih politika (GPO).

  1. Izradite novi ili uredite postojeći GPO, dodijelite ga potrebnom spremniku s računalima u Active Directoryu. Idite na odjeljak s pravilima Konfiguracija računala -> Postavke sustava Windows -> Sigurnosne postavke -> Usluge sustava.
  2. Pronađite uslugu Spooler i korisniku dodijelite prava na sličan način kao što je ranije opisano u metodologiji. Spremite promjene.primjedba. Ranije smo pokazali kako pomoću sličnog GPO-a možete sakriti bilo koju Windows uslugu od svih korisnika sustava.
  3. Ostaje pričekati primjenu pravila na klijentskim računalima i provjeriti primjenu postavki prava na usluge.

Dodijelite servisna dopuštenja pomoću PowerShell-a

TechNet Gallery ima zasebni neslužbeni PowerShell modul za upravljanje dozvolama za razne Windows objekte - PowerShellAccessControl Module (možete ga preuzeti ovdje). Ovaj modul mu omogućuje upravljanje pravima usluga. Uvezi modul u svoju sesiju:

Uvozni modul PowerShellAccessControl

Iz PowerShell-a možete dobiti učinkovita dopuštenja za određenu uslugu na sljedeći način:

Get-Service spiler | Get-EffectiveAccess - Principal corp \ tuser

Da biste običnom korisniku omogućili pravo pokretanja i zaustavljanja usluge, učinite:

Get-Service spiler | Add-AccessControlEntry -ServiceAccessRights Start, Stop -Korpni korpus \ tuser

Dakle, ispitali smo nekoliko načina upravljanja pravima na Windows uslugama, omogućujući vam da bilo kojem korisniku pružite bilo koja prava na sistemskim uslugama. U slučaju da korisnik zahtijeva udaljeni pristup usluzi, bez davanja prava na lokalnu prijavu, morate dopustiti korisniku da daljinsko anketira Service Control Manager.