Веб-интерфейс, позволяющий пользователям изменять свой пароль Active Directory


13

У меня есть несколько веб-приложений, которые используют Active Directory для проверки подлинности. То, что я хотел бы сделать, это предоставить простую веб-страницу, которая позволила бы пользователям обновлять свой пароль AD.

Это не было проблемой, когда у большинства пользователей были машины Windows, которые подключались к этому серверу AD (и могли сменить пароль с помощью ctrl-alt-del), но мы отошли от этого, и сервер AD в основном предназначен для Интернета. Программы.

Есть ли простое решение для этого, или я смотрю на крупных менеджеров 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 :-)

JR


4

Вы также можете взглянуть на бесплатный PassCore с открытым исходным кодом :

PassCore - очень простое одностраничное веб-приложение, написанное на C #, использующее ASP.NET MVC 4 и службы каталогов. Это позволяет пользователям самостоятельно изменять свой пароль Active Directory, если пользователь не отключен.

(...)

Вот скриншот пользовательского интерфейса: PassCore UI



3

Вы можете сделать это, и это довольно просто написать что-то, если у вас есть немного опыта программирования, если нет, то есть множество готовых продуктов для этого:


Я установил ManageEngine ADSelfService, и он отлично работает. Он также имеет множество других функций, большинство из которых я еще не играл, таких как отправка уведомлений по электронной почте, когда истекает срок действия паролей.
Гусс

3

Я на самом деле нашел решение для этого, что почти то, что я хотел. IIS поставляется с этой функциональностью из коробки, она была просто скрыта.

Я использовал эту статью, чтобы начать.

Основные шаги:

О. Версия Internet Information Services (IIS) 6.0, поставляемая с Windows 2003, включает некоторые инструменты веб-администрирования, которые по умолчанию отключены. Чтобы включить инструменты, выполните следующие действия:

  • Запустите управление информационным сервером Интернета (IIS).
  • На веб-сайте по умолчанию выберите New-> virtual Directory, чтобы запустить мастер
  • Назовите сайт IISADMPWD
  • Значение папки публикации - введите C:\windows\system32\inetsrv\iisadmpwd
  • Для разрешений убедитесь, что сценарии Read и Run проверены

Тогда страница должна быть доступна по адресу 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.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.