การดูแลบัญชีในโดเมน Active Directory โดเมน Active Directory - คืออะไรด้วยคำง่ายๆ คำอธิบาย และบทวิจารณ์

17.03.2014 ดาร์เรน มาร์-เอเลีย

เมื่อ Windows PowerShell เปิดตัวครั้งแรก หลายคนถามว่าสามารถจัดการได้หรือไม่ ไดเรกทอรีที่ใช้งานอยู่(AD) โดยใช้ PowerShell ในเวลานั้น คำตอบของ Microsoft ไม่ใช่สิ่งที่ผู้ดูแลระบบส่วนใหญ่อยากได้ยิน PowerShell มี "ตัวเร่งความเร็วประเภท" ของ Active Directory Service Interfaces (ADSI) ในตัวสำหรับการเข้าถึงออบเจ็กต์ AD แต่ผู้ใช้ส่วนใหญ่ต้องทราบวิธีใช้ PowerShell เพื่อดำเนินงานการดูแลระบบ AD ด้วยตนเอง การเปลี่ยนแปลงที่สำคัญเกิดขึ้นกับการเปิดตัว วินโดวส์เซิร์ฟเวอร์ 2008 R2 ซึ่งเปิดตัวโมดูล PowerShell สำหรับ Active Directory โมดูล AD ประกอบด้วยชุดคำสั่งสำหรับจัดการ AD รวมถึงผู้ให้บริการ AD ที่ช่วยให้คุณสามารถนำทาง AD ได้เหมือนกับไดรฟ์สัญลักษณ์ ในบทความนี้ ฉันจะแสดงวิธีการติดตั้งโมดูล AD และอธิบายการทำงานของโมดูลโดยละเอียด

เมื่อ Windows PowerShell เปิดตัวครั้งแรก หลายคนถามว่าเป็นไปได้หรือไม่ที่จะจัดการ Active Directory (AD) โดยใช้ PowerShell ในเวลานั้น คำตอบของ Microsoft ไม่ใช่สิ่งที่ผู้ดูแลระบบส่วนใหญ่อยากได้ยิน PowerShell มี "ตัวเร่งความเร็วประเภท" ของ Active Directory Service Interfaces (ADSI) ในตัวสำหรับการเข้าถึงออบเจ็กต์ AD แต่ผู้ใช้ส่วนใหญ่ต้องทราบวิธีใช้ PowerShell เพื่อดำเนินงานการดูแลระบบ AD ด้วยตนเอง เมื่อเวลาผ่านไป Quest Software ได้จัดเตรียมชุดคำสั่งฟรีสำหรับงานดูแลระบบ AD รวมถึงการสร้าง การแก้ไข และการลบวัตถุ AD และการค้นหาวัตถุใน AD นี่เป็นสถานะของการจัดการ PowerShell และ AD มาเป็นเวลานาน

การเปลี่ยนแปลงที่สำคัญเกิดขึ้นกับการเปิดตัว Windows Server 2008 R2 ซึ่งเปิดตัวโมดูล PowerShell สำหรับ Active Directory โมดูล AD ประกอบด้วยชุดคำสั่งสำหรับจัดการ AD รวมถึงผู้ให้บริการ AD ที่ช่วยให้คุณสามารถนำทาง AD ได้เหมือนกับไดรฟ์สัญลักษณ์ ในบทความนี้ ฉันจะแสดงวิธีการติดตั้งโมดูล AD และอธิบายการทำงานของโมดูลโดยละเอียด

การติดตั้งโมดูล Active Directory

ไม่เหมือนกับเครื่องมือก่อนหน้านี้ที่ใช้ LDAP เพื่อสื่อสารกับ AD โมดูล AD ใช้โปรโตคอล Active Directory Web Services (ADWS) เพื่อสื่อสารกับตัวควบคุมโดเมน AD (DC) โปรโตคอลเหล่านี้มีการอธิบายรายละเอียดไว้ในบล็อก MSDN "ภาพรวมบริการเว็บ Active Directory" แต่พอเพียงที่จะทราบว่าคำสั่ง PowerShell ในโมดูล AD และ Active Directory Administrative Center (ADAC) ใช้ ADWS เพื่อสื่อสารและดึงข้อมูลจาก AD .

เมื่อคุณติดตั้งตัวควบคุมโดเมน Windows Server 2012 หรือ Server 2008 R2 ในโดเมน AD โพรโทคอล ADWS จะถูกติดตั้งและทำงานตามค่าเริ่มต้นในแต่ละรายการ หากโดเมนของคุณประกอบด้วยตัวควบคุมโดเมน Windows Server 2008 หรือ Windows Server 2003 ทั้งหมด คุณต้องติดตั้ง ADWS แยกต่างหาก Microsoft จัดให้มีแพ็คเกจบริการเกตเวย์การจัดการไดเรกทอรีที่ใช้งานอยู่โดยไม่มีค่าใช้จ่ายสำหรับวัตถุประสงค์นี้ หากคุณติดตั้งแพคเกจบนตัวควบคุมโดเมน AD Server 2008 หรือ Server 2003 อย่างน้อยหนึ่งตัว คุณสามารถใช้โมดูล AD สำหรับ PowerShell พร้อมกับ ADAC

โมดูล AD นั้นได้รับการติดตั้งตามค่าเริ่มต้นบน DC ใด ๆ ที่ใช้ระบบปฏิบัติการ Server 2012 หรือ Server 2008 R2 บน คอมพิวเตอร์ที่ใช้วินโดวส์ Windows 7 เวอร์ชัน 8 และ Windows 7 (หรือคอมพิวเตอร์เครื่องอื่นที่ไม่ใช่ DC ที่ใช้ Server 2012 หรือ Server 2008 R2) คุณต้องติดตั้ง Remote Server Administration Tools จาก Microsoft Download Center

ไม่ว่าจะติดตั้งเครื่องมือการดูแลระบบเซิร์ฟเวอร์ระยะไกลบนคอมพิวเตอร์ของคุณล่วงหน้าหรือแยกกัน ขั้นตอนต่อไปคือการเปิดส่วนเพิ่ม/เอาโปรแกรมออกในแผงควบคุม และเลือกเปิดหรือปิดคุณสมบัติ Windows จากเมนูทางด้านซ้าย . เลื่อนลงกล่องโต้ตอบคุณลักษณะของ Windows ไปที่ส่วนเครื่องมือการดูแลเซิร์ฟเวอร์ระยะไกล ค้นหากล่องกาเครื่องหมาย Active Directory Module สำหรับ Windows PowerShell ในโฟลเดอร์ \Remote Server Administration Tools\Role Administration Tools\AD DS และ AD LDS Tools ดังรูปที่ 1 แสดง เลือกช่องทำเครื่องหมายแล้วคลิก ตกลง เพื่อติดตั้งโมดูล

ตอนนี้คุณควรเห็นทางลัดสำหรับ Active Directory Module สำหรับ Windows PowerShell ในส่วนเครื่องมือการดูแลระบบของเมนูเริ่ม คลิกทางลัดนี้เพื่อเปิด PowerShell โดยโหลดโมดูล AD แล้ว หากคุณทำงานใน PowerShell อยู่แล้ว และเพียงต้องการโหลดโมดูลเพื่อให้พร้อมใช้งาน คุณสามารถป้อนคำสั่งต่อไปนี้เพื่อเข้าถึงคำสั่ง AD และ AD Provider:

นำเข้าโมดูล ActiveDirectory

ตอนนี้เรามาดูวิธีการนำทาง AD โดยใช้ AD Provider

การใช้ผู้ให้บริการ Active Directory

PowerShell นำแนวคิดของไดรฟ์ PowerShell ไปใช้ ซึ่งฉันจะเรียกง่ายๆ ว่าไดรฟ์ PS พูดง่ายๆ ก็คือ ไดรฟ์ PS เป็นตัวแทนของทรัพยากร เช่น ระบบไฟล์ที่นำทางได้ซึ่งประกอบด้วยโฟลเดอร์และรายการใบไม้ ไม่ใช่ทุกทรัพยากรที่สามารถคิดเช่นนี้ได้ แต่ทรัพยากรจำนวนมาก (รวมถึง AD และรีจิสทรี) เหมาะสมกับโมเดลนี้ โมดูล AD มีผู้ให้บริการสำหรับดิสก์ PS AD ดังนั้นคุณจึงสามารถนำทางและเปลี่ยน AD ราวกับว่าเป็นระบบไฟล์ได้

จะนำทาง AD โดยใช้ AD Provider ได้อย่างไร นี่ถือว่า PowerShell เปิดอยู่และโหลดโมดูล AD แล้ว ในกรณีนี้ ขั้นตอนแรกคือการรันคำสั่ง Set-Location ซึ่งมีนามแฝงหลายชื่อ รวมถึง sl และ cd:

ตั้งค่าที่ตั้ง AD:

คำสั่งนี้จะเปลี่ยนตำแหน่งการทำงานปัจจุบันของไดรฟ์ PS AD ด้วยเหตุนี้ พรอมต์ PowerShell จะแสดง AD:\ แทน C:\ จากนั้น หากต้องการดูรายการในไดรฟ์ PS AD คุณสามารถใช้คำสั่ง Get-ChildItem พร้อมกับนามแฝง dir:

รับ ChildItem

รูปที่ 2 แสดงตัวอย่างผลลัพธ์บนคอมพิวเตอร์ของฉัน

ดังที่เราเห็น คำสั่งส่งคืนรายการพาร์ติชันโดเมนที่มีอยู่ทั้งหมด สิ่งที่น่าสนใจที่สุดในความคิดของฉันคือส่วนโดเมนที่เรียกว่า cpandl ซึ่งมีชื่อผู้ใช้และคอมพิวเตอร์ หากต้องการเปลี่ยนโดเมนนี้ เพียงป้อนคำสั่ง:

ตั้งค่าตำแหน่ง "dc=cpandl,dc=com"

โปรดทราบว่าคำสั่ง Set-Location ใช้กับชื่อเฉพาะ (DN) ของโดเมน AD ของฉัน สิ่งนี้จำเป็นสำหรับการนำทางที่ถูกต้อง เมื่อคุณได้นำทางไปยังไดเร็กทอรีโดเมนของคุณ (ตามที่ระบุโดยพรอมต์ AD:\dc=cpandl,dc=com ใน PowerShell) คุณสามารถใช้คำสั่ง Get-ChildItem เพื่อดูโครงสร้าง AD ระดับบนสุด (รูปที่ 3)


รูปที่ 3: การดูระดับบนสุดของลำดับชั้น AD

หากคุณต้องการดูผู้ใช้ในหน่วยองค์กร SDM (OU) คุณต้องป้อนสิ่งต่อไปนี้เพื่อไปที่ OU นั้น

ตั้งค่าตำแหน่ง "OU=SDM"

บรรทัดคำสั่ง PowerShell จะมีลักษณะดังนี้ AD:\ou=SDM,dc=cpandl,dc=com บน ที่เวทีนี้คุณสามารถใช้คำสั่ง Get-ChildItem เพื่อดูออบเจ็กต์ผู้ใช้ทั้งหมดใน OU นี้ หากฉันต้องการเปลี่ยนคุณสมบัติ Description บนออบเจ็กต์ผู้ใช้ที่แสดงถึงบัญชีผู้ใช้ Darren Mar-Elia ของฉัน มีทีมสำหรับเรื่องนั้น! คำสั่ง Set-ItemProperty ช่วยให้คุณสามารถเปลี่ยนคุณสมบัติบนวัตถุ AD ได้ หากคุณต้องการเปลี่ยนคำอธิบายบัญชีผู้ใช้บน Chief Techie คุณควรรันคำสั่ง:

Set-ItemProperty -Path ".\CN=Darren Mar-Elia" ` -ชื่อ "คำอธิบาย" -ค่า "Chief Techie"

ดังที่เราเห็นพารามิเตอร์ –Path ถูกใช้ที่นี่เพื่อระบุบัญชีผู้ใช้ของฉันในไดเร็กทอรีปัจจุบัน ฉันยังใช้พารามิเตอร์ -Name เพื่อระบุว่าจำเป็นต้องเปลี่ยนคุณสมบัติ Description และใช้พารามิเตอร์ –Value เพื่อระบุคำอธิบายของ Chief Techie

โปรดทราบว่าหากคุณต้องการค้นหาออบเจ็กต์ทั้งหมดที่มีค่าคุณสมบัติเฉพาะ คุณสามารถใช้ Get-ItemProperty หากคุณต้องการรับการอ้างอิงถึงออบเจ็กต์ AD ให้ใช้ Get-Item

อย่างที่คุณเห็น การทำงานกับ AD ในลักษณะนี้ค่อนข้างง่าย กลไกนี้แทบจะไม่เหมาะสำหรับการเปลี่ยนแปลงจำนวนมาก แต่สะดวกสำหรับการทำงานกับ AD เป็นระบบไฟล์ อย่างไรก็ตาม ตามที่ฉันค้นพบ ผู้ดูแลระบบส่วนใหญ่ใช้คำสั่งแทนไดรฟ์ PS AD เพื่อจัดการ AD มาดูกันว่าคำสั่งเหล่านี้ทำงานอย่างไร

การใช้คำสั่ง Active Directory

โมดูล AD ที่มาพร้อมกับ Windows 7 มี 76 คำสั่งสำหรับจัดการ AD สามารถใช้งานได้เกือบทุกวัตถุประสงค์ รวมถึงการค้นหาออบเจ็กต์ AD การสร้างและการลบออบเจ็กต์ AD และการจัดการข้อมูลการกำหนดค่า AD (เช่น โหมดฟอเรสต์และนโยบายรหัสผ่านแบบละเอียด) โดยทั่วไปคำสั่งจะถูกจัดกลุ่มตามคำกริยา เช่น Add-, Remove-, Get- และ Set- โปรดทราบว่าไม่ใช่ทุกคำสั่ง Get- จะมีคำสั่ง Set- ที่สอดคล้องกันและในทางกลับกัน ดังนั้นบางครั้งคุณจึงต้องใช้ความพยายามในการค้นหา คำสั่งที่ถูกต้องสำหรับงาน ตัวอย่างเช่น คุณสามารถตั้งค่าระดับการทำงานของฟอเรสต์ AD ได้โดยใช้ Set-ADForestMode แต่หากต้องการค้นหาระดับการทำงานของฟอเรสต์ปัจจุบัน คุณต้องใช้คำสั่ง Get-ADForest และดูที่คุณสมบัติ ForestMode บนวัตถุที่ส่งคืน

มาดูงานทั่วไปบางอย่างที่สามารถทำได้โดยใช้คำสั่ง AD โดยเฉพาะ เราจะแสดงวิธีการเพิ่มบัญชีผู้ใช้ จัดการความเป็นสมาชิกกลุ่ม รีเซ็ตรหัสผ่านบัญชีผู้ใช้ และค้นหาออบเจ็กต์ AD

การเพิ่มบัญชีผู้ใช้

คำสั่ง New-ADUser มอบวิธีง่ายๆ ในการเพิ่มบัญชีผู้ใช้ใน AD หากคุณต้องการเพิ่มบัญชีผู้ใช้ใหม่ชื่อ Bill Smith ไปยังหน่วยองค์กร SDM ในกรณีที่ง่ายที่สุด คุณสามารถสร้างบัญชีผู้ใช้ใหม่ได้โดยใช้คำสั่ง:

ผู้ใช้โฆษณาใหม่ - ชื่อ "Bill Smith" -SamAccountName "bsmith" ` -GivenName "Bill" -นามสกุล "Smith" ` -DisplayName "Bill Smith" -Path "OU=SDM,DC=cpandl,DC=com"

คำสั่งนี้ป้อนข้อมูลพื้นฐานเกี่ยวกับบัญชีผู้ใช้ โดยเฉพาะอย่างยิ่ง พารามิเตอร์ -SamAccountName ใช้เพื่อระบุชื่อของบัญชี SAM ที่จำเป็นในการสร้างออบเจ็กต์ผู้ใช้ นอกจากนี้ พารามิเตอร์ –Path ยังใช้เพื่อบอกคำสั่งว่าจะวางวัตถุไว้ที่ใด - ในกรณีนี้คือ SDM OU ในโดเมน cpandl.com นอกจากนี้ ชื่อของผู้ใช้ (พารามิเตอร์ -GivenName) นามสกุล (พารามิเตอร์ -Surname) และชื่อที่แสดง (พารามิเตอร์ -DisplayName) จะถูกระบุด้วย

การรันคำสั่งนี้จะสร้างบัญชีผู้ใช้ แต่มีปัญหาสองประการ ขั้นแรก บัญชีจะถูกปิดใช้งาน ประการที่สอง บัญชีจะไม่มีรหัสผ่านที่เกี่ยวข้อง ซึ่งจำเป็นสำหรับโดเมนส่วนใหญ่

เพื่อหลีกเลี่ยงการต้องเปิดใช้งานบัญชีและกำหนดรหัสผ่านแยกต่างหาก คุณสามารถแก้ไขคำสั่ง New-ADUser ได้ New-ADUser จะเปิดใช้งานบัญชีโดยอัตโนมัติหากคุณระบุพารามิเตอร์ -Enabled $true ในคำสั่ง การเปิดใช้งานต้องใช้รหัสผ่าน ดังนั้นคุณต้องระบุรหัสผ่านในคำสั่งด้วย

หากต้องการระบุรหัสผ่าน คุณสามารถใช้พารามิเตอร์ –AccountPassword อย่างไรก็ตาม คุณไม่สามารถป้อนรหัสผ่านในรูปแบบข้อความธรรมดาที่พร้อมท์คำสั่งได้ ตัวเลือกนี้กำหนดให้ป้อนรหัสผ่านในสตริงที่ปลอดภัย (นั่นคือ มีประเภทข้อมูล SecureString) มีสองวิธีในการแปลงรหัสผ่านเป็นสตริงที่ปลอดภัย และทั้งสองวิธีใช้ตัวแปร

วิธีแรกใช้คำสั่ง ConvertTo-SecureString ซึ่งจะแปลงสตริงข้อความธรรมดาเป็นสตริงที่ปลอดภัย ตัวอย่างเช่น หากคุณต้องการแปลงรหัสผ่าน P@ssw0rd12 เป็นสตริงที่มีการป้องกันและกำหนดให้กับตัวแปร $pwd คุณจะต้องรันคำสั่ง:

$pwd = ConvertTo-SecureString -string "P@ssw0rd12" ` -AsPlainText –บังคับ

นี่ไม่ใช่วิธีที่ปลอดภัยที่สุดในการกำหนดรหัสผ่าน เนื่องจากมีคนสามารถมองข้ามไหล่ของคุณได้เมื่อคุณป้อนคำสั่ง วิธีที่ปลอดภัยกว่าคือการให้พรอมต์คำสั่ง New-ADUser ใส่รหัสผ่านและซ่อนอักขระที่ป้อน ซึ่งสามารถทำได้โดยใช้คำสั่ง Read-Hostcmdlet พร้อมด้วยพารามิเตอร์ –AsSecureString:

$pwd = อ่านโฮสต์ -AsSecureString

หลังจากรันคำสั่งนี้เมื่อป้อนรหัสผ่านคุณจะเห็นสัญลักษณ์ "*" ที่คุ้นเคยบนหน้าจอ เมื่อเสร็จแล้ว ให้กดปุ่ม Enter

เมื่อรหัสผ่านถูกเก็บไว้ในตัวแปร $pwd คุณสามารถส่งต่อไปยังคำสั่ง New-ADUser ได้:

ผู้ใช้โฆษณาใหม่ -ชื่อ "Bill Smith"-SamAccountName"bsmith"` -GivenName"Bill"-นามสกุล"Smith"` -DisplayName"Bill Smith"` -Path"OU=SDM,DC=cpandl,DC=com"` - เปิดใช้งาน $true -AccountPassword $pwd แล้ว

ดังที่เราเห็น คำสั่งประกอบด้วยพารามิเตอร์ -Enabled และ –AccountPassword ซึ่งเปิดใช้งานบัญชีและกำหนดรหัสผ่านอย่างปลอดภัย

การสร้างบัญชีผู้ใช้ทีละบัญชีเป็นวิธีที่เรียบร้อย แต่บางครั้งคุณจำเป็นต้องสร้างหลายบัญชีพร้อมกัน PowerShell นั้นยอดเยี่ยมสำหรับจุดประสงค์นี้ ตัวอย่างเช่น หากคุณต้องการสร้างบัญชีผู้ใช้สามบัญชี คุณสามารถเตรียมไฟล์ค่าที่คั่นด้วยเครื่องหมายจุลภาค (CSV) ที่มีข้อมูลบัญชี จากนั้นใช้คำสั่ง Import-CSV เพื่อถ่ายโอนข้อมูลนั้นไปยัง New-ADUser

รูปที่ 4 แสดงไฟล์ CSV ชื่อ userlist.csv

โปรดทราบว่าในไฟล์นี้ ส่วนหัวของคอลัมน์สอดคล้องกับชื่อพารามิเตอร์ที่ให้ไว้ในคำสั่ง New-ADUser ก่อนหน้านี้ นี่เป็นการกระทำโดยตั้งใจ เมื่อข้อมูล CSV ถูกส่งไปยัง New-ADUser คำสั่งจะรับชื่อพารามิเตอร์เหล่านั้นจากไปป์ไลน์ PowerShell และไม่จำเป็นต้องระบุในคำสั่งเอง นี่คือคำสั่งที่ใช้สร้างบัญชีผู้ใช้สามบัญชี:

นำเข้า CSV -Path C:\data\userlist.csv | ผู้ใช้ ADUser ใหม่ - เปิดใช้งาน $true - รหัสผ่านบัญชี $pwd

อย่างที่คุณเห็น ผลลัพธ์ของคำสั่ง Import-CSV จะไปที่คำสั่ง New-ADUser ไปป์ไลน์รับรู้ว่าส่วนหัวคอลัมน์ในไฟล์ CSV เป็นชื่อพารามิเตอร์และแถวที่เหลือมีค่า ดังนั้นคุณเพียงแค่ระบุพารามิเตอร์ -Enabled และ –AccountPassword เท่านั้น นี่คือความสามารถในการลำเลียงที่ยอดเยี่ยม ช่วยให้คุณใช้ PowerShell ได้อย่างมีประสิทธิภาพมากขึ้นสำหรับงานอัตโนมัติประเภทนี้

การจัดการสมาชิกกลุ่ม

การเพิ่มบัญชีผู้ใช้และคอมพิวเตอร์เป็นงานการจัดการโฆษณาทั่วไป การใช้โมดูล AD นี้ค่อนข้างง่ายที่จะบรรลุผลสำเร็จ การใช้คำสั่ง Add-ADGroupMember คุณสามารถเพิ่มบัญชีตั้งแต่หนึ่งบัญชีขึ้นไปในกลุ่มได้ ตัวอย่างเช่น หากคุณต้องการเพิ่มผู้ใช้ใหม่สามคนในกลุ่มผู้ใช้ทางการตลาด วิธีที่ง่ายที่สุดคือใช้คำสั่ง:

Add-ADGroupMember -Identity»Marketing Users«` -สมาชิก jadams,thhumb,mtwain

ในคำสั่งนี้ พารามิเตอร์ -Identity ถูกใช้เพื่อจัดเตรียมชื่อกลุ่ม นอกจากนี้ พารามิเตอร์ -Members ยังใช้เพื่อระบุชื่อบัญชี SAM ของผู้ใช้อีกด้วย หากมีชื่อบัญชี SAM หลายชื่อ ควรแสดงรายการไว้ในไฟล์ที่คั่นด้วยเครื่องหมายจุลภาค

คุณสามารถรวมการดำเนินการของการสร้างสามบัญชีและเพิ่มลงในกลุ่มผู้ใช้การตลาดในคำสั่งเดียวเพื่อแก้ไขปัญหาในการดำเนินการเดียว อย่างไรก็ตาม คำสั่งAdd-ADGroupMemberไม่สนับสนุนการส่งผ่านชื่อสมาชิกกลุ่มไปป์ไลน์ ดังนั้น คุณต้องใช้คำสั่งAdd-ADPRincipalGroupMembershipถ้าคุณต้องการใช้ไปป์ไลน์ คำสั่งนี้สามารถยอมรับผู้ใช้ คอมพิวเตอร์ หรือกลุ่มวัตถุเป็นอินพุตจากไปป์ไลน์ และเพิ่มวัตถุเหล่านั้นไปยังกลุ่มที่ระบุ

คุณสามารถรวมการดำเนินการสร้างผู้ใช้เข้ากับการดำเนินการเพิ่มผู้ใช้ใหม่ในกลุ่ม Marketing Users ได้ในคำสั่งเดียวดังนี้:

นำเข้า CSV -Path C:\data\userlist.csv | ใหม่ ADUser -เปิดใช้งาน $true -AccountPassword $pass ` -PassThru | เพิ่ม-ADPrincipalGroupMembership ` -สมาชิกของ "ผู้ใช้การตลาด"

โปรดทราบว่าพารามิเตอร์ –PassThru ได้รับการเพิ่มในส่วน New-ADUser ของคำสั่งแล้ว พารามิเตอร์นี้บอกให้ New-ADUser ส่งวัตถุผู้ใช้ที่สร้างขึ้นไปยังไปป์ไลน์ ถ้าไม่ได้ระบุพารามิเตอร์นี้ คำสั่ง Add-ADPRincipalGroupMembership จะล้มเหลว

เป็นที่น่าสังเกตว่ามีเพียงพารามิเตอร์ -MemberOf เท่านั้นที่ใช้เพื่อระบุชื่อกลุ่มในส่วน Add-ADPrincipalGroupMembership ของคำสั่ง ไปป์ไลน์จะดูแลส่วนที่เหลือโดยการเพิ่มผู้ใช้ทั้งสามรายไปยังกลุ่มผู้ใช้ทางการตลาด

ดังนั้น เมื่อใช้คำสั่ง PowerShell เดียว ผู้ใช้ใหม่สามคนจึงถูกสร้างขึ้น พวกเขาถูกวางไว้ใน OU พวกเขาได้รับรหัสผ่าน และพวกเขาถูกเพิ่มเข้าไปในกลุ่มผู้ใช้การตลาด ตอนนี้เรามาดูงานบำรุงรักษา AD ทั่วไปอื่นๆ ที่สามารถทำให้เป็นอัตโนมัติได้โดยใช้ PowerShell และโมดูล AD

การรีเซ็ตรหัสผ่านบัญชีผู้ใช้

บางครั้งผู้ใช้จำเป็นต้องรีเซ็ตรหัสผ่านบัญชีของตน งานนี้สามารถทำให้เป็นอัตโนมัติได้อย่างง่ายดายโดยใช้คำสั่ง Set-ADAccountPassword โดยการเปลี่ยนหรือรีเซ็ตรหัสผ่านบัญชี หากต้องการเปลี่ยนรหัสผ่าน คุณต้องทราบรหัสผ่านเก่าและป้อนรหัสผ่านใหม่ หากต้องการรีเซ็ตรหัสผ่านของคุณ เพียงระบุรหัสผ่านใหม่ อย่างไรก็ตาม คุณต้องมีสิทธิ์ในการรีเซ็ตรหัสผ่านบนวัตถุผู้ใช้ใน AD เพื่อทำการรีเซ็ตรหัสผ่าน

เช่นเดียวกับพารามิเตอร์ -AccountPassword ของคำสั่ง New-ADUser คำสั่ง Set-ADAccountPassword จะใช้ชนิดข้อมูล SecureString สำหรับรหัสผ่าน ดังนั้น คุณต้องใช้วิธีใดวิธีหนึ่งเพื่อแปลงรหัสผ่านข้อความธรรมดาเป็นสตริงที่ปลอดภัย ตัวอย่างเช่น หากคุณต้องการรีเซ็ตรหัสผ่านสำหรับบัญชีผู้ใช้ Tom Thumb หลังจากจัดเก็บรหัสผ่านใหม่เป็นสตริงที่มีการป้องกันในตัวแปร $pass แล้ว คุณสามารถรันคำสั่งได้:

ตั้ง-ADAccountPassword -Identity»thumb«` -NewPassword $pass –Reset

ในคำสั่งนี้ ฉันใช้พารามิเตอร์ –Identity เพื่อกำหนดชื่อบัญชี SAM ให้กับบัญชีผู้ใช้ Tom Thumb ฉันยังป้อนพารามิเตอร์ -NewPassword ด้วยตัวแปร $pass เพื่อระบุรหัสผ่านใหม่ ในที่สุด พารามิเตอร์ –Reset จะถูกระบุเพื่อระบุว่ากำลังทำการรีเซ็ตแทนที่จะเปลี่ยนรหัสผ่าน

งานที่เป็นทางเลือกอื่น: สลับการตั้งค่าสถานะบัญชีผู้ใช้ Tom Thumb เพื่อบังคับให้เขาเปลี่ยนรหัสผ่านในครั้งต่อไปที่เขาเข้าสู่ระบบ นี่เป็นเทคนิคทั่วไปเมื่อคุณต้องการรีเซ็ตรหัสผ่านของผู้ใช้ งานนี้สามารถทำได้โดยใช้คำสั่ง Set-ADUser โดยตั้งค่าพารามิเตอร์ -ChangePasswordAtLogon เป็น $true:

ชุด ADUser - ข้อมูลประจำตัว thhumb - ChangePasswordAtLogon $true

คำถามเกิดขึ้นว่าทำไมไปป์ไลน์จึงไม่ถูกใช้เพื่อส่งเอาต์พุตของคำสั่ง Set-ADAccountPassword ไปยังคำสั่ง Set-ADUser เพื่อดำเนินการทั้งสองอย่างในคำสั่ง PowerShell เดียว ฉันลองวิธีนี้แล้ว มันใช้งานไม่ได้ อาจมีข้อจำกัดบางประการในคำสั่ง Set-ADAccountPassword ที่ป้องกันไม่ให้คำสั่งเดียวทำงานสำเร็จ ไม่ว่าในกรณีใด เพียงแค่สลับการตั้งค่าสถานะโดยใช้คำสั่ง Set-ADUser ดังที่แสดงด้านบนก็เพียงพอแล้ว

ค้นหาวัตถุ Active Directory

งาน AD ทั่วไปอีกงานหนึ่งคือการค้นหาออบเจ็กต์ AD ที่ตรงตามเกณฑ์ที่กำหนด ตัวอย่างเช่น คุณสามารถค้นหาคอมพิวเตอร์ทุกเครื่องที่ใช้ระบบปฏิบัติการ Windows รุ่นใดรุ่นหนึ่งได้ในโดเมน AD คำสั่ง Get-ADObject สะดวกที่สุดสำหรับการค้นหา LDAP ตัวอย่างเช่น หากต้องการค้นหาคอมพิวเตอร์ Server 2008 R2 ในโดเมน cpandl.com จะใช้คำสั่ง:

รับ-ADObject -LDAPFilter ` "(&(operatingSystem=Windows Server 2008 R2 Enterprise)` (objectClass=คอมพิวเตอร์))" -SearchBase"dc=cpandl,dc=com"` -SearchScope Subtree

