เว็บอินเตอร์เฟสเพื่ออนุญาตให้ผู้ใช้เปลี่ยนรหัสผ่าน Active Directory


13

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

นี่ไม่ใช่ปัญหาเมื่อผู้ใช้ส่วนใหญ่มีเครื่อง windows ที่เชื่อมต่อกับเซิร์ฟเวอร์ AD นี้ (และสามารถ ctrl-alt-del เพื่อเปลี่ยนรหัสผ่าน) แต่เราย้ายไปจากที่นั่นและเซิร์ฟเวอร์โฆษณาส่วนใหญ่สำหรับเว็บ ปพลิเคชัน

มีวิธีแก้ปัญหาง่าย ๆ สำหรับสิ่งนี้หรือฉันกำลังดูผู้จัดการ LDAP ตัวใหญ่หรือไม่?

คำตอบ:


7

หากคุณต้องการตัวเลือกนอกเหนือจาก Outlook Web Access ก็ยังคงใช้งานได้ง่ายเช่น:

Set objUser = GetObject("LDAP://cn=myerken,ou=management,dc=fabrikam,dc=com")
objUser.ChangePassword "i5A2sj*!", "jl3R86df"

จากบิตผู้ใช้ของที่เก็บสคริปต์ที่http://www.microsoft.com/technet/scriptcenter/scripts/ad/users/default.mspx?mfr=true

มันจะไม่สำคัญที่จะฝังสิ่งนี้ไว้ในสคริปต์ ASP ฉันบังคับให้ใช้ SSL แม้ว่า :-)

จูเนียร์


4

คุณยังสามารถดูPassCoreโอเพนซอร์สและฟรี:

PassCore เป็นแอพพลิเคชั่นบนเว็บแบบ 1 หน้าที่เขียนด้วยภาษา C # โดยใช้ ASP.NET MVC 4 และบริการไดเรกทอรี อนุญาตให้ผู้ใช้เปลี่ยนรหัสผ่าน Active Directory ด้วยตนเองหากผู้ใช้ไม่ได้ปิดการใช้งาน

( ... )

นี่คือภาพหน้าจอของ UI: PassCore UI



3

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


ฉันได้ติดตั้ง ADSelfService ของ ManageEngine แล้วและทำงานได้ดี นอกจากนี้ยังมีคุณสมบัติอื่น ๆ อีกมากมายซึ่งส่วนใหญ่ฉันยังไม่ได้เล่นเช่นการส่งอีเมลแจ้งเตือนเมื่อรหัสผ่านกำลังจะหมดอายุ
Guss

3

ฉันพบวิธีแก้ไขปัญหานี้จริง ๆ แล้วเป็นสิ่งที่ฉันต้องการ IIS มาพร้อมกับฟังก์ชั่นนี้นอกกรอบมันเพิ่งถูกซ่อน

ฉันใช้บทความนี้เพื่อเริ่มต้น

ขั้นตอนพื้นฐาน:

ตอบเวอร์ชันของ Internet Information Services (IIS) 6.0 ที่มาพร้อมกับ Windows 2003 มีเครื่องมือการดูแลเว็บบางอย่างที่ถูกปิดใช้งานโดยค่าเริ่มต้น ในการเปิดใช้เครื่องมือให้ทำตามขั้นตอนต่อไปนี้:

  • เรียกใช้การจัดการเซิร์ฟเวอร์ข้อมูลทางอินเทอร์เน็ต (IIS)
  • ภายใต้เว็บไซต์เริ่มต้นให้เลือกใหม่ -> ไดเรกทอรีเสมือนเพื่อเริ่มตัวช่วยสร้าง
  • ตั้งชื่อไซต์ IISADMPWD
  • ค่าโฟลเดอร์การเผยแพร่ถูกป้อน C:\windows\system32\inetsrv\iisadmpwd
  • สำหรับการอนุญาตให้ตรวจสอบให้แน่ใจว่าได้อ่านสคริปต์และอ่านแล้ว

จากนั้นหน้าควรเข้าถึงได้ที่http: //localhost/iisadmpwd/aexp2b.asp

หากคุณได้รับ 404 ในไฟล์จริงคุณอาจต้องเปิดใช้เซิร์ฟเวอร์เพื่อเรียกใช้หน้า ASP


1
ดูเหมือนว่าเป็นคุณลักษณะที่มีประโยชน์มาก แต่น่าเสียดายที่มันไม่สามารถใช้ได้กับ Windows 2008 / IIS 7 - ซึ่งเป็นสิ่งที่ฉันเรียกใช้ ดูเหมือนว่าคุณสามารถคัดลอก IISADMPWD เก่าจากการติดตั้ง IIS 6 หากคุณมี: blogs.msdn.com/b/asiatech/archive/2009/03/17/…โชคไม่ดีที่ฉันไม่มี IIS 6 เก่า เกี่ยวกับดังนั้นฉันจะดู :-(
Guss

2

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


0

คำตอบที่ง่าย - ถ้าคุณมี Exchange และ OWA - คือให้เปลี่ยนรหัสผ่านภายใน OWA


0

หากคุณปรับใช้ Sharepoint จะมี WebParts จำนวนหนึ่งที่ออกแบบมาเพื่อให้คุณแก้ไขเนื้อหา Active Directory ได้ ส่วนใหญ่เป็นซอฟต์แวร์ที่ต้องเสียเงิน แต่ไม่ใช่ทุกอย่าง:

http://www.codeplex.com/adselfservice

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.