เนื่องจากมีความสับสนอย่างมากเกี่ยวกับการทำงานของบัญชีบริการมาตรฐานฉันจะพยายามทำให้หมดเร็ว
บัญชีแรก:
LocalServiceบัญชี (ที่ต้องการ)
บัญชีบริการที่มี จำกัด ซึ่งคล้ายกับบริการเครือข่ายและต้องการใช้บริการที่มีสิทธิ์น้อยที่สุดมาตรฐาน อย่างไรก็ตามแตกต่างจากบริการเครือข่ายมันเข้าถึงเครือข่ายในฐานะผู้ใช้ที่ไม่ระบุชื่อ
- ชื่อ:
NT AUTHORITY\LocalService
- บัญชีไม่มีรหัสผ่าน (ข้อมูลรหัสผ่านใด ๆ ที่คุณให้ไว้จะถูกละเว้น)
- HKCU เป็นตัวแทนของ บัญชีผู้ใช้LocalService
- มี สิทธิ์น้อยที่สุดในเครื่องคอมพิวเตอร์
- นำเสนอไม่ระบุชื่อข้อมูลประจำตัวที่บนเครือข่าย
- SID : S-1-5-19
- มีโปรไฟล์ของตัวเองภายใต้คีย์รีจิสทรีHKEY_USERS (
HKEY_USERS\S-1-5-19
)
NetworkServiceบัญชี
บัญชีบริการ จำกัด ที่มีไว้เพื่อให้บริการที่ได้รับสิทธิพิเศษมาตรฐาน บัญชีนี้มีข้อ จำกัด มากกว่าระบบภายในเครื่อง (หรือแม้แต่ผู้ดูแลระบบ) แต่ก็ยังมีสิทธิ์ในการเข้าถึงเครือข่ายในฐานะเครื่อง (ดูคำเตือนด้านบน)
NT AUTHORITY\NetworkService
- บัญชีไม่มีรหัสผ่าน (ข้อมูลรหัสผ่านใด ๆ ที่คุณให้ไว้จะถูกละเว้น)
- HKCU แสดงถึงNetworkServiceบัญชีผู้ใช้
- มีน้อยสิทธิ์ในเครื่องคอมพิวเตอร์
- แสดงข้อมูลประจำตัวของคอมพิวเตอร์ (เช่น
MANGO$
) ไปยังเซิร์ฟเวอร์ระยะไกล
- SID : S-1-5-20
- มีโปรไฟล์ของตัวเองภายใต้คีย์รีจิสทรีHKEY_USERS (
HKEY_USERS\S-1-5-20
)
- หากพยายามกำหนดเวลางานโดยใช้ให้ป้อน
NETWORK SERVICE
ในกล่องโต้ตอบ เลือกผู้ใช้หรือกลุ่ม
LocalSystemบัญชี (อันตรายไม่ได้ใช้!)
บัญชีที่เชื่อถือได้อย่างสมบูรณ์มากกว่าบัญชีผู้ดูแลระบบ ไม่มีอะไรในกล่องเดียวที่บัญชีนี้ไม่สามารถทำได้และมีสิทธิ์ในการเข้าถึงเครือข่ายในขณะที่เครื่อง (ต้องใช้ Active Directory และให้สิทธิ์บัญชีเครื่องจักรกับบางสิ่ง)
- ชื่อ:
.\LocalSystem
(สามารถใช้LocalSystem
หรือComputerName\LocalSystem
)
- บัญชีไม่มีรหัสผ่าน (ข้อมูลรหัสผ่านใด ๆ ที่คุณให้ไว้จะถูกละเว้น)
- SID : S-1-5-18
- ไม่มีโปรไฟล์ของตัวเอง (
HKCU
แสดงถึงผู้ใช้เริ่มต้น )
- มีที่กว้างขวางสิทธิ์ในคอมพิวเตอร์ที่ใช้อยู่
- แสดงข้อมูลประจำตัวของคอมพิวเตอร์ (เช่น
MANGO$
) ไปยังเซิร์ฟเวอร์ระยะไกล
ด้านบนเมื่อพูดถึงการเข้าถึงเครือข่ายนี่หมายถึงSPNEGO (เจรจาต่อรอง), NTLM และ Kerberos เท่านั้นและไม่ใช้กลไกการตรวจสอบสิทธิ์อื่น ๆ ตัวอย่างเช่นการประมวลผลการทำงานที่LocalService
ยังคงสามารถเข้าถึงอินเทอร์เน็ต
ปัญหาทั่วไปเกี่ยวกับการเรียกใช้เป็นบัญชีที่ไม่ได้มาตรฐานคือหากคุณแก้ไขการอนุญาตเริ่มต้นใด ๆ คุณกำลังขยายชุดของทุกสิ่งที่ทำงานตามที่บัญชีสามารถทำได้ ดังนั้นถ้าคุณให้ DBO กับฐานข้อมูลไม่เพียง แต่บริการของคุณจะทำงานเป็น Local Service หรือ Network Service เท่านั้น แต่ยังเข้าถึงทุกอย่างที่ทำงานในขณะที่บัญชีเหล่านั้นสามารถทำได้เช่นกัน หากนักพัฒนาทุกคนทำสิ่งนี้คอมพิวเตอร์จะมีบัญชีบริการที่มีสิทธิ์ในการทำสิ่งใด ๆ (โดยเฉพาะอย่างยิ่ง superset ของสิทธิพิเศษเพิ่มเติมที่แตกต่างกันทั้งหมดที่มอบให้กับบัญชีนั้น)
เป็นที่ต้องการเสมอจากมุมมองด้านความปลอดภัยเพื่อเรียกใช้เป็นบัญชีบริการของคุณเองที่มีสิทธิ์ที่คุณต้องการในการทำสิ่งที่บริการของคุณทำและไม่มีอะไรอื่นอีก อย่างไรก็ตามค่าใช้จ่ายของวิธีนี้คือการตั้งค่าบัญชีบริการของคุณและจัดการรหัสผ่าน เป็นการสร้างสมดุลที่แต่ละแอปพลิเคชันต้องจัดการ
ในกรณีเฉพาะของคุณปัญหาที่คุณอาจเห็นคือการเปิดใช้งาน DCOM หรือ COM + ถูก จำกัด ไว้ที่ชุดบัญชีที่กำหนด ใน Windows XP SP2, Windows Server 2003 และสูงกว่าการอนุญาตการเปิดใช้งานถูก จำกัด อย่างมาก คุณควรใช้สแน็ปอิน MMC ของบริการเพื่อตรวจสอบวัตถุ COM เฉพาะของคุณและดูสิทธิ์การเปิดใช้งาน หากคุณไม่ได้เข้าถึงอะไรบนเครือข่ายเนื่องจากบัญชีเครื่องคุณควรพิจารณาใช้Local Serviceอย่างจริงจัง(ไม่ใช่ Local Local ซึ่งเป็นระบบปฏิบัติการ)
ใน Windows Server 2003 คุณไม่สามารถเรียกใช้งานที่กำหนดเป็น
NT_AUTHORITY\LocalService
(aka บัญชี Local Service) หรือ
NT AUTHORITY\NetworkService
(aka บัญชีบริการเครือข่าย)
เพิ่มความสามารถนั้นด้วย Task Scheduler 2.0 เท่านั้นซึ่งมีอยู่ใน Windows Vista / Windows Server 2008 และใหม่กว่าเท่านั้น
บริการที่ทำงานตามที่NetworkService
แสดงข้อมูลรับรองเครื่องบนเครือข่าย ซึ่งหมายความว่าหากคอมพิวเตอร์ของคุณถูกเรียกว่าmango
, มันจะนำเสนอเป็นบัญชีเครื่อง MANGO$
: