Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Windows Server

การเป็นสมาชิกกลุ่มตามเวลา (Temporary) ใน Active Directory

Active Directory ใน Windows Server 2016 ได้นำเสนอฟีเจอร์น่าสนใจที่ช่วยให้คุณเพิ่มผู้ใช้เข้ากลุ่มความปลอดภัยของ AD แบบชั่วคราว ฟีเจอร์นี้เรียกว่า Temporary Group Membership (Time Based) สามารถใช้ได้เมื่อต้องการให้สิทธิ์ผู้ใช้งานบางอย่างตามการเป็นสมาชิกกลุ่มความปลอดภัยของ AD หลังจากเวลาที่กำหนดหมดไป ผู้ใช้จะถูกลบออกจากกลุ่มความปลอดภัยโดยอัตโนมัติ (โดยไม่ต้องมีการแทรกแซงของผู้ดูแลระบบ)

การเปิดใช้งานฟีเจอร์ Privileged Access Management

เพื่อใช้ Temporary Group Membership คุณต้องเปิดใช้งาน Privileged Access Management Feature ในป่า Active Directory ของคุณ คล้ายกับ AD Recycle Bin (ซึ่งช่วยกู้คืนวัตถุที่ถูกลบ) คุณจะไม่สามารถปิดใช้งาน PAM ได้หลังจากเปิดใช้งานแล้ว

ตรวจสอบให้แน่ใจว่าป่า AD ของคุณทำงานที่ระดับฟังก์ชันป่า Windows Server 2016 (หรือสูงกว่า):

(Get-ADForest).ForestMode

ตรวจสอบสถานะ PAM Feature

ตรวจสอบว่าฟีเจอร์ Privileged Access Management เปิดใช้งานอยู่ในป่าปัจจุบันหรือไม่ โดยใช้คำสั่งจากโมดูล AD PowerShell:

Get-ADOptionalFeature -filter "name -eq 'privileged access management feature'"

เราต้องการค่าของพารามิเตอร์ EnableScopes ในตัวอย่างนี้เป็นค่าว่าง หมายความว่า Privileged Access Management Feature ยังไม่ได้เปิดใช้งานสำหรับป่านี้

เปิดใช้งาน PAM Feature

ใช้คำสั่ง Enable-ADOptionalFeature และระบุชื่อป่าของคุณเป็นอาร์กิวเมนต์หนึ่ง:

Enable-ADOptionalFeature 'Privileged Access Management Feature' -Scope ForestOrConfigurationSet -Target contoso.com

หากเกิดข้อผิดพลาด Enable-ADOptionalFeature: The SMO role ownership could not be verified because its directory partition has not replicated successfully with at least one replication partner ให้ตรวจสอบสถานะของโดเมนคอนโทรลเลอร์และการจำลอง AD รวมถึงความพร้อมใช้งานของเจ้าของบทบาท FSMO บังคับการจำลอง AD 手动

รันคำสั่ง Get-ADOptionalFeature -filter "name -eq 'privileged access management feature'" | select EnabledScopes และตรวจสอบว่าฟิลด์ EnableScopes ไม่ได้เป็นค่าว่าง

เพิ่มผู้ใช้เข้ากลุ่ม AD แบบชั่วคราว

หลังจากเปิดใช้งาน PAM แล้ว คุณสามารถลองเพิ่มผู้ใช้เข้ากลุ่ม AD โดยใช้อาร์กิวเมนต์พิเศษ MemberTimeToLive ของคำสั่ง Add-ADGroupMember เหมาะสมที่จะตั้งค่าช่วงเวลา (TTL) โดยใช้คำสั่ง New-TimeSpan สมมติว่าคุณต้องการเพิ่มผู้ใช้ test1 เข้ากลุ่ม Domain Admins เป็นเวลา 15 นาที:

