Jak udělit běžným uživatelům práva ke spuštění / zastavení služeb ve Windows

Ve výchozím nastavení nemohou běžní uživatelé, kteří nemají práva správce systému, spravovat služby systému Windows (a většiny aplikací). To znamená, že nemohou zastavit, spustit (restartovat), změnit nastavení a oprávnění těchto služeb. V některých případech je stále vyžadováno, aby uživatel měl práva na restartování a správu určitých služeb. V tomto článku vás provedeme několika způsoby správy práv služby Windows Services. Zejména ukážeme, jak poskytnout běžnému uživateli právo správce systému Windows s právem na spuštění, zastavení a restartování určité služby..

Předpokládejme, že musíme poskytnout účet domény contoso\ uživatel práva na restartování tiskové služby (Print Spooler) s názvem systému Spoler.

Neexistuje jednoduchý a pohodlný vestavěný nástroj pro správu servisních oprávnění ve Windows. Budeme zvažovat několik způsobů, jak udělit uživatelská práva ke službě:

Obsah:

  • Vestavěný obslužný program SC.exe (servisní řadič)
  • SubInACL: Přiřazení servisních práv pomocí Sysinternals
  • Process Explorer: Nastavení oprávnění služby
  • Šablona zabezpečení
  • Správa práv na služby prostřednictvím skupinových zásad
  • Přiřazení oprávnění k servisu pomocí prostředí PowerShell

Který z nich je jednodušší a pohodlnější, je jen na vás..

Vestavěný obslužný program SC.exe (servisní řadič)

Standardní integrovaná metoda správy práv na systémové služby systému Windows zahrnuje použití obslužného programu sc.exe (Service Controller).

Poznámka:. Příklad použití sc.exe k ručnímu odebrání služby ve Windows.

Hlavním problémem je zuřivá syntaxe formátu pro udělování práv ke službě (formát SDDL)..

Aktuální práva na službu můžete získat takto:

sc.exe sdshow zařazovací služba

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

Co znamenají všechny tyto symboly??

S: - Seznam řízení přístupu k systému (SACL)
D: - Volitelný ACL (DACL)

První písmeno za závorkami znamená: Povolit (A, Povolit) nebo Odepřít (D, Odepřít).

Další banda postav - přiřazitelná práva.
CC - SERVICE_QUERY_CONFIG (žádost o nastavení služby)
LC - SERVICE_QUERY_STATUS (dotazování stavu služeb)
SW - SERVICE_ENUMERATE_DEPENDENTS (průzkum závislosti)
LO - SERVICE_INTERROGATE
CR - SERVICE_USER_DEFINED_CONTROL
RC - READ_CONTROL
RP - SERVICE_START (spuštění služby)
WP - SERVICE_STOP (servisní zastávka)
DT - SERVICE_PAUSE_CONTINUE (pozastavení, pokračující servis)

Poslední 2 písmena, objekty (skupina uživatelů nebo SID), kterým jsou práva udělena. Existuje seznam předdefinovaných skupin.

Ověřovaní uživatelé AU

Provozovatelé účtu AO
Alias ​​RU umožňující předchozí Windows 2000
AN anonymní přihlášení
AU Ověřovaní uživatelé
BA Vestavěné administrátory
BG Vestavěné hosty
Bo záložní operátory
BU Vestavění uživatelé
Správci certifikačního serveru CA.
CG Creator group
Vlastník CO tvůrce
Správci domény DA
Počítače domény DC
Řadiče domény DD
Hosté domény DG
Uživatelé domény DU
Správci EA Enterprise
Řadiče domény ED Enterprise
Wd všichni
Správci zásad skupiny PA
IU Interaktivně přihlášený uživatel
LA Místní správce
LG Místní host
LS Místní servisní účet
SY místní systém
Přihlašovací uživatel sítě NU
NE Operátoři síťové konfigurace
Účet síťové služby NS
Operátoři tiskáren PO
PS Osobní já
PU Power uživatelé
Skupina serverů RS RAS
Uživatelé terminálového serveru RD
RE replikátor
RC Omezený kód
Správci schématu SA
Operátoři serveru SO
Přihlášení uživatele služby SU

Místo předdefinované skupiny můžete explicitně určit uživatele nebo skupinu pomocí SID. SID uživatele pro aktuálního uživatele můžete získat příkazem:

whoami / uživatel

nebo pro libovolného uživatele domény používajícího modul PowerShell cmdlet Get-ADUser:

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

Například práva pro uživatele pro službu zařazování mohou být udělena pomocí následujícího pří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: Přiřazení servisních práv pomocí Sysinternals

