Ako udeliť bežným používateľom práva na spustenie / zastavenie služieb v systéme Windows

Bežní používatelia, ktorí nemajú oprávnenie správcu systému, nemôžu spravovať služby systému Windows (a väčšiny aplikácií). To znamená, že nemôžu zastaviť, spustiť (reštartovať), zmeniť nastavenia a povolenia týchto služieb. V niektorých prípadoch je stále potrebné, aby užívateľ mal práva na reštartovanie a správu určitých služieb. V tomto článku vás prevedieme niekoľkými spôsobmi, ako spravovať práva na služby Windows Services. Ukážeme najmä, ako poskytnúť bežnému používateľovi bez oprávnenia správcu systému Windows právo na spustenie, zastavenie a reštartovanie určitej služby..

Predpokladajme, že musíme poskytnúť účet domény contoso\ tuser práva na reštart tlačovej služby (Print Spooler) s názvom systému spooler.

Neexistuje jednoduchý a pohodlný vstavaný nástroj na správu servisných povolení v systéme Windows. Zvážime niekoľko spôsobov, ako udeliť užívateľské práva na službu:

obsah:

  • Vstavaný obslužný program SC.exe (Service controller)
  • SubInACL: Priradenie servisných práv pomocou sysinternals
  • Process Explorer: Nastavenie oprávnení na služby
  • Bezpečnostná šablóna
  • Správa práv na služby prostredníctvom skupinových politík
  • Priradenie servisných povolení pomocou PowerShell

Ktorý z nich je ľahší a pohodlnejší, je len na vás..

Vstavaný obslužný program SC.exe (Service controller)

Štandardná vstavaná metóda správy práv na systémové služby systému Windows zahŕňa použitie pomôcky sc.exe (Service Controller).

poznámka. Príklad použitia sc.exe na manuálne odstránenie služby v systéme Windows.

Hlavným problémom je zúrivá syntax formátu na udeľovanie práv na službu (formát SDDL)..

Aktuálne práva na službu môžete získať takto:

sc.exe sdshow Spooler

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

Čo znamenajú všetky tieto symboly??

S: - Zoznam kontroly prístupu do systému (SACL)
D: - diskrečný zoznam ACL (DACL)

Prvé písmeno za zátvorkami znamená: povoliť (A, povoliť) alebo odmietnuť (D, odmietnuť).

Ďalšia skupina znakov - prideliteľné práva.
CC - SERVICE_QUERY_CONFIG (žiadosť o nastavenie služby)
LC - SERVICE_QUERY_STATUS (prieskum stavu služby)
SW - SERVICE_ENUMERATE_DEPENDENTS (prieskum závislosti)
LO - SERVICE_INTERROGATE
CR - SERVICE_USER_DEFINED_CONTROL
RC - READ_CONTROL
RP - SERVICE_START (začiatok služby)
WP - SERVICE_STOP (zastavenie služby)
DT - SERVICE_PAUSE_CONTINUE (pozastavenie, pokračujúci servis)

Posledné 2 písmená, objekty (skupina používateľov alebo SID), ktorým sú práva udelené. Existuje zoznam preddefinovaných skupín.

Autorizovaní používatelia AU

Prevádzkovatelia účtu AO
RU Alias ​​na povolenie predchádzajúcich Windows 2000
Anonymné prihlásenie
AU Overení používatelia
BA Vstavaní správcovia
BG Vstavaní hostia
Operátori zálohovania Bo
BU Vstavaní používatelia
Správcovia certifikačného servera CA.
Skupina tvorcov CG
Vlastník CO tvorca
Správcovia domény DA
Počítače s doménou DC
Radiče domény DD
Hostia domény DG
Používatelia domény DU
Správcovia EA Enterprise
Radiče domény ED Enterprise
Wd všetci
Správcovia politiky skupiny PA
IU Interaktívne prihlásený užívateľ
LA Miestny správca
LG Miestny hosť
LS Lokálny účet služby
SY miestny systém
Užívateľ prihlásenia do siete NU
NIE Prevádzkovatelia konfigurácie siete
Účet sieťových služieb NS
Obsluha tlačiarní PO
PS Osobné ja
PU Power používatelia
Skupina serverov RS RAS
Používatelia terminálového servera RD
RE replikátor
RC Obmedzený kód
Správcovia schémy SA
Prevádzkovatelia serverov SO
Užívateľ prihlásenia do služby SU