คำสั่งนี้ใช้พารามิเตอร์สามตัวเพื่อดำเนินงาน: -LDAPFilter, -SearchBase และ -SearchScope พารามิเตอร์ -LDAPFilter รับเคียวรี LDAP มาตรฐานเป็นอินพุต ตัวอย่างนี้สอบถามวัตถุคอมพิวเตอร์ทั้งหมดที่มีแอตทริบิวต์ระบบปฏิบัติการที่ตั้งค่าเป็น Windows Server 2008 R2 Enterprise พารามิเตอร์ -SearchBase บอกคำสั่งว่าจะเริ่มค้นหาในลำดับชั้น AD ได้จากที่ไหน ในกรณีนี้ การค้นหาจะดำเนินการจากไดเร็กทอรีรากของโดเมน AD แต่การจำกัดการค้นหาให้อยู่ใน OU ที่เฉพาะเจาะจงนั้นทำได้ไม่ยาก พารามิเตอร์ –SearchScope จะบอกคำสั่งว่าจะรวบรวมข้อมูลคอนเทนเนอร์ทั้งหมดภายใต้ฐานการค้นหา โดยค้นหาอ็อบเจ็กต์ที่ระบุหรือไม่ ในกรณีนี้ พารามิเตอร์ Subtree ใช้เพื่อบังคับให้คำสั่งตรวจสอบคอนเทนเนอร์พื้นฐานทั้งหมด

เมื่อคุณรันคำสั่ง วัตถุที่ตรงกับเกณฑ์จะปรากฏขึ้น หรือคุณสามารถส่งต่อผลลัพธ์ไปยังคำสั่งอื่นเพื่อประมวลผลวัตถุที่พบได้

โปรดทราบว่าสำหรับการค้นหาขนาดใหญ่ จะมีประโยชน์ถ้าใช้พารามิเตอร์ –ResultPageSize เพื่อควบคุมวิธีการแบ่งหน้าผลลัพธ์การค้นหา โดยปกติแล้ว ฉันตั้งค่าพารามิเตอร์นี้เป็น 1,000 และคำสั่ง Get-ADObject จะส่งคืนออบเจ็กต์ครั้งละ 1,000 รายการ มิฉะนั้น คุณอาจไม่ได้รับผลลัพธ์ที่คาดหวัง เนื่องจากจำนวนของออบเจ็กต์ที่ส่งคืนเกินจำนวนสูงสุดที่อนุญาตตามนโยบายที่ตั้งไว้สำหรับคำขอค้นหาเดียว

คำสั่งค้นหาอื่นที่ Microsoft ให้มาคือ Search-ADAccount คำสั่งนี้มีประโยชน์อย่างยิ่งสำหรับการค้นหาด้วยเงื่อนไขที่กำหนดไว้ล่วงหน้าต่างๆ เช่น บัญชีที่ถูกปิดใช้งาน บัญชีที่มีรหัสผ่านหมดอายุ และบัญชีที่ถูกล็อค ดังนั้น คำสั่งต่อไปนี้จะค้นหาบัญชีผู้ใช้ทั้งหมดที่มีรหัสผ่านหมดอายุใน SDM OU:

ค้นหา-ADAccount -PasswordExpired -UsersOnly ` -SearchBase"OU=sdm,dc=cpandl,dc=com" -SearchScope OneLevel ค้นหา-ADAccount -PasswordExpired -UsersOnly ` -SearchBase"OU=sdm,dc=cpandl,dc=com" ` -SearchScope หนึ่งระดับ

คำสั่งนี้ใช้พารามิเตอร์ –PasswordExpired เพื่อระบุว่าจำเป็นต้องมีบัญชีที่มีรหัสผ่านหมดอายุ พารามิเตอร์ -UsersOnly ระบุว่า ควรค้นหาเฉพาะวัตถุผู้ใช้เท่านั้น (นั่นคือ วัตถุคอมพิวเตอร์ควรถูกแยกออก) เช่นเดียวกับในตัวอย่างก่อนหน้านี้ พารามิเตอร์ -SearchBase และ –SearchScope ใช้เพื่อระบุขอบเขตการค้นหา แต่ในกรณีนี้ ฉันใช้พารามิเตอร์ OneLevel เพื่อค้นหาเฉพาะ OU ที่ใกล้เคียงที่สุด (นั่นคือ ไม่รวมหน่วยองค์กรย่อย)

นี่เป็นเพียงพื้นผิวของโมดูล AD แต่ฉันหวังว่าคุณจะเข้าใจถึงความสามารถของมัน ตามที่ระบุไว้ข้างต้น มีคำสั่งมากกว่า 70 คำสั่งในโมดูล หัวข้อที่ไม่ครอบคลุมในบทความนี้ ได้แก่ การลบวัตถุโดยใช้คำสั่ง Remove- การกู้คืนวัตถุที่ถูกลบโดยใช้คำสั่ง Restore-ADObject และการลบคุณสมบัติ UAC บนวัตถุผู้ใช้โดยใช้คำสั่ง Set-ADAccountControl มีคำสั่งสำหรับงานการดูแลระบบ AD เกือบทุกประเภท



บทที่ 7 การดูแลระบบ Active Directory

กระบวนการดูแลระบบ Active Directory เกี่ยวข้องกับการจัดการ:

  • โดเมน Active Directory;
  • โครงสร้างไดเร็กทอรีโดเมน
  • วัตถุโดเมน (ผู้ใช้ ผู้ติดต่อ คอมพิวเตอร์ กลุ่ม เครื่องพิมพ์ ฯลฯ );
  • ไซต์และเครือข่าย Active Directory
  • การจำลองข้อมูล

งานทั้งหมดนี้แก้ไขได้โดยใช้คอนโซลการจัดการสามตัวที่ติดตั้งระหว่างการติดตั้ง Active Directory บนตัวควบคุมโดเมน:

  • Active Directory - โดเมนและความน่าเชื่อถือ
  • Active Directory - ผู้ใช้และคอมพิวเตอร์
  • Active Directory - ไซต์และบริการ

คอนโซลเหล่านี้สามารถติดตั้งบนคอมพิวเตอร์เครื่องอื่นในโดเมนโดยเป็นส่วนหนึ่งของแพ็คเกจยูทิลิตี้การดูแลระบบ

คำอธิบายของวัตถุ Active Directory

คอนโซลการจัดการ Active Directory ทั้งหมดใช้ชุดไอคอนชุดเดียวเพื่อแสดงวัตถุไดเรกทอรี ด้านล่างนี้คือออบเจ็กต์ Active Directory หลักทั้งหมดและไอคอนที่เกี่ยวข้อง ข้อมูลนี้จะช่วยให้คุณนำทาง Active Directory ได้ง่ายขึ้น

ไดเรกทอรีที่ใช้งานอยู่

แสดงถึง Active Directory โดยรวม แทบไม่เคยพบในเครื่องมือการจัดการเลย ยกเว้นหน้าต่างการค้นหาและการเลือกวัตถุ

หมายถึงโดเมน Windows ช่วยให้คุณจัดการการตั้งค่าโดเมนสากล

คอนเทนเนอร์, โฟลเดอร์

แสดงถึงวัตถุภาชนะที่เรียบง่าย ออบเจ็กต์ดังกล่าวสามารถสร้างได้โดยระบบปฏิบัติการเท่านั้น และโดยปกติจะถูกสร้างขึ้นระหว่างการติดตั้ง Active Directory

หน่วยองค์กร

เป็นตัวแทนของ OP คอนเทนเนอร์ออบเจ็กต์นี้ใช้เพื่อสร้างลำดับชั้นของคอนเทนเนอร์ที่มีออบเจ็กต์อื่น

ผู้ใช้

แสดงถึงบัญชีผู้ใช้ วัตถุประกอบด้วยแอตทริบิวต์จำนวนมากที่อธิบายผู้ใช้

แสดงถึงผู้ใช้ที่ไม่ใช่สมาชิกโดเมน ผู้ติดต่อใช้เพื่อจัดเก็บข้อมูลเกี่ยวกับผู้ใช้ภายนอกในไดเรกทอรี ไม่ใช่บัญชีและไม่อนุญาตให้ผู้ใช้ลงทะเบียนกับโดเมน

แสดงถึงกลุ่มผู้ใช้และโดยทั่วไปจะใช้เพื่อทำให้การจัดการสิทธิ์และสิทธิพิเศษง่ายขึ้น

คอมพิวเตอร์

หมายถึงคอมพิวเตอร์เครื่องเดียวบนเครือข่ายท้องถิ่น สำหรับคอมพิวเตอร์ที่ใช้ Windows NT, 2000 และ Windows รุ่นที่ใหม่กว่า นี่คือบัญชีคอมพิวเตอร์ วัตถุประกอบด้วยข้อมูลพื้นฐานเกี่ยวกับคอมพิวเตอร์และช่วยให้คุณสามารถจัดการได้

ตัวควบคุมโดเมน

หมายถึงตัวควบคุมโดเมน Windows เดียว ในผู้ใช้ Active Directory และคอมพิวเตอร์ ตัวควบคุมโดเมนจะแสดงไอคอนเดียวกันกับคอมพิวเตอร์ทั่วไป ไอคอนนี้ใช้เพื่อแสดงตัวควบคุมโดเมนในไซต์และบริการ Active Directory ช่วยให้คุณจัดการการตั้งค่าตัวควบคุมโดเมน

หมายถึงเครื่องพิมพ์เครือข่าย วัตถุคือลิงก์ไปยังเครื่องพิมพ์ที่ใช้ร่วมกัน คุณสามารถเพิ่มออบเจ็กต์ประเภทนี้ลงในแค็ตตาล็อกได้ด้วยตนเองหรือโดยอัตโนมัติ การเพิ่มด้วยตนเองสามารถทำได้สำหรับเครื่องพิมพ์ที่เชื่อมต่อกับคอมพิวเตอร์ที่ใช้เวอร์ชันเก่ากว่า Windows 2000 เท่านั้น

ทรัพยากรที่ใช้ร่วมกัน

แสดงถึงโฟลเดอร์ที่ใช้ร่วมกัน ออบเจ็กต์คือลิงก์ไปยังเครือข่ายที่ใช้ร่วมกันและไม่มีข้อมูลใดๆ

ตัวเลือกการออกใบอนุญาต

แสดงถึงการตั้งค่าใบอนุญาตไซต์สากล ช่วยให้คุณสามารถจัดการใบอนุญาตจากส่วนกลางได้ ผลิตภัณฑ์ซอฟต์แวร์และการจำลองแบบภายในไซต์

นโยบายโดเมน

แสดงถึงวัตถุนโยบายโดเมน ช่วยให้คุณกำหนดการตั้งค่านโยบายระดับโดเมน

นโยบายตัวควบคุมโดเมน

แสดงถึงวัตถุนโยบายตัวควบคุมโดเมน ช่วยให้คุณสามารถกำหนดการตั้งค่านโยบายสำหรับตัวควบคุมโดเมนทั้งหมด

นโยบายกลุ่ม

แสดงถึง GPO ที่กำหนดเอง ช่วยให้คุณจัดการการตั้งค่านโยบายสำหรับออบเจ็กต์ของคอนเทนเนอร์ที่ใช้นโยบาย

แสดงถึงไซต์ Active Directory เดียว ช่วยให้คุณสามารถจัดการพารามิเตอร์ได้ ประกอบด้วยลิงก์ไปยังวัตถุตัวควบคุมโดเมน ลิงก์ไซต์ การตั้งค่าไซต์

สารประกอบ

แสดงถึงการเชื่อมต่อระหว่างตัวควบคุมโดเมนภายในไซต์ ช่วยให้คุณจัดการการตั้งค่าโทโพโลยีและการจำลองระหว่างตัวควบคุมโดเมนภายในไซต์

ลิงค์เว็บไซต์

แสดงถึงการเชื่อมโยงเดียวระหว่างไซต์ ช่วยให้คุณจัดการโทโพโลยีและพารามิเตอร์ของการจำลองแบบระหว่างไซต์

การตั้งค่าไซต์

แสดงถึงวัตถุการกำหนดค่าไซต์หรือตัวควบคุมโดเมนในไซต์ ช่วยให้คุณสามารถจัดการการตั้งค่าการจำลองแบบสำหรับทั้งไซต์หรือการตั้งค่าวิธีที่ตัวควบคุมโดเมนโต้ตอบกับไซต์

แสดงถึงเครือข่ายย่อยเดียวที่เชื่อมโยงกับไซต์เฉพาะ ช่วยให้คุณระบุขอบเขตของเครือข่าย IP

ไอคอน

วัตถุ

คำอธิบาย

รีบูตเซิร์ฟเวอร์

ป้อนรหัสผ่านสำหรับโหมดการกู้คืนบริการไดเรกทอรี

ยืนยันตำแหน่งโฟลเดอร์สำหรับบันทึกไฟล์ AD

ยืนยันชื่อโดเมน NetBIOS

7. เลือกระดับความปลอดภัยสำหรับผู้ใช้และกลุ่ม:

· สิทธิ์ที่เข้ากันได้กับเซิร์ฟเวอร์ก่อน Windows 2000– หากโดเมนมีโปรแกรมหรือบริการที่ทำงานบนเซิร์ฟเวอร์ที่ใช้ Windows NT หรือคอมพิวเตอร์เป็นส่วนหนึ่งของโดเมนที่ใช้ Windows NT

· สิทธิ์ที่เข้ากันได้กับเซิร์ฟเวอร์ Windows 2000 และ Windows Server 2003 เท่านั้น– หากมีเพียงเซิร์ฟเวอร์ที่ใช้เซิร์ฟเวอร์ Windows 2000 และ Windows Server 2003 เท่านั้นที่ทำงานอยู่ในโดเมน

การดูแลระบบ Active Directory ใช้ชุดของสแน็ปอินการจัดการ Active Directory ประกอบด้วยอุปกรณ์ 4 ชิ้น คือ

1 ผู้ใช้ Active Directory และคอมพิวเตอร์ – ออกแบบมาเพื่อการจัดการผู้ใช้โดเมนและบัญชีคอมพิวเตอร์

2 โดเมน Active Directory และ Trusts - ใช้เพื่อสร้างความสัมพันธ์ที่เชื่อถือได้ระหว่างโดเมน

3 ไซต์และบริการ Active Directory (ไซต์และบริการ) - ออกแบบมาเพื่อจัดการไซต์และลิงก์ของไซต์

4 DNS – การดูแลระบบเซิร์ฟเวอร์ DNS ที่รวมอยู่ใน Active Directory

ผู้ใช้ Active Directory และคอมพิวเตอร์

บัญชีผู้ใช้ Active Directory และบัญชีคอมพิวเตอร์เป็นวัตถุทางกายภาพเช่นเดียวกับคอมพิวเตอร์หรือผู้ใช้ บัญชีผู้ใช้ยังสามารถใช้เป็นรายการบริการเฉพาะสำหรับบางแอปพลิเคชันได้

บัญชีผู้ใช้– ออบเจ็กต์ Active Directory ที่มีข้อมูลทั้งหมดที่ระบุผู้ใช้ในระบบปฏิบัติการ Windows ข้อมูลนี้ประกอบด้วย:

· ข้อมูลส่วนบุคคลของผู้ใช้ (ชื่อนามสกุล หมายเลขโทรศัพท์ อีเมล ที่อยู่ไปรษณีย์ ข้อมูลเกี่ยวกับองค์กร)

· การตั้งค่าบัญชี (ชื่อผู้ใช้และรหัสผ่านที่จำเป็นสำหรับการเข้าสู่ระบบของผู้ใช้ วันหมดอายุของบัญชี การจัดการรหัสผ่าน ตัวเลือกการเข้ารหัสและการรับรองความถูกต้อง)

· ชื่อกลุ่มที่ผู้ใช้เป็นสมาชิก

· โปรไฟล์ผู้ใช้ (ประกอบด้วยข้อมูลเกี่ยวกับการตั้งค่าเฉพาะของผู้ใช้ เช่น การตั้งค่าเดสก์ท็อป การเชื่อมต่อเครือข่ายถาวร และการตั้งค่าแอปพลิเคชัน)

· ข้อมูลอื่น ๆ (โปรไฟล์บริการเทอร์มินัล รีโมท, การจัดการเซสชั่น ฯลฯ)

บัญชีคอมพิวเตอร์- วัตถุ Active Directory ที่ระบุคอมพิวเตอร์ในโดเมนโดยไม่ซ้ำกัน บัญชีคอมพิวเตอร์สอดคล้องกับชื่อคอมพิวเตอร์ในโดเมน คอมพิวเตอร์ที่มีการเพิ่มบัญชีลงในโดเมนสามารถเข้าร่วมในการดำเนินงานเครือข่ายที่ใช้เนื้อหา Active Directory ได้ ตัวอย่างเช่น เวิร์กสเตชันที่เพิ่มลงในโดเมนสามารถจดจำบัญชีและกลุ่มที่มีอยู่ใน Active Directory ได้



@คอมพิวเตอร์ที่ใช้ Windows 95, Windows 98 และ Windows Me ไม่มีคุณสมบัติด้านความปลอดภัยเพิ่มเติม และไม่สามารถกำหนดบัญชีคอมพิวเตอร์ได้

กลุ่มคือกลุ่มบัญชีผู้ใช้และคอมพิวเตอร์ ผู้ติดต่อ และกลุ่มอื่นๆ ที่สามารถจัดการได้เป็นหน่วยเดียว ผู้ใช้และคอมพิวเตอร์ที่อยู่ในกลุ่มใดกลุ่มหนึ่งเรียกว่าสมาชิกของกลุ่ม กลุ่มใน Active Directory คือวัตถุไดเรกทอรีที่อยู่ภายในโดเมนและวัตถุคอนเทนเนอร์หน่วยองค์กร

กลุ่มใน Active Directory ช่วยให้คุณ:

· ลดความซับซ้อนของการดูแลระบบโดยการกำหนดสิทธิ์การแชร์ให้กับกลุ่มแทนที่จะเป็นผู้ใช้แต่ละราย ซึ่งจะทำให้สมาชิกทุกคนของกลุ่มนั้นสามารถเข้าถึงทรัพยากรได้อย่างเท่าเทียมกัน

· มอบหมายการบริหารงานโดยการกำหนดสิทธิ์ให้กับผู้ใช้ทั้งกลุ่มในคราวเดียวผ่าน นโยบายกลุ่มแล้วจึงเพิ่มสมาชิกที่จำเป็นเข้ากลุ่มซึ่งจะต้องมีสิทธิเช่นเดียวกับกลุ่ม

กลุ่มมีลักษณะตามขอบเขตและประเภท ขอบเขตของกลุ่มกำหนดช่วงที่กลุ่มนำไปใช้ภายในโดเมนหรือฟอเรสต์ มีขอบเขตที่แตกต่างกันสามขอบเขต: สากล สากล และโดเมนท้องถิ่น

· โดเมนท้องถิ่น (ฝังตัวในเครื่อง)– สมาชิกของกลุ่มภายในโดเมนสามารถรวมกลุ่มและบัญชีอื่นๆ จากโดเมน Windows Server 2003, Windows 2000 หรือ Windows NT และสามารถให้สิทธิ์ได้เฉพาะภายในโดเมนเท่านั้น

@ กลุ่มโลคัลโดเมนควรใช้เพื่อควบคุมการเข้าถึงทรัพยากรภายในโดเมนเดียวกัน

· ทั่วโลก– สมาชิกของกลุ่มที่มีขอบเขตทั่วโลกสามารถรวมกลุ่มและบัญชีอื่นๆ จากโดเมนที่กำหนดกลุ่มไว้เท่านั้น และสามารถรับสิทธิ์ในโดเมนใดก็ได้ในฟอเรสต์

@ แนะนำให้ใช้กลุ่มที่กำหนดขอบเขตทั่วโลกสำหรับการจัดการออบเจ็กต์ไดเร็กทอรีที่ต้องมีการบำรุงรักษารายวัน ซึ่งรวมถึงบัญชีผู้ใช้และคอมพิวเตอร์ เป็นต้น เนื่องจากกลุ่มที่กำหนดขอบเขตส่วนกลางไม่จำลองแบบภายนอกโดเมน บัญชีที่อยู่ในกลุ่มดังกล่าวสามารถเปลี่ยนแปลงได้บ่อยครั้งโดยไม่ก่อให้เกิดการรับส่งข้อมูลเพิ่มเติมที่เกี่ยวข้องกับการจำลองแบบไปยังแค็ตตาล็อกส่วนกลาง

· สากล- สมาชิกของกลุ่มที่มีขอบเขตสากลสามารถรวมกลุ่มและบัญชีอื่นๆ จากโดเมนใดๆ ในแผนผังโดเมนหรือฟอเรสต์ได้ และพวกเขาสามารถได้รับสิทธิ์ในโดเมนใดๆ ในแผนผังโดเมนหรือฟอเรสต์ได้

@ กำหนดขอบเขตสากลให้กับกลุ่มที่ขยายโดเมน ในการดำเนินการนี้ ให้เพิ่มบัญชีลงในกลุ่มที่มีขอบเขตทั่วโลก จากนั้นซ้อนกลุ่มเหล่านั้นเป็นกลุ่มที่มีขอบเขตสากล ด้วยแนวทางนี้ การเปลี่ยนแปลงสมาชิกภาพในกลุ่มที่กำหนดขอบเขตทั่วโลกจะไม่ส่งผลกระทบต่อกลุ่มที่อยู่ในขอบเขตสากล


ประเภทกลุ่มจะกำหนดว่ากลุ่มสามารถใช้เพื่อกำหนดสิทธิ์ให้กับทรัพยากรหรือเฉพาะรายชื่อการส่งอีเมลเท่านั้น

กลุ่มรักษาความปลอดภัย– ให้การควบคุมการเข้าถึงทรัพยากรเครือข่ายอย่างมีประสิทธิภาพ การใช้กลุ่มความปลอดภัยช่วยให้คุณทำสิ่งต่อไปนี้:

· กำหนดสิทธิ์ผู้ใช้ให้กับกลุ่มความปลอดภัยใน Active Directory. สิทธิ์ผู้ใช้ที่ตั้งค่าไว้สำหรับกลุ่มความปลอดภัยจะกำหนดว่าสมาชิกของกลุ่มนั้นสามารถทำอะไรได้บ้างภายในขอบเขตของโดเมน (หรือฟอเรสต์) สิทธิ์ผู้ใช้จะถูกตั้งค่าโดยอัตโนมัติสำหรับกลุ่มความปลอดภัยระหว่างการติดตั้ง Active Directory เพื่อช่วยผู้ดูแลระบบในการกำหนดบทบาทของผู้ใช้ที่เป็นผู้ดูแลระบบในโดเมน ตัวอย่างเช่น ผู้ใช้ที่เพิ่มในกลุ่มตัวดำเนินการสำรองข้อมูลใน Active Directory จะได้รับความสามารถในการสำรองและกู้คืนไฟล์และไดเรกทอรีบนตัวควบคุมโดเมนใดๆ ในโดเมน คุณสามารถกำหนดสิทธิ์ผู้ใช้ให้กับกลุ่มความปลอดภัยได้โดยใช้นโยบายกลุ่มเพื่อมอบหมายงานเฉพาะ ต้องใช้ความระมัดระวังเมื่อมอบหมายงานที่ได้รับมอบหมาย ผู้ใช้ที่ไม่มีประสบการณ์และมีสิทธิ์มากเกินไปในกลุ่มความปลอดภัยอาจทำให้เกิดความเสียหายร้ายแรงต่อเครือข่ายได้

· กำหนดสิทธิ์ทรัพยากรให้กับกลุ่มความปลอดภัย. ไม่ควรสับสนสิทธิ์กับสิทธิ์ของผู้ใช้ สิทธิ์ถูกกำหนดไว้สำหรับกลุ่มความปลอดภัยที่ใช้ทรัพยากรที่ใช้ร่วมกัน สิทธิ์กำหนดว่าใครสามารถเข้าถึงทรัพยากรที่กำหนดและระดับการเข้าถึง เช่น การควบคุมเต็มรูปแบบ สิทธิ์บางอย่างที่ตั้งค่าไว้บนออบเจ็กต์โดเมนจะถูกตั้งค่าเป็นระดับการเข้าถึงที่แตกต่างกันโดยอัตโนมัติสำหรับกลุ่มเริ่มต้น เช่น ผู้ดำเนินการบัญชีหรือผู้ดำเนินการโดเมน สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสิทธิ์ โปรดดูที่การควบคุมการเข้าถึงใน Active Directory

@กลุ่มความปลอดภัยจะแสดงอยู่ในตารางการควบคุมการเข้าถึงแบบเลือก ซึ่งกำหนดสิทธิ์ในทรัพยากรและออบเจ็กต์ ผู้ดูแลระบบควรกำหนดสิทธิ์สำหรับทรัพยากร (การแชร์ไฟล์ เครื่องพิมพ์ ฯลฯ) ให้กับกลุ่มความปลอดภัย แทนที่จะเป็นผู้ใช้แต่ละราย สิทธิ์จะถูกกำหนดให้กับกลุ่มเพียงครั้งเดียว แทนที่จะมอบหมายสิทธิ์ให้กับผู้ใช้แต่ละราย เมื่อเพิ่มแต่ละบัญชีลงในกลุ่ม จะได้รับสิทธิ์ที่กำหนดให้กับกลุ่มนั้นใน Active Directory และสิทธิ์ที่กำหนดไว้สำหรับกลุ่มนั้นบนทรัพยากร

กลุ่มการจัดจำหน่าย– ใช้โดยแอปพลิเคชันอีเมลเท่านั้นเพื่อส่งข้อความอีเมลไปยังกลุ่มผู้ใช้ กลุ่มการแจกจ่ายไม่ได้ใช้การรักษาความปลอดภัย กล่าวอีกนัยหนึ่ง ไม่สามารถรวมไว้ในตารางการควบคุมการเข้าถึงแบบเลือก (DACL) ได้ หากกลุ่มถูกสร้างขึ้นเพื่อควบคุมการเข้าถึงทรัพยากรที่ใช้ร่วมกัน กลุ่มนั้นจะต้องเป็นกลุ่มความปลอดภัย

@กลุ่มความปลอดภัยยังสามารถใช้เป็นปลายทางของอีเมลได้ เช่นเดียวกับกลุ่มการแจกจ่าย ข้อความอีเมลที่ส่งถึงกลุ่มจะถูกส่งไปยังสมาชิกทุกคนในกลุ่ม

นอกจากนี้ยังมีกลุ่มที่คุณไม่สามารถแก้ไขหรือดูข้อมูลสมาชิกได้ กลุ่มเหล่านี้เรียกว่าข้อมูลประจำตัวพิเศษ และใช้เพื่อเป็นตัวแทนของผู้ใช้ที่แตกต่างกันในเวลาที่ต่างกัน ขึ้นอยู่กับสถานการณ์

(เข้าสู่ระบบแบบไม่ระบุชื่อ, ทั้งหมด, เครือข่าย, แบบโต้ตอบ)

ตัวอย่างเช่น กลุ่มทุกคนแสดงถึงผู้ใช้เครือข่ายปัจจุบันทั้งหมด รวมถึงแขกและผู้ใช้จากโดเมนอื่น สำหรับข้อมูลเพิ่มเติม โปรดดูที่ ข้อมูลประจำตัวพิเศษ

บัญชีผู้ใช้และคอมพิวเตอร์ (และกลุ่ม) เรียกว่าหลักความปลอดภัย หลักการรักษาความปลอดภัยคือวัตถุไดเรกทอรีที่ได้รับการกำหนดรหัสความปลอดภัย (SID) โดยอัตโนมัติเพื่อเข้าถึงทรัพยากรของโดเมน บัญชีผู้ใช้หรือบัญชีคอมพิวเตอร์ถูกใช้เพื่อวัตถุประสงค์ดังต่อไปนี้:

· การรับรองความถูกต้องของผู้ใช้หรือคอมพิวเตอร์

· อนุญาตหรือปฏิเสธการเข้าถึงทรัพยากรของโดเมน

· การดูแลระบบหลักการรักษาความปลอดภัยอื่นๆ (เพื่อเป็นตัวแทนของหลักการรักษาความปลอดภัยจากโดเมนภายนอกที่เชื่อถือได้)

· ตรวจสอบการกระทำที่ดำเนินการโดยใช้บัญชีผู้ใช้หรือคอมพิวเตอร์

เพื่อโอนสิทธิ์พร้อมกัน จำนวนมากกลุ่มความปลอดภัยถูกใช้สำหรับผู้ใช้ สามารถจัดกลุ่มบัญชีได้โดยใช้หน่วยขององค์กร (คอนเทนเนอร์)

เพื่อให้มั่นใจในการตรวจสอบผู้ใช้ที่ปลอดภัย คุณควรสร้างบัญชีแยกกันสำหรับผู้ใช้เครือข่ายแต่ละรายโดยใช้เครื่องหมาย " ผู้ใช้ Active Directory และคอมพิวเตอร์ ».

บัญชีผู้ใช้ Active Directory แต่ละบัญชีมีการตั้งค่าที่เกี่ยวข้องกับความปลอดภัยจำนวนหนึ่ง ซึ่งกำหนดวิธีการรับรองความถูกต้องของบัญชีเมื่อเข้าสู่ระบบเครือข่าย

ทุ่มเทให้กับการใช้ PowerShell เพื่อจัดการ AD โดยเป็นจุดเริ่มต้น ผู้เขียนตัดสินใจรับงานการดูแลระบบ AD ทั่วไป 10 งาน และดูว่าจะทำให้งานเหล่านี้ง่ายขึ้นโดยใช้ PowerShell ได้อย่างไร:

  1. รีเซ็ตรหัสผ่านผู้ใช้
  2. เปิดใช้งานและปิดใช้งานบัญชี
  3. ปลดล็อคบัญชีผู้ใช้
  4. ลบบัญชีของคุณ
  5. ค้นหากลุ่มว่าง
  6. เพิ่มผู้ใช้ในกลุ่ม
  7. รายชื่อสมาชิกกลุ่ม
  8. ค้นหาบัญชีคอมพิวเตอร์ที่ล้าสมัย
  9. ปิดการใช้งานบัญชีคอมพิวเตอร์
  10. ค้นหาคอมพิวเตอร์ตามประเภท

นอกจากนี้ผู้เขียนดูแลบล็อก (โดยใช้ PowerShell แน่นอน) เราขอแนะนำให้ดู - jdhitsolutions.com/blog และคุณสามารถรับข้อมูลล่าสุดได้จาก Twitter ของเขา twitter.com/jeffhicks.
ด้านล่างนี้คือการแปลบทความ “งาน Active Directory 10 อันดับแรกที่แก้ไขด้วย PowerShell”

การจัดการ Active Directory (AD) โดยใช้ Windows PowerShell นั้นง่ายกว่าที่คุณคิด และฉันอยากจะพิสูจน์ให้คุณเห็น คุณสามารถใช้สคริปต์ด้านล่างและใช้เพื่อแก้ไขงานการจัดการ AD หลายอย่าง

ความต้องการ

หากต้องการใช้ PowerShell ในการจัดการ AD คุณต้องปฏิบัติตามข้อกำหนดหลายประการ ฉันจะสาธิตวิธีการทำงานของ AD cmdlets โดยใช้คอมพิวเตอร์ Windows 7 เป็นตัวอย่าง
หากต้องการใช้ cmdlets คุณต้องมีตัวควบคุมโดเมน Windows Server 2008 R2 หรือคุณสามารถดาวน์โหลดและติดตั้งบริการ Active Directory Management Gateway บน DC รุ่นเก่าได้ โปรดอ่านเอกสารอย่างละเอียดก่อนการติดตั้ง จำเป็นต้องรีบูทซีดี
บนฝั่งไคลเอ็นต์ ให้ดาวน์โหลดและติดตั้ง (RSAT) สำหรับ Windows 7 หรือ Windows 8 บน Windows 7 คุณจะต้องเปิดใน แผงควบคุมบท โปรแกรมและเลือก เปิดหรือปิดคุณสมบัติ Windows. หา เครื่องมือการดูแลระบบเซิร์ฟเวอร์ระยะไกลและขยายส่วนออกไป เครื่องมือการบริหารบทบาท. เลือกรายการที่เหมาะสมสำหรับเครื่องมือ AD DS และ AD LDS โดยเฉพาะอย่างยิ่งโปรดทราบว่าต้องเลือกรายการนั้น โมดูล Active Directory สำหรับ Windows PowerShellดังแสดงในรูปที่ 1 (ใน Windows 8 เครื่องมือทั้งหมดจะถูกเลือกตามค่าเริ่มต้น) ตอนนี้เราพร้อมที่จะทำงานแล้ว

รูปที่ 1 การเปิดใช้งานเครื่องมือ AD DS และ AD LDS

ฉันเข้าสู่ระบบด้วยบัญชีที่มีสิทธิ์ผู้ดูแลระบบโดเมน cmdlet ส่วนใหญ่ที่ฉันจะแสดงจะช่วยให้คุณสามารถระบุข้อมูลรับรองอื่นได้ ไม่ว่าในกรณีใด ฉันแนะนำให้อ่านความช่วยเหลือ ( ขอความช่วยเหลือ) และตัวอย่างที่ผมจะสาธิตด้านล่าง
เริ่มเซสชัน PowerShell และนำเข้าโมดูล:

PS C:\> นำเข้าโมดูล ActiveDirectory

การนำเข้าจะสร้าง PSDrive ใหม่ แต่เราจะไม่ใช้งาน อย่างไรก็ตาม คุณสามารถดูคำสั่งที่มีอยู่ในโมดูลที่นำเข้าได้

PS C:\> รับคำสั่ง - โมดูล ActiveDirectory

ข้อดีของคำสั่งเหล่านี้ก็คือ ถ้าฉันสามารถใช้คำสั่งกับวัตถุ AD หนึ่งรายการได้ ก็สามารถใช้คำสั่งนั้นกับ 10, 100 และแม้กระทั่ง 1,000 มาดูกันว่า cmdlet เหล่านี้บางส่วนทำงานอย่างไร

ภารกิจที่ 1: รีเซ็ตรหัสผ่านผู้ใช้

เริ่มจากงานทั่วไปกันก่อน: การรีเซ็ตรหัสผ่านของผู้ใช้ คุณสามารถทำสิ่งนี้ได้อย่างง่ายดายและง่ายดายโดยใช้ cmdlet ตั้ง ADAccountPassword. ส่วนที่ยุ่งยากคือรหัสผ่านใหม่ต้องมีคุณสมบัติเป็นสตริงที่ปลอดภัย: ชิ้นส่วนของข้อความที่ถูกเข้ารหัสและจัดเก็บไว้ในหน่วยความจำตลอดระยะเวลาของเซสชัน PowerShell ขั้นแรก เรามาสร้างตัวแปรด้วยรหัสผ่านใหม่:
PS C:\> $new=Read-Host "ป้อนรหัสผ่านใหม่" -AsSecureString

จากนั้นให้ป้อนรหัสผ่านใหม่:

ตอนนี้เราสามารถแยกบัญชีได้ (โดยใช้ แซมชื่อบัญชีตัวเลือกที่ดีที่สุด) และตั้งรหัสผ่านใหม่ นี่คือตัวอย่างสำหรับผู้ใช้ Jack Frost:

ป.ล.:\> ตั้ง-ADAccountPassword jfrost -รหัสผ่านใหม่ $ใหม่

ขออภัย มีข้อผิดพลาดกับ cmdlet นี้: -พาสทรู, -อะไรจะเกิดขึ้น, และ -ยืนยันไม่ทำงาน, ไม่เป็นผล. หากคุณต้องการทางลัด ให้ลองทำดังนี้:

PS C:\> Set-ADAccountPassword jfrost -NewPassword (ConvertTo-SecureString -AsPlainText -String "P@ssw0rd1z3" -force)

ด้วยเหตุนี้ ฉันจึงต้องการให้แจ็คเปลี่ยนรหัสผ่านในครั้งถัดไปที่เขาเข้าสู่ระบบ ดังนั้นฉันจึงแก้ไขบัญชีโดยใช้ ชุด-ADUser.

PS C:\> ชุด-ADUser jfrost -ChangePasswordAtLogon $True

ผลลัพธ์ของการเรียกใช้ cmdlet จะไม่ถูกเขียนลงในคอนโซล หากจำเป็นต้องทำ ให้ใช้ -จริง. แต่ฉันสามารถค้นหาได้ว่าการดำเนินการสำเร็จหรือไม่โดยการดึงชื่อผู้ใช้โดยใช้ cmdlet รับ-ADUserและระบุคุณสมบัติ รหัสผ่านหมดอายุดังแสดงในรูปที่ 2


ข้าว. 2. ผลลัพธ์ของ Get-ADUser Cmdlet พร้อมคุณสมบัติ PasswordExpired

บรรทัดล่าง: การรีเซ็ตรหัสผ่านของผู้ใช้โดยใช้ PowerShell นั้นไม่ใช่เรื่องยากเลย ฉันยอมรับว่าการรีเซ็ตรหัสผ่านนั้นทำได้ง่ายเพียงแค่สแน็ปอิน ผู้ใช้ Active Directory และคอมพิวเตอร์คอนโซล คอนโซลการจัดการของ Microsoft (MMC)แต่การใช้ PowerShell นั้นเหมาะสมหากคุณต้องการมอบหมายงาน ไม่ต้องการปรับใช้สแน็ปอินที่กล่าวมาข้างต้น หรือกำลังรีเซ็ตรหัสผ่านโดยเป็นส่วนหนึ่งของกระบวนการ IT อัตโนมัติขนาดใหญ่

ภารกิจที่ 2: เปิดใช้งานและปิดใช้งานบัญชี

ตอนนี้ขอปิดการใช้งานบัญชี มาร่วมงานกับแจ็ค ฟรอสต์กันต่อ รหัสนี้ใช้พารามิเตอร์ –อะไรจะเกิดขึ้นซึ่งคุณสามารถพบได้ใน comadlets อื่นๆ ที่ทำการเปลี่ยนแปลงเพื่อทดสอบคำสั่งของฉันโดยไม่ต้องรัน

PS C:\> ปิดใช้งาน-ADAccount jfrost - จะเกิดอะไรขึ้นถ้า: กำลังดำเนินการ "ตั้งค่า" บนเป้าหมาย "CN=Jack Frost, OU=staff,OU=Testing,DC=GLOBOMANTICS,DC=local"

ตอนนี้เรามาปิดการใช้งานจริง:

PS C:\> ปิดการใช้งาน-ADAAccount jfrost

และเมื่อถึงเวลาเปิดใช้งานบัญชี cmdlet ไหนจะช่วยเรา?

PS C:\> เปิดใช้งาน-ADAccount jfrost

cmdlet เหล่านี้สามารถใช้ได้ในนิพจน์ไปป์ไลน์ ซึ่งช่วยให้คุณสามารถเปิดใช้งานหรือปิดใช้งานบัญชีได้มากเท่าที่คุณต้องการ ตัวอย่างเช่น รหัสนี้จะปิดการใช้งานบัญชีทั้งหมดในแผนกขาย

PS C:\> get-aduser -filter "department -eq "sales"" | ปิดการใช้งาน adacount

แน่นอนเขียนตัวกรองสำหรับ รับ-ADUserค่อนข้างซับซ้อน แต่นี่คือจุดที่การใช้พารามิเตอร์ –อะไรจะเกิดขึ้นพร้อมกับ cmdlet ปิดการใช้งาน ADAccountมาช่วยเหลือ

ภารกิจที่ 3: ปลดล็อกบัญชีผู้ใช้

พิจารณาสถานการณ์ที่แจ็คล็อกบัญชีของเขาขณะพยายามป้อนรหัสผ่านใหม่ แทนที่จะพยายามค้นหาบัญชีของเขาผ่าน GUI ขั้นตอนการปลดล็อคสามารถทำได้โดยใช้คำสั่งง่ายๆ

PS C:\> ปลดล็อค-ADAAccount jfrost

cmdlet ยังรองรับพารามิเตอร์อีกด้วย -อะไรจะเกิดขึ้นและ -ยืนยัน.

ภารกิจที่ 4: ลบบัญชี

ไม่สำคัญว่าคุณจะลบผู้ใช้ออกกี่คน - ทำได้ง่ายๆ โดยใช้ cmdlet ลบ-ADUser. ฉันไม่ต้องการลบ Jack Frost แต่ถ้าต้องการ ฉันจะใช้โค้ดดังนี้:

PS C:\> Remove-ADUser jfrost - จะเกิดอะไรขึ้นถ้า: กำลังดำเนินการ "ลบ" บนเป้าหมาย "CN=Jack Frost,OU=staff,OU=Testing,DC=GLOBOMANTICS,DC=local"

หรือฉันสามารถป้อนผู้ใช้หลายรายและลบออกด้วยคำสั่งง่ายๆ เพียงคำสั่งเดียว:

PS C:\> get-aduser -filter "enabled -eq "false"" -property WhenChanged -SearchBase "OU=พนักงาน, DC=Globomantics,DC=Local" | โดยที่ ($_.WhenChanged -le (รับ-Date).AddDays(-180)) | ลบ ADuser -whatif

คำสั่งนี้จะค้นหาและลบบัญชีพนักงาน OU ที่ถูกปิดใช้งานซึ่งไม่มีการแก้ไขเป็นเวลา 180 วันขึ้นไป

ภารกิจที่ 5: ค้นหากลุ่มว่าง

การจัดการกลุ่มเป็นงานที่ไม่มีที่สิ้นสุดและไร้คุณค่า มีหลายวิธีในการค้นหากลุ่มว่าง นิพจน์บางอย่างอาจทำงานได้ดีกว่านิพจน์อื่น ทั้งนี้ขึ้นอยู่กับองค์กรของคุณ โค้ดด้านล่างนี้จะค้นหากลุ่มทั้งหมดในโดเมน รวมถึงกลุ่มที่มีอยู่แล้วด้วย

ป.ล.:\> get-adgroup -filter * | โดยที่ (-ไม่ใช่ ($_ | get-adgroupmember)) | เลือกชื่อ

หากคุณมีกลุ่มที่มีสมาชิกหลายร้อยคน การใช้คำสั่งนี้อาจใช้เวลานาน รับ ADGroupMemberตรวจสอบแต่ละกลุ่ม ถ้าคุณสามารถจำกัดหรือปรับแต่งได้จะดีกว่า
นี่เป็นอีกแนวทางหนึ่ง:

PS C:\> get-adgroup -filter "members -notlike "*" -AND GroupScope -eq "Universal"" -SearchBase "OU=Groups,OU=Employees,DC=Globomantics, DC=local" | เลือกชื่อกลุ่ม*

คำสั่งนี้ค้นหากลุ่ม Universal ทั้งหมดที่ไม่มีสมาชิกในกลุ่ม OU และแสดงคุณสมบัติบางอย่าง ผลลัพธ์จะแสดงในรูปที่ 3


ข้าว. 3. ค้นหาและกรองกลุ่มสากล

ภารกิจที่ 6: การเพิ่มผู้ใช้ในกลุ่ม

มาเพิ่ม Jack Frost ในกลุ่ม Chicago IT กัน:

PS C:\> add-adgroupmember "chicago IT" -สมาชิก jfrost

ใช่ มันง่ายมาก คุณสามารถเพิ่มผู้ใช้หลายร้อยรายในกลุ่มได้อย่างง่ายดาย แม้ว่าฉันจะพบว่าสิ่งนี้ดูอึดอัดเล็กน้อย:

PS C:\> Add-ADGroupMember "พนักงานในชิคาโก" - สมาชิก (get-aduser -filter "city -eq "Chicago"")

ฉันใช้นิพจน์ไปป์ไลน์แบบวงเล็บเพื่อค้นหาผู้ใช้ทั้งหมดที่มีคุณสมบัติ City ในชิคาโก โค้ดในวงเล็บจะถูกดำเนินการ และออบเจ็กต์ผลลัพธ์จะถูกส่งผ่านไปยังพารามิเตอร์ –Member ออบเจ็กต์ผู้ใช้แต่ละรายการจะถูกเพิ่มเข้าในกลุ่มพนักงานในชิคาโก ไม่สำคัญว่าเราจะติดต่อกับผู้ใช้ 5 หรือ 5,000 ราย การอัปเดตการเป็นสมาชิกกลุ่มใช้เวลาเพียงไม่กี่วินาที สำนวนนี้สามารถเขียนได้โดยใช้ สำหรับแต่ละวัตถุอะไรจะสะดวกกว่า:

PS C:\> Get-ADUser -filter "city -eq "Chicago"" | foreach (Add-ADGroupMember "พนักงานชิคาโก" -สมาชิก $_)

ภารกิจที่ 7: รายชื่อสมาชิกกลุ่ม

คุณอาจต้องการทราบว่าใครอยู่ในกลุ่มใดกลุ่มหนึ่ง ตัวอย่างเช่น คุณควรค้นหาว่าใครเป็นสมาชิกของกลุ่มผู้ดูแลระบบโดเมนเป็นระยะ:

PS C:\> รับ-ADGroupMember "ผู้ดูแลระบบโดเมน"

รูปที่ 4 แสดงผลลัพธ์


ข้าว. 4. สมาชิกกลุ่ม Domain Admins

cmdlet แสดงวัตถุโฆษณาสำหรับสมาชิกแต่ละกลุ่ม จะทำอย่างไรกับกลุ่มที่ซ้อนกัน? กลุ่มของฉัน Chicago All Users คือกลุ่มของกลุ่มที่ซ้อนกัน หากต้องการดูรายการบัญชีทั้งหมด ฉันแค่ต้องใช้พารามิเตอร์ –แบบเรียกซ้ำ.

PS C:\> Get-ADGroupMember "ผู้ใช้ทั้งหมดในชิคาโก" -Recursive | เลือกชื่อเฉพาะ

หากคุณต้องการไปทางอื่น ให้ค้นหาว่าผู้ใช้อยู่ในกลุ่มใด - ให้ใช้คุณสมบัติผู้ใช้ สมาชิกของ:

PS C:\> รับ aduser jfrost -property Memberof | เลือก -ExpandProperty memberOf CN=NewTest,OU=กลุ่ม,OU=พนักงาน, DC=GLOBOMANTICS,DC=local CN=การทดสอบในชิคาโก,OU=กลุ่ม,OU=พนักงาน, DC=GLOBOMANTICS,DC=local CN=Chicago IT,OU= กลุ่ม,OU=พนักงาน, DC=GLOBOMANTICS,DC=local CN=ผู้ใช้การขายในชิคาโก,OU=กลุ่ม,OU=พนักงาน, DC=GLOBOMANTICS,DC=local

ฉันใช้พารามิเตอร์ -ขยายคุณสมบัติเพื่อแสดงชื่อ สมาชิกของเหมือนเส้น

ภารกิจที่ 8: ค้นหาบัญชีคอมพิวเตอร์ที่ล้าสมัย

ฉันถูกถามคำถามนี้บ่อยครั้ง: “ฉันจะค้นหาบัญชีคอมพิวเตอร์ที่ล้าสมัยได้อย่างไร” และฉันมักจะตอบเสมอว่า: "อะไรล้าสมัยสำหรับคุณ" บริษัทมีคำจำกัดความที่แตกต่างกันว่าเมื่อใดที่บัญชีคอมพิวเตอร์ (หรือบัญชีผู้ใช้ไม่สำคัญ) ถือว่าล้าสมัยและไม่สามารถใช้งานได้อีกต่อไป สำหรับฉัน ฉันให้ความสำคัญกับบัญชีที่ไม่มีการเปลี่ยนรหัสผ่านในช่วงระยะเวลาหนึ่ง ช่วงเวลานี้สำหรับฉันคือ 90 วัน - หากคอมพิวเตอร์ไม่ได้เปลี่ยนรหัสผ่านพร้อมกับโดเมนในช่วงเวลานี้ มีแนวโน้มว่าคอมพิวเตอร์จะออฟไลน์และล้าสมัย Cmdlet ที่ใช้ รับ-ADComputer:

PS C:\> get-adcomputer -filter "Passwordlastset -lt "1/1/2012"" -properties *| เลือกชื่อ รหัสผ่านชุดสุดท้าย

ตัวกรองทำงานได้ดีกับค่าที่ยาก แต่รหัสนี้จะอัปเดตสำหรับบัญชีคอมพิวเตอร์ทั้งหมดที่ไม่ได้เปลี่ยนรหัสผ่านตั้งแต่วันที่ 1 มกราคม 2555 ผลลัพธ์แสดงในรูปที่ 5


ข้าว. 5. ค้นหาบัญชีคอมพิวเตอร์ที่ล้าสมัย

อีกทางเลือกหนึ่ง: สมมติว่าคุณอยู่ในระดับการทำงานของโดเมน Windows 2003 เป็นอย่างน้อย กรองตามคุณสมบัติ LastLogontimeStamp. ค่านี้คือจำนวนช่วงเวลา 100 นาโนวินาทีตั้งแต่วันที่ 1 มกราคม 1601 และจัดเก็บแบบ GMT ดังนั้นการทำงานกับค่านี้จึงยุ่งยากเล็กน้อย:

PS C:\> get-adcomputer -filter "LastlogonTimestamp -gt 0" -properties * | เลือกชื่อ,lastlogontimestamp, @(Name="LastLogon";Expression=(::FromFileTime ($_.Lastlogontimestamp))),passwordlastset | เรียงลำดับ LastLogonTimeStamp


ข้าว. 6. แปลงค่า LastLogonTimeStamp เป็นรูปแบบที่คุ้นเคย

หากต้องการสร้างตัวกรอง ฉันต้องแปลงวันที่ เช่น 1 มกราคม 2012 ให้เป็นรูปแบบที่ถูกต้อง การแปลงดำเนินการใน FileTime:

PS C:\> $cutoff=(รับวันที่ "1/1/2555").ToFileTime() PS C:\> $cutoff 129698676000000000

ตอนนี้ฉันสามารถใช้ตัวแปรนี้ในตัวกรองได้ รับ-ADComputer:

PS C:\> Get-ADComputer -Filter "(lastlogontimestamp -lt $cutoff) -หรือ (lastlogontimestamp -notlike "*")" -property * | เลือกชื่อ, LastlogonTimestamp, PasswordLastSet

โค้ดด้านบนค้นหาคอมพิวเตอร์เครื่องเดียวกับที่แสดงในรูปที่ 5

ภารกิจที่ 9: ปิดการใช้งานบัญชีคอมพิวเตอร์

บางทีเมื่อคุณพบบัญชีที่ไม่ได้ใช้งานหรือล้าสมัย คุณอาจต้องการปิดการใช้งานบัญชีเหล่านั้น มันค่อนข้างง่ายที่จะทำ เราจะใช้ cmdlet เดียวกับที่เราเคยทำงานกับบัญชีผู้ใช้ คุณสามารถชี้แจงได้โดยใช้ แซมชื่อบัญชีบัญชี.

PS C:\> ปิดใช้งาน-ADAccount - รหัสประจำตัว "chi-srv01$" - จะเกิดอะไรขึ้นถ้า: กำลังดำเนินการ "ตั้งค่า" บนเป้าหมาย "CN=CHI-SRV01, CN=คอมพิวเตอร์,DC=GLOBOMANTICS,DC=local"

หรือใช้นิพจน์ไปป์ไลน์:

ป.ล.:\> รับ-adcomputer "chi-srv01" | ปิดการใช้งาน ADAccount

ฉันยังสามารถใช้รหัสของฉันเพื่อค้นหาบัญชีที่ล้าสมัยและปิดการใช้งานทั้งหมดได้:

PS C:\> get-adcomputer -filter "Passwordlastset -lt "1/1/2012"" -properties *| ปิดการใช้งาน ADAccount

ภารกิจที่ 10: ค้นหาคอมพิวเตอร์ตามประเภท

ฉันมักจะถูกถามถึงวิธีค้นหาบัญชีคอมพิวเตอร์ตามประเภท เช่น เซิร์ฟเวอร์หรือเวิร์กสเตชัน สิ่งนี้ต้องใช้ความคิดสร้างสรรค์ในส่วนของคุณ ไม่มีสิ่งใดใน AD ที่ทำให้เซิร์ฟเวอร์แตกต่างจากไคลเอนต์ ยกเว้นระบบปฏิบัติการ หากคอมพิวเตอร์ของคุณใช้ Windows Server 2008 คุณจะต้องทำตามขั้นตอนเพิ่มเติมสองสามขั้นตอน
ขั้นแรก คุณต้องได้รับรายการระบบปฏิบัติการ จากนั้นเราจะกรองบัญชีตามระบบปฏิบัติการที่มีอยู่

PS C:\> รับ-ADComputer - ตัวกรอง * - คุณสมบัติระบบปฏิบัติการ | เลือกระบบปฏิบัติการ -ไม่ซ้ำกัน | เรียงลำดับระบบปฏิบัติการ

ผลลัพธ์แสดงในรูปที่ 7


ข้าว. 7. การเรียกข้อมูลรายการระบบปฏิบัติการ

ฉันต้องการค้นหาคอมพิวเตอร์ทุกเครื่องที่ใช้ระบบปฏิบัติการเซิร์ฟเวอร์:

PS C:\> รับ-ADComputer - กรอง "ระบบปฏิบัติการ - เหมือน "* เซิร์ฟเวอร์ *"" - คุณสมบัติ ระบบปฏิบัติการ, ระบบปฏิบัติการ ServicePack | เลือกชื่อ,Op* | รายการรูปแบบ

ผลลัพธ์แสดงในรูปที่ 8

เช่นเดียวกับ AD Get cmdlets อื่นๆ คุณสามารถปรับแต่งพารามิเตอร์การค้นหาและจำกัดคำขอไปยัง OU ที่เฉพาะเจาะจงได้หากจำเป็น นิพจน์ทั้งหมดที่ฉันแสดงสามารถรวมเข้ากับนิพจน์ PowerShell ที่ใหญ่กว่าได้ ตัวอย่างเช่น คุณสามารถจัดเรียง จัดกลุ่ม ใช้ตัวกรอง ส่งออกเป็น CSV หรือสร้างและส่งอีเมลรายงาน HTML ทั้งหมดนี้ได้จาก PowerShell! ในกรณีนี้ คุณจะไม่ต้องเขียนสคริปต์แม้แต่ตัวเดียว
นี่เป็นโบนัส: รายงานอายุรหัสผ่านของผู้ใช้ที่บันทึกไว้ในไฟล์ HTML:

PS C:\> รับ ADUser - ตัวกรอง "เปิดใช้งาน -eq "จริง" - และ PasswordNeverExpires -eq "เท็จ"" - คุณสมบัติ PasswordLastSet, รหัสผ่านNeverExpires, รหัสผ่านหมดอายุ | เลือก DistinguishedName,Name,pass*,@(Name="PasswordAge"; Expression=((Get-Date)-$_.PasswordLastSet)) |sort PasswordAge -Descending | ConvertTo-Html -Title "Password Age Report" | Out-File c:\Work\pwage.htm !}

แม้ว่าสำนวนนี้อาจดูน่ากลัวเล็กน้อย แต่ก็ใช้งานง่ายโดยมีความรู้เกี่ยวกับ PowerShell เพียงเล็กน้อย และมีเพียงคำแนะนำสุดท้ายเดียวเท่านั้น: วิธีกำหนดคุณสมบัติแบบกำหนดเองที่เรียกว่า รหัสผ่านAge. ค่านี้แสดงถึงช่องว่างระหว่างวันที่วันนี้และคุณสมบัติ PasswordLastSet จากนั้น ฉันจะจัดเรียงผลลัพธ์สำหรับสถานที่ให้บริการใหม่ของฉัน รูปที่ 9 แสดงผลลัพธ์สำหรับโดเมนทดสอบขนาดเล็กของฉัน

อัปเดต:
โพสต์มีการแปลบทความบนพอร์ทัล

ผู้ที่ต้องจัดการกับสิ่งต่างๆ เช่น สเปรดชีต Excel ที่แสดงรายการพนักงานใหม่ 200 คนที่จะเริ่มต้นในสัปดาห์หน้า หรือบัญชีผู้ใช้ที่กำหนดค่าไม่ถูกต้องเนื่องจากมีผู้ใน Help Desk คลิกสิ่งที่พวกเขาไม่ควรคลิก และรวมถึงผู้ที่สนใจวิธีที่ง่ายกว่านี้ ในการจัดการ Active Directory® นอกเหนือจากการเปิดโฟลเดอร์ Users และ Computers ทุกครั้งแล้ว ยังสามารถใช้หนึ่งในเครื่องมือการดูแลระบบฟรีได้อีกด้วย บางส่วนถูกสร้างขึ้นใน ระบบปฏิบัติการ Windows บางตัวมีให้ใน Resource Kit หรือ Windows Support Toolkit และบางตัวเป็นผลิตภัณฑ์ฟรีของบริษัทอื่น ผลิตภัณฑ์ที่สะดวกเหล่านี้คืออะไรและฉันจะหาซื้อได้ที่ไหน? มาหาคำตอบกัน
เริ่มต้นด้วยเครื่องมือบรรทัดคำสั่งในตัวใน Windows Server 2003 ที่ให้คุณสร้าง ลบ แก้ไข และค้นหาออบเจ็กต์ใน Active Directory

เครื่องมือ CSVDE ช่วยให้คุณสามารถนำเข้าวัตถุใหม่ไปยัง Active Directory โดยใช้ไฟล์ CSV ต้นฉบับ แต่ยังให้ความสามารถในการส่งออกวัตถุที่มีอยู่ไปยังไฟล์ CSV CSVDE ไม่สามารถใช้แก้ไขวัตถุที่มีอยู่ได้ เมื่อใช้เครื่องมือนี้ในโหมดนำเข้า คุณสามารถสร้างได้เฉพาะออบเจ็กต์ใหม่เท่านั้น

การส่งออกรายการออบเจ็กต์ที่มีอยู่โดยใช้ CSVDE นั้นค่อนข้างง่าย ข้อมูลต่อไปนี้แสดงวิธีการส่งออกออบเจ็กต์ Active Directory ไปยังไฟล์ชื่อ ad.csv:

csvde –f ad.csv

ตัวเลือก -f ระบุว่าตามด้วยชื่อของไฟล์เอาต์พุต แต่โปรดทราบว่า ขึ้นอยู่กับสภาพแวดล้อมของคุณ ไวยากรณ์พื้นฐานนี้อาจส่งผลให้เอาต์พุตไฟล์มีขนาดใหญ่และไม่สะดวก หากต้องการจำกัดเครื่องมือให้ส่งออกเฉพาะออบเจ็กต์ภายในหน่วยองค์กร (OU) ที่ระบุ คำสั่งสามารถแก้ไขได้ดังนี้:

csvde –f UsersOU.csv –d ou=ผู้ใช้,dc=contoso,dc=com

สมมติว่าฉันต้องส่งออกออบเจ็กต์ผู้ใช้ไปยังไฟล์ CSV ของฉันเท่านั้น ในกรณีนี้ คุณสามารถเพิ่มตัวเลือก –r เพื่อระบุตัวกรองโปรโตคอล LDAP สำหรับการค้นหานี้ ซึ่งจะจำกัดจำนวนแอตทริบิวต์ที่ส่งออก (โปรดทราบว่ารายการต่อไปนี้รวมอยู่ในบรรทัดเดียว):

csvde –f UsersOnly.csv –d ou=ผู้ใช้,dc=contoso,dc=com –r
"(&(objectcategory=person)(objectclass=user))" –l
DN, objectClass, คำอธิบาย

ตัวเลือก –i ช่วยให้คุณสามารถนำเข้าวัตถุไปยัง Active Directory จากไฟล์ต้นฉบับ CSV อย่างไรก็ตาม การสร้างออบเจ็กต์ผู้ใช้ด้วย CSVDE มีข้อเสียเปรียบที่สำคัญประการหนึ่ง นั่นคือ ไม่สามารถตั้งรหัสผ่านผู้ใช้ได้ ดังนั้นฉันจะไม่ใช้ CSVDE เพื่อสร้างออบเจ็กต์ผู้ใช้

Active Directory มีการดำเนินการแบทช์ผู้ใช้ในตัวครั้งที่สองที่เรียกว่า LDIFDE ซึ่งมีประสิทธิภาพและยืดหยุ่นมากกว่า CSVDE นอกเหนือจากการสร้างออบเจ็กต์ใหม่แล้ว LDIFDE ยังช่วยให้คุณสามารถแก้ไขและลบออบเจ็กต์ที่มีอยู่ และยังขยายสคีมา Active Directory ได้ด้วย ข้อเสียเปรียบสำหรับความยืดหยุ่นของ LDIFDE คือ ไฟล์อินพุตที่ต้องการ (ไฟล์ LDIF) ที่มีนามสกุล .ldf จะใช้รูปแบบที่ซับซ้อนมากกว่าไฟล์ CSV แบบธรรมดา (ด้วยการทำงานเพียงเล็กน้อย คุณยังสามารถกำหนดค่ารหัสผ่านของผู้ใช้ได้ แต่จะเพิ่มเติมในภายหลัง)

เริ่มต้นด้วยตัวอย่างง่ายๆ - การส่งออกผู้ใช้ในหน่วยธุรกิจไปยังไฟล์ LDF (โปรดทราบว่าข้อมูลต่อไปนี้รวมอยู่ในบรรทัดเดียว):

ldifde -f users.ldf -s DC1.contoso.com -d "ou=UsersOU,dc=contoso,dc=com"
–r "(&(objectcategory=person)(objectclass=user))"

เช่นเดียวกับเครื่องมือบรรทัดคำสั่งส่วนใหญ่ คุณสามารถรับคำอธิบายที่สมบูรณ์ของตัวเลือก LDIFDE ได้โดยการเรียกใช้ LDIFDE /? . แสดงเป็นสิ่งที่ฉันใช้ที่นี่ (โปรดทราบว่าพารามิเตอร์สำหรับคำสั่ง CSVDE และ LDIFDE จะเหมือนกัน)

พลังที่แท้จริงของ LDIFDE มาจากการสร้างและการจัดการออบเจ็กต์ อย่างไรก็ตาม ก่อนที่จะดำเนินการนี้ คุณต้องสร้างไฟล์อินพุตก่อน รหัสต่อไปนี้สร้างบัญชีผู้ใช้ใหม่สองบัญชี - afuller และ rking; หากต้องการสร้างไฟล์อินพุต ให้ป้อนข้อความใน Notepad (หรือโปรแกรมแก้ไขข้อความธรรมดาอื่น) แล้วบันทึกเป็น NewUsers.ldf:

dn: CN=afuller, OU=UsersOU, DC=contoso, DC=com
ประเภทการเปลี่ยนแปลง: เพิ่ม
cn: อาฟูลเลอร์
objectClass: ผู้ใช้
samAccountName: afuller dn: CN=rking, OU=UsersOU, DC=contoso, DC=com
ประเภทการเปลี่ยนแปลง: เพิ่ม
cn:rking
objectClass: ผู้ใช้
samAccountName: rking

เมื่อการสร้างไฟล์เสร็จสมบูรณ์ ให้รันคำสั่งต่อไปนี้:

ldifde –i –f NewUsers.ldf –s DC1.contoso.com

ตัวเลือกใหม่เดียวที่นี่คือ -i ซึ่งตามที่คุณอาจเดาได้ ระบุว่าการดำเนินการกำลังนำเข้าแทนที่จะส่งออก

เมื่อแก้ไขหรือลบอ็อบเจ็กต์ที่มีอยู่ ไวยากรณ์ของคำสั่ง LDIFDE จะไม่เปลี่ยนแปลง เนื้อหาของไฟล์ LDF จะถูกแก้ไขแทน หากต้องการแก้ไขฟิลด์คำอธิบายบัญชีผู้ใช้ ให้สร้างไฟล์ข้อความชื่อ ModifyUsers.ldf เช่นไฟล์ที่แสดงในรูป 2.


ข้าว. 2 ผู้ใช้แก้ไขไฟล์ LDF

การเปลี่ยนแปลงจะถูกอิมพอร์ตโดยการรันไวยากรณ์คำสั่ง LDIFDE เหมือนเดิม โดยระบุไฟล์ LDF ใหม่หลังอ็อพชัน -f รูปแบบ LDF สำหรับการลบวัตถุนั้นง่ายกว่า หากต้องการลบผู้ใช้ที่คุณร่วมงานด้วย ให้สร้างไฟล์ชื่อ DeleteUsers.ldf และป้อนข้อมูลต่อไปนี้:

dn: CN=afuller OU=UsersOU, DC=contoso, DC=com
ประเภทการเปลี่ยนแปลง: ลบ dn: CN=rking, OU=UsersOU, DC=contoso, DC=com
ประเภทการเปลี่ยนแปลง: ลบ

โปรดทราบว่า LDIFDE สามารถกำหนดค่ารหัสผ่านผู้ใช้ได้ ซึ่งต่างจาก CSVDE คุณต้องกำหนดค่าการเข้ารหัส SSL/TLS บนตัวควบคุมโดเมนของคุณเสียก่อน นอกจากนี้ LDIFDE ยังสามารถสร้างและแก้ไขวัตถุ Active Directory ใดก็ได้ ไม่ใช่แค่บัญชีผู้ใช้เท่านั้น ตัวอย่างเช่น ไฟล์ LDF ต่อไปนี้จะสร้างส่วนขยาย Schema ใหม่ที่เรียกว่า EmployeeID-example ใน Contoso.com Forest Schema:
dn: cn=ตัวอย่าง ID พนักงาน,cn=สคีมา,
cn=การกำหนดค่า dc=contoso,dc=com
ประเภทการเปลี่ยนแปลง: เพิ่ม
adminDisplayName: EmployeeID-ตัวอย่าง
รหัสแอตทริบิวต์: 1.2.3.4.5.6.6.6.7
ไวยากรณ์แอตทริบิวต์: 2.5.5.6
cn: รหัสพนักงาน
ประเภทอินสแตนซ์: 4
isSingleValued: จริง
lDAPDisplayName: EmployeeID-ตัวอย่าง

เนื่องจากไฟล์ LDIFDE ใช้รูปแบบไฟล์ LDAP มาตรฐานอุตสาหกรรม แอปพลิเคชันของบริษัทอื่นที่จำเป็นต้องแก้ไข Active Directory schema มักจะให้ไฟล์ LDF ที่สามารถใช้เพื่อตรวจสอบและอนุมัติการเปลี่ยนแปลงก่อนที่จะนำไปใช้กับสภาพแวดล้อมการใช้งานจริง

นอกเหนือจากเครื่องมือสำหรับการนำเข้าและส่งออกเป็นชุดแล้ว Windows Server 2003 ยังมีเครื่องมือในตัวที่ช่วยให้คุณสามารถสร้าง ลบ และแก้ไขออบเจ็กต์ Active Directory ต่างๆ รวมถึงออบเจ็กต์คิวรีที่ตรงตามเกณฑ์ที่กำหนด (โปรดทราบว่าเครื่องมือเหล่านี้ dsadd, dsrm, dsget และ dsquery ไม่ได้รับการสนับสนุนโดย Active Directory บน Windows 2000)

Dsadd ใช้เพื่อสร้างอินสแตนซ์ของคลาสอ็อบเจ็กต์ Active Directory ในพาร์ติชันไดเร็กทอรีเฉพาะ คลาสเหล่านี้ประกอบด้วยผู้ใช้ คอมพิวเตอร์ ผู้ติดต่อ กลุ่ม หน่วยธุรกิจ และโควต้า โปรดทราบว่าออบเจ็กต์แต่ละประเภทที่สร้างขึ้นต้องมีชุดพารามิเตอร์พิเศษที่สอดคล้องกับคุณลักษณะที่มีสำหรับประเภทนั้น คำสั่งนี้สร้างอ็อบเจ็กต์ผู้ใช้เดี่ยวที่มีแอตทริบิวต์ต่างๆ มากมาย (โปรดทราบว่าสิ่งต่อไปนี้รวมอยู่ในบรรทัดเดียว):

ผู้ใช้ dsadd cn=afuller,ou=IT,dc=contoso,dc=com
–samID afuller –fn Andrew –ln Fuller –pwd *
-memberOf cn=IT,ou=กลุ่ม,dc=contoso,dc=com "cn=ฝ่ายช่วยเหลือ ou=กลุ่ม
dc=contoso,dc=com"
–อธิบาย "ผู้อำนวยการฝ่ายการตลาด"
พารามิเตอร์ -memberOf ต้องการชื่อที่แตกต่างแบบเต็ม (DN) ของแต่ละกลุ่มที่ควรเพิ่มผู้ใช้ หากคุณต้องการเพิ่มผู้ใช้ลงในหลายกลุ่ม คุณสามารถเพิ่ม DN หลายรายการโดยคั่นด้วยช่องว่าง หากเป็นองค์ประกอบ ให้พูดว่า DN ของกลุ่ม Help Desk มีการเว้นวรรค องค์ประกอบนี้ต้องอยู่ในเครื่องหมายคำพูดคู่ หากองค์ประกอบ เช่น หน่วยธุรกิจ IT\\EMEA มีแบ็กสแลช คุณต้องป้อนแบ็กสแลชสองครั้ง: IT\\EMEA (ข้อกำหนดเหล่านี้ใช้กับเครื่องมือ ds* ทั้งหมด) การใช้ตัวเลือก -pwd * จะแจ้งให้คุณป้อนรหัสผ่านสำหรับผู้ใช้ที่บรรทัดคำสั่ง สามารถระบุรหัสผ่านได้ภายในคำสั่ง (-pwd P@ssword1) แต่รหัสผ่านจะแสดงเป็นข้อความธรรมดาบนหน้าจอ หรือในข้อความหรือไฟล์สคริปต์ใดๆ ที่มีการแทรกคำสั่งเข้าไป

ในทำนองเดียวกัน คุณสามารถสร้างออบเจ็กต์กลุ่มและหน่วยธุรกิจได้โดยใช้คำสั่งสองคำสั่งต่อไปนี้:

dsadd คอมพิวเตอร์ cn=WKS1,ou=เวิร์กสเตชัน,dc=contoso,dc=com
dsadd ou "ou=การฝึกอบรม OU,dc=contoso,dc=com"

Dsmod ใช้เพื่อแก้ไขออบเจ็กต์ที่มีอยู่ และทำงานในลักษณะเดียวกับ dsadd โดยใช้เมนูย่อยและไวยากรณ์ที่แตกต่างกัน ขึ้นอยู่กับประเภทของออบเจ็กต์ที่กำลังแก้ไข คำสั่ง dsmod ต่อไปนี้จะเปลี่ยนรหัสผ่านของผู้ใช้และแก้ไขบัญชีของตนเพื่อให้พวกเขาได้รับพร้อมท์ให้เปลี่ยนรหัสผ่านในครั้งถัดไปที่เข้าสู่ระบบ:

ผู้ใช้ dsmod "cn=afuller,ou=IT,dc=contoso,dc=com" –pwd P@ssw0rd1
–mustchpwd ใช่

หากต้องการดูว่าตัวเลือกเหล่านี้มีความคล้ายคลึงกันเพียงใด โปรดดูที่ไวยากรณ์ dsadd ที่ใช้ในการสร้างผู้ใช้ที่มีแอตทริบิวต์เดียวกันที่กำหนดค่าไว้:

ผู้ใช้ dsadd "cn=afuller,ou=IT,dc=contoso,dc=com" –pwd P@ssw0rd1
–mustchpwd ใช่

แน่นอนว่าหากคุณทราบพารามิเตอร์สำหรับการสร้างวัตถุโดยใช้ dsadd คุณสามารถใช้พารามิเตอร์เหล่านี้เพื่อเปลี่ยนผู้ใช้โดยใช้ dsmod ได้

สิ่งที่ตรงกันข้ามกับ dsadd คือ dsrm; ตามที่คุณอาจจินตนาการได้ เครื่องมือนี้ใช้เพื่อลบวัตถุออกจากบรรทัดคำสั่ง ไวยากรณ์พื้นฐานสำหรับ dsrm ค่อนข้างตรงไปตรงมา: เพียงพิมพ์ dsrm ตามด้วยชื่อเฉพาะของออบเจ็กต์ที่คุณต้องการลบ ในลักษณะนี้:

dsrm cn=WKS1,ou=เวิร์กสเตชัน,dc=contoso,dc=com

ตามค่าเริ่มต้น dsrm จะถามว่า "คุณแน่ใจหรือไม่ว่าต้องการลบวัตถุนี้" พิมพ์ Y แล้วกด Enter คำขอนี้สามารถปิดใช้งานได้โดยใช้พารามิเตอร์ –noprompt แต่ในกรณีนี้ โอกาสที่จะยืนยันว่าวัตถุถูกเลือกอย่างถูกต้องก่อนที่จะลบจะหายไป ตัวเลือกเพิ่มเติมสองตัวเลือกอาจมีประโยชน์เมื่อลบออบเจ็กต์คอนเทนเนอร์ นั่นคือ หน่วยโครงสร้างที่อาจมีออบเจ็กต์อื่นอยู่ คำสั่งต่อไปนี้จะลบหน่วยองค์กร TrainingOU และออบเจ็กต์ทั้งหมดที่มี:

และอันนี้จะลบอ็อบเจ็กต์ลูกทั้งหมดใน TrainingOU แต่ไม่ได้สัมผัสกับหน่วยโครงสร้างเอง:

dsrm ou=TrainingOU,dc=contoso,dc=com –ทรีย่อย
-ไม่รวม

คุณสามารถใช้เครื่องมือ dsmove เพื่อย้ายหรือเปลี่ยนชื่อวัตถุใน Active Directory ได้ แต่โปรดทราบว่าเครื่องมือนี้สามารถใช้เพื่อย้ายวัตถุภายในโดเมนเท่านั้น หากต้องการย้ายออบเจ็กต์ระหว่างโดเมนหรือฟอเรสต์ ให้ใช้ Active Directory Migration Tool (ADMT) ซึ่งดาวน์โหลดฟรีจาก Microsoft Dsmove อาศัยพารามิเตอร์สองตัว ซึ่งสามารถใช้แยกกันหรือร่วมกันได้ คำสั่งนี้จะเปลี่ยนนามสกุลในบัญชีผู้ใช้ Steve Conn:

dsmove "cn=Conn, Steve,ou=IT,dc=contoso,dc=com"
–ชื่อใหม่ “สตีฟ คอนน์”

คำสั่งนี้จะย้ายบัญชี Steve จากหน่วยองค์กร IT ไปยังหน่วยองค์กรการฝึกอบรม:

dsmove "cn=Conn, Steve,ou=IT,dc=contoso,dc=com" –ผู้ปกครองใหม่
ou=การฝึกอบรมdc=contoso,dc=com

การเปลี่ยนชื่อและการถ่ายโอนสามารถทำได้ในการดำเนินการเดียวโดยระบุพารามิเตอร์ทั้งสองพร้อมกัน:

dsmove "cn=Conn, Steve,ou=IT,dc=contoso,dc=com" –ชื่อใหม่
"Steve Conn" –newparent ou=Training,dc=contoso,dc=com

Dsget และ Dsquery

เครื่องมือบรรทัดคำสั่ง ds* ยังมีเครื่องมือสองตัวที่ใช้ในการสืบค้นข้อมูล Active Directory แทนที่จะสร้างหรือแก้ไขออบเจ็กต์

Dsget ใช้เป็นอินพุตชื่อที่แตกต่าง (DN) ของวัตถุและส่งกลับค่าของแอตทริบิวต์หรือแอตทริบิวต์ที่ระบุ Dsget ใช้เมนูย่อยเดียวกันกับ dsadd และ dsmod - "user", "computer", "contact", "group", "division" และ "quota"

หากต้องการรับชื่อบัญชี SAM และรหัสความปลอดภัย (SID) ของบัญชีผู้ใช้ ให้ป้อนคำสั่งต่อไปนี้ (โปรดทราบว่าคำสั่งต่อไปนี้รวมอยู่ในบรรทัดเดียว):

ผู้ใช้ dsget cn=afuller,ou=IT,dc=contoso,dc=com
–samAccountName –sid

ผลลัพธ์จะคล้ายกับที่แสดงในรูปที่. 3.

ข้าว. 3 dsget ทำงานอย่างไร

Dsquery ส่งคืนรายการวัตถุ Active Directory ที่ตรงกับเกณฑ์ที่ระบุ

Dsquery สามารถใช้เมนูย่อยต่อไปนี้ แต่ละเมนูมีไวยากรณ์ของตัวเองสำหรับ ObjectType: "computer", "contact", "subnet", "group", "business unit", "website", "server" (โปรดทราบว่าเมนูย่อย Server ดึงข้อมูลเกี่ยวกับตัวควบคุมโดเมน ไม่ใช่เซิร์ฟเวอร์ในสภาพแวดล้อมของคุณ) "ผู้ใช้" "โควต้า" และ "พาร์ติชัน" คุณสามารถใช้เมนูย่อย * เพื่อป้อนแบบสอบถาม LDAP ที่มีรูปแบบอิสระได้ StartNode ระบุตำแหน่งของโครงสร้าง Active Directory ที่การค้นหาจะเริ่มขึ้น คุณสามารถใช้ DN เฉพาะ เช่น ou=IT,dc=contoso,dc=com หรือหนึ่งในตัวให้คำอธิบายเส้นทางแบบสั้นต่อไปนี้: domainroot เริ่มต้นที่รากของโดเมนเฉพาะ หรือ Forestroot เริ่มต้นที่รากของ โดเมนรากของฟอเรสต์โดยใช้เซิร์ฟเวอร์แค็ตตาล็อกส่วนกลางเพื่อทำการค้นหา สุดท้ายนี้ พารามิเตอร์ขอบเขตการค้นหาจะระบุว่า dsquery ควรค้นหาแผนผัง Active Directory อย่างไร แบบสำรวจทรีย่อย (ตัวเลือกเริ่มต้น) เข้าถึง StartNode ที่ระบุและรายการย่อยทั้งหมด แบบสำรวจพี่น้องเข้าถึงเฉพาะรายการย่อยของ StartNode และแบบสำรวจฐานเข้าถึงเฉพาะวัตถุ StartNode เท่านั้น เพื่อให้เข้าใจขอบเขตการค้นหาได้ดีขึ้น ลองจินตนาการถึงหน่วยองค์กร (OU) ที่มีทั้งออบเจ็กต์ผู้ใช้และ OU ลูกซึ่งมีออบเจ็กต์เพิ่มเติมด้วย เมื่อใช้แผนผังย่อยเป็นขอบเขต OU, ออบเจ็กต์ผู้ใช้ทั้งหมดที่อยู่ภายใน OU ลูกและเนื้อหาจะถูกสอบถาม ด้วยขอบเขตระดับเดียว ระบบจะสอบถามเฉพาะผู้ใช้ที่อยู่ใน OU เท่านั้น แต่จะไม่รวม OU ระดับล่างและเนื้อหาในนั้น การสืบค้นพื้นฐานจะสืบค้น OU เองเท่านั้น โดยไม่ต้องสืบค้นออบเจ็กต์ที่มีอยู่ สุดท้าย คุณสามารถใช้รูปแบบเอาต์พุตเพื่อควบคุมวิธีจัดรูปแบบผลลัพธ์ dsquery ตามค่าเริ่มต้น dsquery จะส่งกลับชื่อที่แตกต่างของวัตถุทั้งหมดที่ตรงกับแบบสอบถาม บางอย่างเช่นนี้:

"cn=afuller,ou=การฝึกอบรมdc=contoso,dc=com"
"cn=rking,ou=ITTraining,ou=Training,dc=contoso,dc=com" เมื่อต้องการสอบถามออบเจ็กต์ผู้ใช้ทั้งหมดที่มีอยู่ในหน่วยธุรกิจ IT และ OU รอง ให้ใช้ดังต่อไปนี้:

ผู้ใช้ dsquery ou=IT,dc=contoso,dc=com

การสืบค้นสามารถทำได้แม่นยำยิ่งขึ้นด้วยการเพิ่มตัวเลือกเพิ่มเติม เช่น -disabled ซึ่งจะส่งคืนเฉพาะบัญชีผู้ใช้ที่ถูกปิดใช้งานเท่านั้น -inactive x ส่งคืนเฉพาะผู้ใช้ที่ไม่ได้เชื่อมต่อเป็นเวลา x หรือมากกว่าสัปดาห์ หรือ -stalepwd x ส่งคืนเฉพาะผู้ใช้ที่ไม่ได้เปลี่ยนรหัสผ่านเป็นเวลา x วันขึ้นไป

ขึ้นอยู่กับจำนวนของอ็อบเจ็กต์ในไดเร็กทอรี คุณอาจต้องระบุตัวเลือก -limit x เมื่อรันเคียวรี ตามค่าเริ่มต้น dsquery ส่งคืนอ็อบเจ็กต์สูงสุด 100 รายการที่ตรงกับพารามิเตอร์การสืบค้น แต่คุณสามารถระบุจำนวนที่มากขึ้นได้ เช่น -limit 500 หรือใช้ -limit 0 เพื่อให้ dsquery ส่งคืนอ็อบเจ็กต์ที่ตรงกันทั้งหมด

คุณยังสามารถใช้เมนูย่อยอื่นเพื่อทำการสืบค้นที่เป็นประโยชน์กับออบเจ็กต์ประเภทอื่นได้ พิจารณาแบบสอบถามต่อไปนี้ ซึ่งส่งคืนแต่ละเครือข่ายย่อยที่กำหนดไว้ในไซต์และบริการ Active Directory และรวมอยู่ในพื้นที่ที่อยู่ 10.1.x.x:

ซับเน็ต dsquery – ชื่อ 10.1.*

และคำสั่งต่อไปนี้สามารถใช้เพื่อส่งคืนแต่ละเครือข่ายย่อยที่อยู่บนเว็บไซต์ Corp:

เครือข่ายย่อย dsquery –site Corp

เมื่อใช้เมนูย่อยถัดไป คุณสามารถกำหนดจำนวนตัวควบคุมโดเมนในฟอเรสต์ที่ได้รับการกำหนดค่าให้ทำงานเป็นเซิร์ฟเวอร์แค็ตตาล็อกส่วนกลางได้อย่างรวดเร็ว:

เซิร์ฟเวอร์ dsquery –forest –isgc

คุณยังสามารถใช้ไวยากรณ์นี้เพื่อให้ง่ายต่อการระบุตัวควบคุมโดเมนในโดเมนเฉพาะที่มีบทบาท FSMO ของโปรแกรมจำลองตัวควบคุมโดเมนหลัก (PDC):

เซิร์ฟเวอร์ dsquery –hasfsmo pdc

เช่นเดียวกับคำสั่ง ds* อื่นๆ ที่มีเมนูย่อย คุณจะสามารถดูตัวเลือกทั้งหมดที่มีอยู่ในเมนูย่อย dsquery เฉพาะได้โดยป้อน บรรทัดคำสั่งและการป้อนผู้ใช้ dsquery /?, คอมพิวเตอร์ dsquery /?, เครือข่ายย่อย dsquery /? และอื่น ๆ

เคล็ดลับเพิ่มเติมคือการไพพ์ข้อมูล dsquery ขาออกไปยังเครื่องมืออื่น เช่น dsmod โดยใช้คำสั่ง | (SHIFT+แบ็กสแลชสำหรับรูปแบบแป้นพิมพ์ภาษาอังกฤษ) ตัวอย่างเช่น บริษัทได้เปลี่ยนชื่อแผนกจาก "การฝึกอบรม" เป็น "การพัฒนาภายใน" และตอนนี้จำเป็นต้องอัปเดตช่องคำอธิบายสำหรับผู้ใช้แต่ละรายที่อยู่ในแผนกนี้ ด้วยบรรทัดคำสั่งเดียว คุณสามารถสอบถามอ็อบเจ็กต์ผู้ใช้ทั้งหมดที่มีฟิลด์คำอธิบายการเตรียมใช้งาน จากนั้นแทนที่ฟิลด์คำอธิบายนั้นสำหรับแพ็คเกจทั้งหมดดังต่อไปนี้:

ผู้ใช้ dsquery –คำอธิบาย "การฝึกอบรม" | ดีเอสเอ็มดี
-คำอธิบาย "การพัฒนาภายใน"

บุคคลที่สามบางรายค้นพบ

เนื่องจาก Active Directory เป็นไปตามมาตรฐาน LDAP คุณจึงสามารถสืบค้นและเปลี่ยนแปลงได้โดยใช้เครื่องมือใดก็ได้ที่เข้าใจ LDAP ผู้จำหน่ายบุคคลที่สามหลายรายได้เปิดตัวเครื่องมือแบบชำระเงินเพื่อช่วยในการดูแลระบบ Active Directory แต่บางครั้งคุณจะพบอัญมณีจริงที่ให้บริการฟรี นี่เป็นเรื่องจริงโดยเฉพาะอย่างยิ่งกับคอลเลกชันที่สร้างโดยบริการไดเร็กทอรี MVP Joe Richards และสามารถดาวน์โหลดได้ที่ joeware.net/freetools ในนั้นคุณจะพบเครื่องมือมากมายที่ช่วยแก้ปัญหาต่างๆ สามคนที่ฉันกลับมาอย่างต่อเนื่องคือ adfind, admod และ oldcmp

Adfind และ Admod

Adfind และ admod คล้ายกับ dsquery และ dsmod adfind เป็นเครื่องมือสืบค้นบรรทัดคำสั่งสำหรับ Active Directory และ admod สามารถสร้าง ลบ หรือแก้ไขออบเจ็กต์ Active Directory ได้

ต่างจากเครื่องมือ ds* ซึ่งมีหลายเมนูย่อยและตัวเลือกที่แตกต่างกันขึ้นอยู่กับประเภทของออบเจ็กต์ adfind และ admod จะใช้ไวยากรณ์เดียวกันโดยไม่คำนึงถึงประเภทของการสืบค้นหรือการเปลี่ยนแปลงที่กำลังดำเนินการ ไวยากรณ์พื้นฐานสำหรับ adfind คือ:

ค้นหา –b -s -f
คุณสมบัติที่ต้องการ

แบบสอบถามสำหรับชื่อที่แตกต่างและคำอธิบายของวัตถุคอมพิวเตอร์ทั้งหมดในโดเมนจะมีลักษณะดังนี้:

adfind –b dc=contoso,dc=com –s ทรีย่อย –f (objectclass=คอมพิวเตอร์) dn
คำอธิบาย

แบบสอบถามสำหรับวัตถุผู้ใช้ทั้งหมดจะมีลักษณะดังนี้:

adfind –b dc=contoso,dc=com –s ทรีย่อย –f "(&(objectcategory=person)
(objectclass=user))" คำอธิบาย dn

โปรดทราบว่ายกเว้นการสืบค้นเนื้อหา LDAP ไวยากรณ์ไม่มีการเปลี่ยนแปลง

เมื่อทำงานกับ adfind คุณจะพบทางลัดมากมายสำหรับการเขียนพารามิเตอร์ที่ช่วยขจัดงานพิมพ์ที่ไม่จำเป็น ตัวอย่างเช่น ตัวเลือก -default สามารถแทนที่ -b dc=contoso,dc=com ในตัวอย่างก่อนหน้านี้ และค้นหาทั้งโดเมน -gc ค้นหาตามการรวบรวมขยะ (GC) และส่งคืนผู้ใช้ทั้งหมดในฟอเรสต์ Active Directory ของคุณ อ็อพชัน -rb ยังสามารถใช้เพื่อตั้งค่าฐานสัมพัทธ์สำหรับการค้นหา ถ้าเช่น คุณต้องค้นหาหน่วยโครงสร้าง "การฝึกอบรม" ในโดเมน phl.east.us.contoso.com คุณจะประหยัดเวลาได้อย่างมากโดยเพียงระบุ –default –rb ou=Training แทน –b ou= การฝึกอบรม dc=phl, dc=east,dc=us,dc=contoso,dc=com

Adfind ยังสามารถดำเนินการฟังก์ชันการค้นหาขั้นสูงจำนวนหนึ่งซึ่งยากต่อการจัดการจากบรรทัดคำสั่งหากไม่มี

ตัวอย่างการใช้ตัวเลือก -asq จะขอ "แสดงการเป็นสมาชิกกลุ่มของสมาชิก HelpDesk" เช่นนี้

adfind –default –rb cn=HelpDesk,ou=IT –asq สมาชิก memberOf

Admod ตามชื่อโปรแกรมคือใช้เพื่อแก้ไขอ็อบเจ็กต์ใน Active Directory เช่นเดียวกับ adfind ไม่มีเมนูย่อยพิเศษที่มีไวยากรณ์ของตัวเองที่คุณต้องจำ admod ใช้ไวยากรณ์เดียวกันโดยไม่คำนึงถึงประเภทของวัตถุที่กำลังประมวลผล Admod ยังสามารถใช้เพื่อเพิ่ม ย้าย เปลี่ยนชื่อ ลบ และแม้แต่กู้คืนอ็อบเจ็กต์โดยการเพิ่มตัวเลือกที่เหมาะสม เช่น -add, -rm, -move, -undel และเช่นเดียวกับใน dsquery และ dsmod | สามารถใช้เพื่อไปป์ข้อมูลคำขอ adfind เพื่อ admod

โปรดทราบว่าการดำเนินการกู้คืนโดยใช้ admod เป็นการดำเนินการง่ายๆ ในการกู้คืนออบเจ็กต์ tombstone ซึ่งคุณลักษณะส่วนใหญ่ของออบเจ็กต์ได้ถูกลบออกไปแล้ว หากต้องการกู้คืนออบเจ็กต์ที่มีคุณลักษณะทั้งหมดโดยสมบูรณ์ คุณจะต้องดำเนินการกู้คืนออบเจ็กต์แบบบังคับ

มีเครื่องมืออื่นจากคอลเลกชันโปรแกรมของ Joe ที่ฉันคิดว่าเป็นส่วนสำคัญของชุดเครื่องมืออัตโนมัติของฉัน: oldcmp ซึ่งค้นหาฐานข้อมูล Active Directory เพื่อหาข้อมูลประจำตัวของคอมพิวเตอร์ที่ไม่ได้ใช้งานตามจำนวนสัปดาห์ที่ระบุและสามารถทำสิ่งต่อไปนี้:

  • สร้างรายงานเกี่ยวกับบัญชีโดยไม่ต้องดำเนินการใดๆ กับบัญชีเหล่านั้น
  • ปิดการใช้งานบัญชีคอมพิวเตอร์ที่ไม่ได้ใช้
  • ย้ายบัญชีคอมพิวเตอร์ไปยังหน่วยโครงสร้างอื่นที่กำหนดไว้ล่วงหน้า
  • ลบบัญชีคอมพิวเตอร์อย่างสมบูรณ์

ฉันทราบว่าเนื่องจาก oldcmp อาจทำให้เกิดความเสียหายร้ายแรงต่อไดเร็กทอรีได้ จึงมาพร้อมกับฟีเจอร์ความปลอดภัยในตัวหลายประการ จะไม่ลบบัญชีที่ไม่ได้ปิดใช้งานก่อนหน้านี้ (เว้นแต่คุณจะพูดว่า "ไม่ ฉันอยากทำสิ่งนี้จริงๆ!" ในบรรทัดคำสั่ง) จะไม่ปรับเปลี่ยนวัตถุมากกว่า 10 ครั้งในแต่ละครั้ง (เว้นแต่ อีกครั้ง จะระบุไว้เป็นอย่างอื่นโดยเฉพาะ) และจะไม่ทำอะไรกับบัญชีคอมพิวเตอร์ของตัวควบคุมโดเมน

ตอนนี้ Joe ได้อัปเดต oldcmp เพื่อให้สามารถทำหน้าที่ที่คล้ายกันกับบัญชีผู้ใช้ที่ไม่ได้ใช้งานตามระยะเวลาที่กำหนด

สำหรับสภาพแวดล้อม Active Directory ขนาดเล็ก หรือสภาพแวดล้อมที่คุณทำงานโดยเพิ่มหรือเปลี่ยนแปลงครั้งละหนึ่งหรือสองครั้งเท่านั้น เครื่องมือ GUI เช่น ผู้ใช้ Active Directory และคอมพิวเตอร์ อาจเพียงพอสำหรับการดูแลระบบในแต่ละวัน แต่จำเป็นต้องเพิ่ม เป็นประจำทุกวัน หรือเปลี่ยนแปลง Object จำนวนมาก หรือเพียงต้องการหาโซลูชั่นที่มีประสิทธิภาพมากขึ้นสำหรับงานธุรการ การเปลี่ยนมาใช้ Command Line จะทำให้กระบวนการสร้าง เปลี่ยนแปลง และลบ Object ใน Active Directory เร็วขึ้นอย่างมาก ดังที่แสดงไว้ด้านบน มีเครื่องมือฟรีที่ยืดหยุ่นและทรงพลังจำนวนหนึ่ง มีทั้งแบบติดตั้งใน Windows และเผยแพร่โดยสมาชิกของชุมชน Active Directory คนใดคนหนึ่งสามารถปรับปรุงประสิทธิภาพการทำงานของผู้ดูแลระบบ Active Directory ได้อย่างมาก และเมื่อรวมกันแล้วพวกเขาก็มีความสำคัญต่องานประจำวันของเขามากยิ่งขึ้น

Laura E. Hunter เป็น Microsoft MVP สี่สมัยสำหรับ Windows Server Networking Tools เธอเป็นผู้เขียน Active Directory Reference Guide ฉบับที่สอง (O'Reilly, 2006) ด้วยประสบการณ์สิบปีในอุตสาหกรรมไอที ปัจจุบัน Laura ทำงานเป็นผู้ออกแบบ Active Directory ให้กับบริษัทวิศวกรรมระดับโลก เธอยัง ถือใบรับรองอุตสาหกรรมหลายใบและเป็นวิทยากรประจำในการประชุมกลุ่มผู้ใช้และการประชุมอุตสาหกรรม