Použití nástroje konzole je mnohem snazší. Subinacl ze sady Sysinternals od Marka Russinoviče (ke kterému nyní společnost Microsoft vlastní práva s autorem). Syntaxe tohoto nástroje je mnohem jednodušší a pohodlnější pro vnímání. Jak udělit práva pro restartování služby pomocí SubInACL:

  1. Stáhnout msi ze stránky (https://www.microsoft.com/en-us/download/details.aspx?id=23510) a nainstalujte ji do cílového systému.
  2. Na příkazovém řádku s právy správce přejděte do adresáře s obslužným programem: cd “C: \ Program Files (x86) \ Windows Resource Kits \ Tools \)
  3. Spusťte příkaz: subinacl.exe / service zařazovací služba / grant = contoso \ tuser = PTO Poznámka:. V tomto případě jsme uživateli dali právo pozastavit (Pozastavit / Pokračovat), spustit (Start) a zastavit (Zastavit) službu. Úplný seznam dostupných oprávnění:F: Plná kontrola
    R: Obecné čtení
    W: Obecný zápis
    X: Obecný eXecute
    L: Přečtěte si kontrolu
    Otázka: Konfigurace dotazovací služby
    S: Stav dotazovací služby
    E: Výčet závislých služeb
    C: Konfigurace změny služby
    T: Spusťte servis
    O: Zastavte službu
    P: Pozastavit / pokračovat v servisu
    I: Dotazovací služba
    U: Řídicí příkazy definované uživatelem služby

    Pokud potřebujete udělit práva službě spuštěné ve vzdáleném počítači, bude tato syntaxe následující:
    subinacl / SERVICE \\ msk-buh01 \ spooler / grant = contoso \ tuser = F

  4. Zbývá se přihlásit do tohoto systému pod uživatelským účtem a zkusit restartovat službu pomocí příkazů:
    net stop zařazování
    net start zařazovací služba

Pokud jste udělali vše správně, služba by se měla zastavit a restartovat.

Process Explorer: Nastavení oprávnění služby

Jednoduše změňte oprávnění pro službu pomocí jiného nástroje Sysinternals - Proces Průzkumník. Spusťte Průzkumníka procesů s oprávněními správce a najděte požadovaný proces v seznamu procesů. V našem příkladu je to spoolsv.exe (zařazovací služba tisku je C: \ Windows \ System32 \ spoolsv.exe). Otevřete vlastnosti procesu a přejděte na kartu Služby.

Klikněte na tlačítko Oprávnění a v okně, které se otevře, přidejte uživatele nebo skupinu, ke které potřebujete udělit práva službě a úroveň oprávnění..

Šablona zabezpečení

Vizuální (ale také vyžadující více akcí) grafický způsob správy práv ke službám je použití bezpečnostních šablon. Chcete-li implementovat, otevřete konzolu mmc.exe a přidat snap Zabezpečení Šablony.

Vytvoření nové šablony (Nová šablona).

Pojmenujte novou šablonu a přejděte na Systém Služby. V seznamu služeb vyberte svou službu Tisk spoler a otevřít jeho vlastnosti.

Nastavit typ spouštění (Automatické) a stiskněte tlačítko Upravte zabezpečení.

Pomocí tlačítka Přidat Přidejte účet uživatele nebo skupiny, ke které chcete udělit práva. V našem případě máme dost pravdu Začněte, Zastavte a pauza.

Uložit šablonu (Uložit).

Poznámka:. Obsah šablony zabezpečení je uložen v inf souboru v adresáři C: \ Users \ username \ Documents \ Security \ Templates

Pokud tento soubor otevřete, můžete vidět, že data přístupových práv jsou uložena ve výše uvedeném formátu SDDL. Takto získaný řetězec lze použít jako argumenty pro pří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 ;;; ) “

Vlevo se zaklapnutím Konfigurace a analýza zabezpečení vytvořte novou databázi (Open Database) a importujte naši bezpečnostní šablonu ze souboru Uživatelská práva Spooler.inf.

Šablonu použijeme voláním příkazu z místní nabídky Konfigurovat Počítač Teď.

Nyní můžete jako uživatel ověřit, že má práva ke správě služby zařazování tisku.

Správa práv na služby prostřednictvím skupinových zásad

Pokud potřebujete dát uživatelům právo na okamžité spuštění / zastavení služby na mnoha serverech nebo počítačích v doméně, nejjednodušším způsobem je využití možností skupinových zásad (GPO)..

  1. Vytvořte nový nebo upravte existující GPO, přiřaďte jej potřebnému kontejneru s počítači ve službě Active Directory. Přejděte do sekce zásad Konfigurace počítače -> Nastavení systému Windows -> Nastavení zabezpečení -> Systémové služby.
  2. Najděte službu zařazování a podobně jako dříve diskutovaná metodika udělte uživateli práva. Uložit změny.Poznámka:. Dříve jsme ukázali, jak můžete pomocí podobné GPO skrýt všechny služby systému Windows před všemi uživateli systému.
  3. Zbývá čekat na uplatňování zásad na klientských počítačích a ověřit použití nastavení servisních práv.

Přiřazení oprávnění k servisu pomocí prostředí PowerShell

Galerie TechNet má samostatný neoficiální modul PowerShell pro správu oprávnění pro různé objekty Windows - modul PowerShellAccessControl (můžete si ho stáhnout zde). Tento modul mu umožňuje spravovat servisní práva. Import modulu do vaší relace:

Importovací modul PowerShellAccessControl

Efektivní oprávnění pro konkrétní službu můžete získat od společnosti PowerShell, jako je tato:

Zařazovací služba | Get-EffectiveAccess -Principální corp \ tuser

Chcete-li běžnému uživateli poskytnout právo ke spuštění a zastavení služby, proveďte následující kroky:

Zařazovací služba | Add-AccessControlEntry -ServiceAccessRights Start, Stop -Principal corp \ tuser

Prozkoumali jsme tedy několik způsobů, jak spravovat práva ke službám Windows, což vám umožňuje poskytnout všem uživatelům jakákoli práva k systémovým službám. V případě, že uživatel vyžaduje vzdálený přístup ke službě, aniž by mu udělil místní přihlašovací práva, musíte mu umožnit vzdáleně hlasovat Správce řízení služeb..