同事詢問Windows服務執行身分的預設選項:Local System、Local Service、Network Service,權限各有何不同?這問題多年前我彷彿知道答案,如今大腦卻不爭氣地只有殘缺印象,爬文時習之,不亦悅乎。

Local System、Local Service、Network Service都是Windows預先定義的本機帳號,但跟一般帳號不同(LookupAccountName查不到),使用時不需密碼,可用於CreateServiceChangeServiceConfig(密碼隨便給)。

Local System

在本機具備最高權限(使用時務必小心),與BUILTIN\Administrators具備相同權限,可存取本機大部分資源,與遠端主機溝通時則使用該主機電腦帳號(<domain_name>\<computer_name>$) 。做為授權對象時,LocalSystem帳號可寫成NT AUTHORITY\SYSTEM、LocalSystem、<computer name>\LocalSystem。執行時期將使用預設使用者機碼(HKET_USERS\.DEFAULT)。

Local Service

在本機的權限相當於Users群組,目的在減小服務或程序遭入侵的損害範圍,存取遠端資源時使用匿名身分。做為授權對象時,Local Service可寫成NT AUTHORITY\LOCAL SERVICE。Local Service有自已的HKEY_USERS機碼(HKEY_USERS\S-1-5-19)

Network Service

在本機的權限相當於Users群組,旨在控制服務程序遭惡意操控時的損害範圍,對外存取遠端資源時使用該主機電腦帳號(<domain_name>\<computer_name>$)。做為授權對象時,Network Service帳號可寫成NT AUTHORITY\NETWORK SERVICE 。Network Service也有自已的HKEY_USERS機碼(HKEY_USERS\S-1-5-20)

延伸閱讀


Comments

# by 貓老大

Local System 看不見本機安裝的印表機,所以需要印表的服務應避免使用

# by hochun836

請問,我以 Administrator 登入一台電腦 有辦法列出所有的帳號與群組 (包含內建) ? ex. net user 沒有出現 local system / local service / network service 這類的帳號

# by Jeffrey

to hochun836, Local System 等系統帳號也不會出現在電腦管理的使用者管理介面,它們固定存在不會有變化(想像是 Windows 作業系統的知識),性質特性也跟一般使用者帳號不同,所以一般查詢都不會包含。想列出來是有什麼用途嗎?

Post a comment