การแจงนับตามการเข้าถึง (ABE) อนุญาตให้ซ่อนวัตถุ (ไฟล์และโฟลเดอร์) จากผู้ใช้ที่ไม่มีสิทธิ์ NTFS (อ่านหรือแสดงรายการ) ในโฟลเดอร์แชร์เครือข่ายเพื่อเข้าถึง ดังนั้น คุณสามารถให้การรักษาความลับเพิ่มเติมของข้อมูลที่เก็บไว้ในโฟลเดอร์ที่ใช้ร่วมกัน (เนื่องจากการซ่อนโครงสร้างและชื่อของโฟลเดอร์และไฟล์) ปรับปรุงการใช้งานเนื่องจากผู้ใช้จะไม่เห็นข้อมูลแปลก ๆ (พวกเขาไม่สามารถเข้าถึงได้) และอะไร ที่สำคัญกว่านั้น บันทึกผู้ดูแลระบบจากคำถามคงที่ของผู้ใช้ “ทำไมฉันเข้าถึงโฟลเดอร์นี้ไม่ได้!!!” . ลองพิจารณาเทคโนโลยีนี้ ลักษณะเฉพาะของการกำหนดค่า และการใช้ ABE ใน Windows รุ่นต่างๆ โดยละเอียด
การเข้าถึงโฟลเดอร์ที่แชร์ทำงานอย่างไรใน Windows
ข้อเสียอย่างหนึ่งของเทคโนโลยีโฟลเดอร์แชร์เครือข่ายใน Windows คือข้อเท็จจริงที่ว่าโดยค่าเริ่มต้น ผู้ใช้ทุกคนสามารถเห็นโครงสร้างและรายการไฟล์และไดเรกทอรีทั้งหมดในโฟลเดอร์ดังกล่าวเป็นอย่างน้อย รวมถึงไม่มีสิทธิ์เข้าถึง NTFS ( เมื่อพยายามเปิดไฟล์หรือโฟลเดอร์ดังกล่าว ผู้ใช้ได้รับข้อผิดพลาด “Access Denied” ). ทำไมไม่ซ่อนไฟล์และโฟลเดอร์เหล่านั้นจากผู้ใช้ที่ไม่มีสิทธิ์เข้าถึง การแจงนับตามการเข้าถึงสามารถช่วยได้ เมื่อเปิดใช้งาน ABE ในโฟลเดอร์ที่ใช้ร่วมกัน คุณจะมั่นใจได้ว่าผู้ใช้ต่างๆ จะมองเห็นรายการโฟลเดอร์และไฟล์ต่างๆ ในการแชร์เครือข่ายเดียวกันโดยพิจารณาจากสิทธิ์การเข้าถึงของผู้ใช้แต่ละราย (ACL)
การโต้ตอบระหว่างไคลเอนต์และเซิร์ฟเวอร์เกิดขึ้นเมื่อเข้าถึงโฟลเดอร์ที่แชร์ผ่าน SMB อย่างไร
- ไคลเอ็นต์ร้องขอให้เซิร์ฟเวอร์เข้าถึงไดเร็กทอรีในโฟลเดอร์แชร์ของเครือข่าย
- บริการ LanmanServer บนเซิร์ฟเวอร์จะตรวจสอบการอนุญาตของผู้ใช้ในการเข้าถึงโฟลเดอร์นี้
- หากอนุญาตให้เข้าถึงได้ (สิทธิ์ NTFS:แสดงรายการเนื้อหา อ่านหรือเขียน) ผู้ใช้จะเห็นเนื้อหาไดเรกทอรี
- จากนั้นผู้ใช้ร้องขอการเข้าถึงไฟล์หรือโฟลเดอร์ย่อยในลักษณะเดียวกัน (คุณสามารถดูได้ว่าใครเปิดไฟล์เฉพาะในโฟลเดอร์เครือข่ายเช่นนี้)
- หากการเข้าถึงถูกปฏิเสธ ผู้ใช้จะได้รับแจ้งตามนั้น
ตามรูปแบบนี้ เป็นที่ชัดเจนว่าเซิร์ฟเวอร์จะแสดงเนื้อหาทั้งหมดของโฟลเดอร์ให้ผู้ใช้เห็นก่อน และการอนุญาต NTFS จะถูกตรวจสอบก็ต่อเมื่อผู้ใช้พยายามเปิดไฟล์หรือโฟลเดอร์เฉพาะ
การแจงนับตามการเข้าถึง (ABE ) อนุญาตให้ตรวจสอบสิทธิ์การเข้าถึงบนวัตถุระบบไฟล์ก่อนที่ผู้ใช้จะได้รับรายการเนื้อหาของโฟลเดอร์ ดังนั้น รายการสุดท้ายจึงรวมเฉพาะวัตถุที่ผู้ใช้มีสิทธิ์เข้าถึง NTFS (อย่างน้อยสิทธิ์แบบอ่านอย่างเดียว) และทรัพยากรที่ไม่สามารถเข้าถึงได้ทั้งหมดจะไม่แสดง (ซ่อนไว้)
หมายความว่าผู้ใช้จากแผนกหนึ่ง (เช่น คลังสินค้า) จะเห็นรายการไฟล์และโฟลเดอร์หนึ่งรายการในโฟลเดอร์ที่ใช้ร่วมกัน (\\filesrv1\docs) อย่างที่คุณเห็น มีเพียงสองโฟลเดอร์เท่านั้นที่จะแสดงสำหรับผู้ใช้:สาธารณะและคลังสินค้า
และสำหรับผู้ใช้จากแผนกอื่น เช่น ก. แผนกไอที (ซึ่งรวมอยู่ในกลุ่มความปลอดภัยของ Windows อื่น) จะแสดงรายการโฟลเดอร์ย่อยที่แตกต่างกัน นอกจากไดเร็กทอรีสาธารณะและไดเร็กทอรีแล้ว ผู้ใช้รายนี้ยังเห็นไดเร็กทอรีอีก 5 ไดเร็กทอรีในโฟลเดอร์เครือข่ายเดียวกัน
ข้อเสียเปรียบหลักของการใช้ ABE บนไฟล์เซิร์ฟเวอร์ Windows คือ โหลดเพิ่มเติมบนเซิร์ฟเวอร์ . มีความโดดเด่นเป็นพิเศษในเซิร์ฟเวอร์ไฟล์ที่มีภาระงานสูง ยิ่งมีอ็อบเจ็กต์ในไดเร็กทอรีที่ดูมากขึ้น และยิ่งมีผู้ใช้เปิดไฟล์บนไดเร็กทอรีมากเท่าใด ความล่าช้าก็จะยิ่งนานขึ้นเท่านั้น อ้างอิงจาก Microsoft หากมี 15,000 ออบเจ็กต์ (ไฟล์และไดเร็กทอรี) ในโฟลเดอร์ที่แสดง โฟลเดอร์จะเปิดช้าลง 1-3 วินาที นั่นคือเหตุผลที่แนะนำให้ใส่ใจอย่างมากกับการสร้างโครงสร้างโฟลเดอร์ย่อยที่ชัดเจนและเป็นลำดับชั้นเมื่อออกแบบโครงสร้างโฟลเดอร์ที่ใช้ร่วมกัน เพื่อไม่ให้เกิดความล่าช้าเมื่อเปิดโฟลเดอร์ไม่ชัดเจน
หมายเหตุ คุณควรเข้าใจว่าการแจงนับแบบใช้การเข้าถึงไม่ได้ซ่อนรายการโฟลเดอร์ที่แชร์บนเครือข่ายบนเซิร์ฟเวอร์ไฟล์ แต่จะซ่อนเฉพาะเนื้อหาเท่านั้น หากคุณต้องการซ่อนโฟลเดอร์ที่แชร์จากผู้ใช้ คุณต้องเพิ่มสัญลักษณ์ $ ที่ส่วนท้ายของชื่อที่แชร์คุณสามารถจัดการ ABE ได้จากพรอมต์คำสั่ง (abecmd.exe ยูทิลิตี้) จาก GUI, PowerShell หรือ API พิเศษ
ข้อจำกัดการแจงนับตามการเข้าถึง
การแจงนับตามการเข้าถึงบน Windows ไม่ทำงานในกรณีต่อไปนี้:
- หากคุณใช้ Windows XP หรือ Windows Server 2003 โดยไม่มี Service Pack 1 เป็นไฟล์เซิร์ฟเวอร์
- หากคุณกำลังดูไดเร็กทอรีในเครื่อง (โดยตรงจากเซิร์ฟเวอร์)
- สำหรับสมาชิกของกลุ่มผู้ดูแลระบบไฟล์เซิร์ฟเวอร์ในเครื่อง (พวกเขาจะเห็นรายการไฟล์ทั้งหมด)
การใช้ ABE บน Windows Server 2008/ 2008 R2
ใน Windows Server 2008/R2 เมื่อต้องการใช้ฟังก์ชัน Access Based Enumeration ไม่จำเป็นต้องติดตั้งส่วนประกอบเพิ่มเติม เนื่องจากคุณลักษณะการจัดการ ABE นั้นสร้างไว้แล้วใน Windows GUI ในการเปิดใช้งานการแจงนับตามการเข้าถึงสำหรับบางโฟลเดอร์ใน Windows Server 2008/2008 R2 ให้เปิดคอนโซลการจัดการ MMC การจัดการการแชร์และการจัดเก็บ (เริ่ม –> โปรแกรม –> เครื่องมือการดูแลระบบ -> การจัดการการแชร์และการจัดเก็บ) ไปที่คุณสมบัติของการแบ่งปันที่จำเป็น จากนั้นไปที่ ขั้นสูง การตั้งค่าและกาเครื่องหมายเปิดใช้งานการแจงนับตามการเข้าถึง .
การกำหนดค่าการแจงนับตามการเข้าถึงบน Windows Server 2012 R2/2016
การกำหนดค่า ABE ใน Windows Server 2012 R2 / 2016 นั้นง่ายมากเช่นกัน ในการเปิดใช้งาน ABE ใน Windows Server 2012 คุณต้องติดตั้ง บทบาท File and Storage Services . ก่อน แล้วไปที่คุณสมบัติแชร์ในตัวจัดการเซิร์ฟเวอร์
ใน การตั้งค่า ส่วน เลือกตัวเลือก เปิดใช้งานการแจงนับตามการเข้าถึง .
การนำการแจงนับตามการเข้าถึงไปใช้ใน Windows Server 2003
ใน Windows Server 2003 (ไม่รองรับในขณะนี้) ABE ได้รับการสนับสนุนโดยเริ่มจาก Service Pack 1 . ในการเปิดใช้งานการแจงนับตามการเข้าถึงใน Windows Server 2003 SP1 (หรือใหม่กว่า) คุณต้องดาวน์โหลดและติดตั้งแพ็คเกจตามลิงค์นี้ https://www.microsoft.com/en-us/download/details.aspx?id=17510 . ระหว่างการติดตั้ง คุณต้องระบุว่าจะเปิดใช้งาน ABE สำหรับโฟลเดอร์ที่ใช้ร่วมกันทั้งหมดบนเซิร์ฟเวอร์ของคุณหรือไม่หรือคุณจะกำหนดค่าด้วยตนเอง หากคุณเลือกตัวเลือกที่สอง แท็บใหม่ Access-based Enumeration จะปรากฏขึ้นในคุณสมบัติการแชร์เครือข่ายหลังการติดตั้ง
ในการเปิดใช้งาน ABE สำหรับบางโฟลเดอร์ ให้เลือกตัวเลือก เปิดใช้งานการแจงนับตามการเข้าถึงในโฟลเดอร์ที่ใช้ร่วมกันนี้ ในคุณสมบัติของมัน
สิ่งสำคัญที่ต้องระบุว่า Windows 2003 รองรับการแจงนับตามการเข้าถึงบน DFS แต่กำหนดค่าได้จากพรอมต์คำสั่งโดยใช้ cacls เท่านั้น .
การจัดการ ABE จากพรอมต์คำสั่ง
คุณสามารถจัดการการตั้งค่าการแจงนับตามการเข้าถึงได้จากพรอมต์คำสั่งโดยใช้ยูทิลิตี้ Abebcmd.exe เครื่องมือนี้เป็นส่วนหนึ่งของแพ็คเกจการแจงนับแบบใช้การเข้าถึงสำหรับ Windows Server 2003 SP1 (ดูลิงก์ด้านบน)
Abecmd.exe อนุญาตให้เปิดใช้งาน ABE สำหรับไดเร็กทอรีทั้งหมดในครั้งเดียวหรือเฉพาะบางไดเร็กทอรี คำสั่งถัดไปจะเปิดใช้งาน Access-Based Enumeration สำหรับการแชร์ทั้งหมด:
abecmd /enable /all
ไฟล์นี้มีไว้สำหรับบางโฟลเดอร์ (เช่น โฟลเดอร์แชร์บนเครือข่ายที่ชื่อ Docs):
abecmd /enable Docs
การจัดการการแจงนับตามการเข้าถึงโดยใช้ PowerShell
คุณสามารถใช้โมดูล SMBShare PowerShell (ติดตั้งโดยค่าเริ่มต้นใน Windows 10/8.1 และ Windows Server 2016/2012 R2) เพื่อจัดการการตั้งค่าของ Access Based Enumeration สำหรับโฟลเดอร์เฉพาะ มาแสดงรายการคุณสมบัติของโฟลเดอร์ที่ใช้ร่วมกัน:
Get-SmbShare Install|fl *
สังเกตค่าของ FolderEnumerationMode คุณลักษณะ. ในกรณีของเรา ค่าของมันคือ ไม่จำกัด . ซึ่งหมายความว่า ABE ถูกปิดใช้งานสำหรับโฟลเดอร์นี้
คุณสามารถตรวจสอบสถานะของ ABE สำหรับโฟลเดอร์ที่ใช้ร่วมกันทั้งหมดของเซิร์ฟเวอร์:
Get-SmbShare | Select-Object Name,FolderEnumerationMode
วิธีเปิดใช้งาน ABE สำหรับโฟลเดอร์เฉพาะ:
Get-SmbShare Install | Set-SmbShare -FolderEnumerationMode AccessBased
คุณสามารถเปิดใช้งานการแจงนับตามการเข้าถึงสำหรับโฟลเดอร์เครือข่ายที่เผยแพร่ทั้งหมด (รวมถึงการแชร์สำหรับผู้ดูแลระบบ ADMIN$, C$, E$ , IPC$,…) โดยเรียกใช้คำสั่ง:
Get-SmbShare | Set-SmbShare -FolderEnumerationMode AccessBased
หากต้องการปิดใช้งาน ABE ให้ใช้คำสั่ง:
Get-SmbShare Install | Set-SmbShare -FolderEnumerationMode Unrestricted
การแจงนับตามการเข้าถึงใน Windows 10 / 8.1 / 7
ผู้ใช้จำนวนมาก โดยเฉพาะอย่างยิ่งในบ้านหรือเครือข่าย SOHO ต้องการใช้คุณลักษณะการแจงนับที่เข้าถึงได้ ปัญหาคือระบบปฏิบัติการไคลเอ็นต์ของ Microsoft ไม่มีทั้งอินเทอร์เฟซแบบกราฟิกหรือคำสั่งเพื่อจัดการการแจงนับที่เข้าถึงได้
ใน Windows 10 (เซิร์ฟเวอร์ 2016) และ Windows 8.1 (เซิร์ฟเวอร์ 2012R2) คุณสามารถใช้ PowerShell เพื่อจัดการการแจงนับแบบใช้การเข้าถึงได้ (ดูหัวข้อด้านบน) ใน Windows เวอร์ชันเก่า คุณต้องติดตั้ง PowerShell เวอร์ชันล่าสุด (>=5.0) หรือใช้ยูทิลิตี้ abecmd.exe จากแพ็คเกจ Windows Server 2003 จึงจะทำงานได้ดีบนระบบปฏิบัติการไคลเอ็นต์ เนื่องจาก Windows Server 2003 Access-based Enumeration package ไม่ได้ติดตั้งบน Windows 10, 8.1 หรือ 7 คุณต้องติดตั้งบน Windows Server 2003 ก่อน แล้วจึงคัดลอกจากไดเร็กทอรี C:\windows\system32 ไปยังโฟลเดอร์เดียวกันบน ลูกค้า. หลังจากนั้น คุณสามารถเปิดใช้งาน ABE ตามคำสั่งที่อธิบายไว้ข้างต้น
หมายเหตุ ในสภาพแวดล้อมขององค์กร ABE ผสมผสานอย่างลงตัวกับโฟลเดอร์ DFS โดยการซ่อนโฟลเดอร์จากผู้ใช้และให้โครงสร้างที่สะดวกยิ่งขึ้นของโครงสร้างโฟลเดอร์สาธารณะ คุณสามารถเปิดใช้งาน ABE ใน DFS โดยใช้ DFS Management หรือ dfsutil.exe:dfsutil property abde enable \\namespace_root
นอกจากนี้ คุณสามารถเปิดใช้งาน ABE บนคอมพิวเตอร์ในโดเมน AD โดยใช้ GPO ซึ่งสามารถทำได้โดยใช้ GPP ในส่วน:การกำหนดค่าคอมพิวเตอร์ -> ค่ากำหนด -> การตั้งค่า Windows -> การแชร์เครือข่าย )
ในคุณสมบัติของโฟลเดอร์เครือข่ายจะมีการแจงนับตามการเข้าถึง ตัวเลือก หากคุณเปลี่ยนค่าเป็น เปิดใช้งาน , โหมด ABE จะเปิดใช้งานสำหรับโฟลเดอร์ที่ใช้ร่วมกันทั้งหมดที่สร้างโดยใช้ GPO นี้