Namiesto preddefinovanej skupiny môžete používateľa alebo skupinu explicitne určiť pomocou SID. SID užívateľa pre aktuálneho používateľa môžete získať príkazom:

whoami / užívateľ

alebo pre všetkých používateľov domény, ktorí používajú program PowerShell cmdlet Get-ADUser:

Get-ADUser -Identity 'iipeshkov' |. vyberte SID

Napríklad práva pre používateľa za službu zaraďovača môžu byť udelené pomocou nasledujúceho príkazu:

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

SubInACL: Priradenie servisných práv pomocou sysinternals

Použitie nástroja konzoly je omnoho jednoduchšie. subinacl z balíka Sysinternals od Marka Russinovicha (na ktorý spoločnosť Microsoft teraz vlastní práva autora). Syntax tohto nástroja je oveľa jednoduchšia a pohodlnejšia na vnímanie. Ako prideliť práva na reštart službe pomocou SubInACL:

  1. download msi zo stránky (https://www.microsoft.com/en-us/download/details.aspx?id=23510) a nainštalujte ju do cieľového systému.
  2. Na príkazovom riadku s právami správcu prejdite do adresára s pomocným programom: cd “C: \ Program Files (x86) \ Windows Resource Kits \ Tools \)"
  3. Spustite príkaz: subinacl.exe / service Spooler / grant = contoso \ tuser = PTO poznámka. V tomto prípade sme používateľovi dali právo pozastaviť (pozastaviť / pokračovať), spustiť (spustiť) a zastaviť (zastaviť) službu. Úplný zoznam dostupných povolení:F: Plná kontrola
    R: Všeobecné čítanie
    W: Generický zápis
    X: Generický eXecute
    L: Prečítanie údajov
    Otázka: Konfigurácia dopytovej služby
    S: Stav služby dopytov
    E: Vyčíslenie závislých služieb
    C: Konfigurácia zmeny služby
    T: Spustenie servisu
    O: Zastavte servis
    P: Pozastaviť / pokračovať v službe
    I: Vyšetrovacia služba
    U: Príkazy riadenia definované používateľom služby

    Ak potrebujete udeliť práva službe spustenej na vzdialenom počítači, syntax bude nasledovná:
    subinacl / SERVICE \\ msk-buh01 \ spooler / grant = contoso \ tuser = F

  4. Zostáva sa prihlásiť do tohto systému pod užívateľským účtom a pokúsiť sa reštartovať službu pomocou príkazov:
    net stop zaraďovač
    čistý štart zaraďovač

Ak ste urobili všetko správne, služba by sa mala zastaviť a reštartovať.

Process Explorer: Nastavenie oprávnení na služby

Jednoducho zmeňte povolenia pre službu pomocou iného nástroja Sysinternals - proces cestovateľ. Spustite Process Explorer s oprávneniami správcu a vyhľadajte požadovaný proces v zozname procesov. V našom príklade je to spoolsv.exe (za zaraďovač tlače je C: \ Windows \ System32 \ spoolsv.exe). Otvorte vlastnosti procesu a prejdite na kartu služby.

Kliknite na tlačidlo Povolenia av okne, ktoré sa otvorí, pridajte používateľa alebo skupinu, ktorým musíte prideliť práva na službu a úroveň oprávnenia..

Bezpečnostná šablóna

Vizuálnejším (ale tiež vyžadujúcim viac akcií) grafickým spôsobom riadenia práv na služby je použitie bezpečnostných šablón. Ak chcete implementovať, otvorte konzolu mmc.exe a pridajte snímku zabezpečenia šablóny.

