อาจขึ้นอยู่กับการตั้งค่าใน Active Directory ซึ่งตั้งค่าไว้ใน Group Policy ใน: การเข้าสู่ระบบแบบโต้ตอบ: แจ้งให้ผู้ใช้เปลี่ยนรหัสผ่านก่อนหมดอายุ.
โปรดตรวจสอบกับผู้ดูแลระบบ AD เป็นไปได้ที่จะกำหนดขอบเขตนโยบายนี้ไปยัง OU ดังนั้นหากบัญชีของคุณอยู่ใน OU ใดโดยเฉพาะ ก็อาจตั้งคำเตือนให้ยาวขึ้นที่นั่นได้ มันคือ ในทางเทคนิค เป็นไปได้อย่างน้อย อาจมีข้อจำกัดในการปฏิบัติงาน
นอกจากนี้ยังเป็นเครื่องที่เข้าร่วมผ่าน เอสเอสดี
? คุณควรอ่านบทความนี้เพื่อดูว่ามีบางอย่างอยู่หรือไม่ sssd.conf
ที่อาจลบล้างค่าที่ส่งมาจาก AD หากไม่ได้ตั้งค่าไว้ sssd.conf
เลย มันจะสืบทอดสิ่งที่ AD ส่งมาเท่านั้น https://access.redhat.com/articles/3027531
หากผู้ดูแลระบบโดเมนระบุว่าตั้งค่าเป็น 7 วันและจะไม่เปลี่ยนแปลง ก็ไม่ชัดเจนว่าคุณจะสามารถกำหนดค่าได้หรือไม่ sssd.conf
เพื่อให้ช่วงเวลาการเตือนนานขึ้น - ฉันสงสัยว่ามันจะแทนที่ AD ด้วยวิธีนั้น
หรือคุณสามารถทำแบบสอบถาม LDAP ในบัญชีผู้ใช้ AD และคว้าพร็อพเพอร์ตี้ที่เรียกว่า msDS-UserPasswordExpiryTimeComputed
- ค่าที่มีเครื่องหมายเกินวันที่ยุค Windows
ในการคำนวณวันที่บนระบบ Linux วันที่ของยุค Windows คือ 1601-01-01T00:00:00Z ซึ่งเป็น 11644473600 วินาทีก่อนยุค *nix (1970-01-01T00:00:00Z) ขีด Windows อยู่ใน 100 นาโนวินาที ดังนั้นสำหรับการคำนวณอย่างง่าย:
$tickInterval = 10,000,000
$unixEpochDiff = 11644473600
# ช่วงเวลาที่บันทึกจาก msDS-UserPasswordExpiryTimeComputed
$ADPasswordExpiryTime = 132985454614249065
$unixTime = ($userPasswordExpiryTime / $tickInterval) - $unixEpochDiff
ในปัจจุบัน ฉันไม่มีวิธีทดสอบการสืบค้น LDAP จากระบบที่ใช้ Linux ไปจนถึง AD แต่ก็คุ้มค่าที่จะลองหากไม่มีอะไรช่วย