Nie sądzę, że istnieje ostateczna lista wszystkich możliwych kont.
Istnieją różne rodzaje nazw, których można używać w polu wprowadzania użytkownika, na przykład w oknach dialogowych uprawnień.
Najpierw są standardowe konta Win32_Account, aby uzyskać pełną listę, otwórz sesję PowerShell i uruchom:
get-wmiobject -class "win32_account" -namespace "root\cimv2" | sort caption | format-table caption, __CLASS, FullName
Są to zwykli użytkownicy, grupy i wbudowane konta.
Od wersji Vista istnieje nowa klasa kont, zwana kontami wirtualnymi, ponieważ nie pojawiają się one w zwykłych narzędziach do zarządzania. Są też czasami nazywane kontami usług i istnieją co najmniej trzy różne ich rodzaje:
Ponieważ Vista jest powiązana z każdą usługą systemu Windows, konto wirtualne jest nawet powiązane z innym kontem użytkownika i nawet jeśli w ogóle nie działa. To wygląda jakNT Service\MSSQLSERVER
Aby uzyskać listę tych, użyj:
get-service | foreach {Write-Host NT Service\$($_.Name)}
Każda pula aplikacji IIS działająca w ramach ApplicationPoolIdentity działa na specjalnym koncie o nazwie IIS APPPOOL\NameOfThePool
Zakładając, że masz zainstalowane narzędzia skryptowe IIS Management, możesz uruchomić:
Get-WebConfiguration system.applicationHost/applicationPools/* /* | where {$_.ProcessModel.identitytype -eq 'ApplicationPoolIdentity'} | foreach {Write-Host IIS APPPOOL\$($_.Name)}
- Maszyny wirtualne Hyper-V
Na serwerze 2008+ i Windows 8+ masz Hyper-V, każda maszyna wirtualna tworzy własne konto wirtualne, które wygląda następująco:
NT VIRTUAL MACHINE\1043F032-2199-4DEA-8E69-72031FAA50C5
aby uzyskać listę użyj:
get-vm | foreach {Write-Host NT VIRTUAL MACHINE\$($_.Id) - $($_.VMName)}
Mimo że te konta nie są akceptowane w oknie dialogowym uprawnień, możesz używać ich z programem icacls.exe do ustawiania uprawnień.
Istnieje również specjalna grupa NT Virtual Machine\Virtual Machines
, która nie pojawia się gdzie indziej. Wszystkie konta maszyn wirtualnych są członkami tej grupy, więc możesz użyć tego do ustawienia uprawnień dla wszystkich plików VM.
Te nazwy są specyficzne dla języka, np. W języku niemieckim nazywa się NT Virtual Machine\Virtuelle Computer
Proces dvm.exe (Menedżer okien pulpitu) jest uruchamiany przez użytkownika Windows Manager\DWM-1
Ponownie nie można używać tego typu użytkowników w oknach dialogowych uprawnień. Naprawdę nie jest możliwe ich wyliczenie, ponieważ istnieje jedna na każdą „sesję Desktop”, więc gdy używasz dwóch sesji RDP, masz także DWM-2
i DWM-3
oprócz tego DVM-1
. Jest ich tyle, ile jest dostępnych komputerów stacjonarnych.
W niektórych przypadkach możesz także używać nazw komputerów w oknie dialogowym uprawnień, zwykle będąc częścią domeny Active Directory.
- Windows Remoting Virtual Users
Podczas korzystania z PowerShell i „JEA (Just dosyć Administration)” i łączenia się z serwerem za pomocą zdalnej sesji PS, można utworzyć tymczasowego wirtualnego użytkownika.
mają one następujący format:
winrm virtual users\winrm va_x_computername_username
i identyfikator SID, który zaczyna się od S-1-5-94-
„x” jest liczbą całkowitą.
Z tych kont można korzystać podczas przypisywania uprawnień NTFS, ale nie wiem, jak wyświetlić listę wszystkich możliwych użytkowników wirtualnych.
Podczas sesji JEA możesz użyć, whoami
aby znaleźć nazwę bieżącego konta.
Nawet te listy nie dają wszystkich możliwych kont.
Na przykład możesz utworzyć pulę aplikacji, FooBarPool
a następnie usunąć ją ponownie, nadal możesz jej używać IIS APPPOOL\FooBarPool
w oknie dialogowym uprawnień, więc musi być gdzieś wewnętrzna lista.