Vytvorenie novej šablóny (Nová šablóna).

Pomenujte novú šablónu a prejdite na systém služby. V zozname služieb vyberte svoju službu Tlačová spoločnosť a otvoriť jeho vlastnosti.

Nastaviť typ spustenia (automatický) a stlačte tlačidlo Upravte zabezpečenie.

Pomocou tlačidla pridať Pridajte účet používateľa alebo skupiny, ktorým chcete udeliť práva. V našom prípade máme dosť pravdy štart, Stop a prestávka.

Uložte šablónu (Uložiť).

poznámka. Obsah bezpečnostnej šablóny sa uloží do súboru inf v adresári C: \ Users \ username \ Documents \ Security \ Templates.

Ak otvoríte tento súbor, môžete vidieť, že údaje o prístupových právach sa ukladajú vo vyššie uvedenom formáte SDDL. Takto získaný reťazec sa môže použiť ako argument pre príkaz sc.exe..

[Unicode] Unicode = yes [Version] signature = "$ CHICAGO $" Revision = 1 [Service General Setting] "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; CCDCLCSWRPWPDTLOCRSDRCWDW ;;; ) ““

Vľavo so západkou Konfigurácia a analýza zabezpečenia vytvorte novú databázu (Open Database) a importujte našu bezpečnostnú šablónu zo súboru Práva používateľa Spooler.inf.

Šablónu použijeme volaním príkazu z kontextovej ponuky Konfigurácia počítačový teraz.

Teraz môžete ako užívateľ overiť, či má práva na správu služby zaraďovania tlače.

Správa práv na služby prostredníctvom skupinových politík

Ak potrebujete dať používateľom právo na okamžité spustenie / zastavenie služby na mnohých serveroch alebo doménových počítačoch, najjednoduchším spôsobom je využiť možnosti skupinových politík (GPO)..

  1. Vytvorte nový alebo upravte existujúci objekt GPO, priraďte ho k nevyhnutnému kontajneru s počítačmi v službe Active Directory. Prejdite do časti s pravidlami Konfigurácia počítača -> Nastavenia systému Windows -> Nastavenia zabezpečenia -> Systémové služby.
  2. Nájdite službu zaraďovača a, podobne ako predtým diskutovaná metodika, udeľujte používateľovi práva. Uložte zmeny.poznámka. Skôr sme ukázali, ako môžete pomocou podobného objektu GPO skryť akúkoľvek službu systému Windows pred všetkými používateľmi systému.
  3. Zostáva čakať na uplatňovanie politík na klientskych počítačoch a overenie uplatňovania nastavení servisných práv.

Priradenie servisných povolení pomocou PowerShell

Galéria TechNet má samostatný neoficiálny modul PowerShell na správu povolení pre rôzne objekty systému Windows - modul PowerShellAccessControl (môžete si ho stiahnuť tu). Tento modul mu umožňuje spravovať servisné práva. Importujte modul do relácie:

Import-modul PowerShellAccessControl

Efektívne povolenia pre konkrétnu službu môžete získať od spoločnosti PowerShell, napríklad:

Zaraďovač služieb Get-EffectiveAccess -Principálne corp \ tuser

Ak chcete bežnému používateľovi udeliť právo na spustenie a zastavenie služby, postupujte takto:

Zaraďovač služieb Add-AccessControlEntry -ServiceAccessRights Start, Stop -Principal corp \ tuser

Preskúmali sme teda niekoľko spôsobov, ako spravovať práva na služby Windows, čo vám umožňuje poskytnúť každému užívateľovi akékoľvek práva na systémové služby. V prípade, že používateľ vyžaduje vzdialený prístup k službe bez toho, aby mu udelil práva na lokálne prihlásenie, musíte používateľovi povoliť vzdialenú anketu Správca riadenia služieb..