$ttl = New-TimeSpan -Minutes 15
Add-ADGroupMember -Identity "Domain Admins" -Members test1 -MemberTimeToLive $ttl
⚠ ข้อควรระวัง: ไม่แนะนำให้ใช้การเป็นสมาชิกกลุ่มชั่วคราวเพื่อให้สิทธิ์เข้าถึงกลุ่มโดเมนที่มีสิทธิ์สูง (Enterprise Admins, Domain Admins เป็นต้น) โดยทั่วไป Temporary Group Membership ใช้เพื่อให้สิทธิ์เข้าถึงกลุ่มทรัพยากร ในการให้สิทธิ์ผู้ดูแลระบบ ควรใช้การมอบสิทธิ์ Active Directory หรือ PowerShell Just Enough Administration (JEA)

ตรวจสอบเวลาที่เหลือของการเป็นสมาชิก

คุณสามารถตรวจสอบได้ว่าผู้ใช้จะเป็นสมาชิกกลุ่มนานเท่าไรโดยใช้คำสั่ง Get-ADGroup:

Get-ADGroup 'Domain Admins' -Property member –ShowMemberTimeToLive

ในผลลัพธ์คุณจะเห็นรายการเช่น <TTL=187,CN=test1,CN=Users,DC=woshub,DC=loc> สำหรับสมาชิกกลุ่ม ค่า TTL แสดงเป็นวินาที หมายความว่าผู้ใช้ถูกเพิ่มเข้ากลุ่ม Domain Admins แบบชั่วคราว หลังจาก 187 วินาที เขาจะถูกลบออกจากกลุ่มโดยอัตโนมัติ

การหมดอายุของบัตร Kerberos

บัตร Kerberos ของผู้ใช้ก็จะหมดอายุเช่นกัน เนื่องจาก KDC ออกบัตรที่มีอายุการใช้งานเท่ากับค่า TTL ที่น้อยที่สุดสำหรับผู้ใช้ที่มีการเป็นสมาชิกกลุ่ม AD แบบชั่วคราว

คุณสามารถตรวจสอบเวลาต่อไปที่จะต่ออายุบัตร Kerberos ได้ด้วยคำสั่ง:

klist

เวลาต่ออายุของบัตร TGT ถัดไปจะแสดงในพารามิเตอร์ Renew Time

กลุ่ม AD ชั่วคราว (Temporary AD Groups)

นอกจากนี้ใน AD (ที่มีระดับฟังก์ชันป่า Windows2003Forest หรือใหม่กว่า) คุณยังสามารถสร้างกลุ่ม AD ชั่วคราวได้ โดยใช้คลาส dynamicObject การลบกลุ่มแบบนี้โดยอัตโนมัติจะดำเนินการโดยกระบวนการ Active Directory Garbage Collection

ตัวอย่างการสร้างกลุ่มชั่วคราวที่จะถูกลบโดยอัตโนมัติหลังจากหนึ่งเดือน (2592000 = 31 * 24 * 60 * 60):

$OU = [adsi]"LDAP://OU=Groups,OU=Munich,OU=DE,DC=woshub,DC=loc"
$Group = $OU.Create("group","cn=MUN-FS01_Public_tmp")
$Group.PutEx(2,"objectClass",@("dynamicObject","group"))
$Group.Put("entryTTL","2678400")
$Group.SetInfo()

เปิดแอตทริบิวต์ของกลุ่มในคอนโซล ADUC ให้สังเกตแอตทริบิวต์ entryTTL ซึ่งบ่งชี้ว่ากลุ่ม AD นี้จะถูกลบในอีกกี่วินาที

ก่อนหน้านี้ เพื่อนำการเป็นสมาชิกกลุ่ม AD แบบชั่วคราวไปใช้งาน คุณต้องใช้ dynamic objects, สคริปต์ต่างๆ และงานตามกำหนดเวลา หรือระบบที่ซับซ้อน (Microsoft Forefront Identity Manager เป็นต้น) ตอนนี้ใน Windows Server 2016/2019 ฟีเจอร์ที่สะดวกนี้พร้อมใช้งานทันที