【Github】一个用于Active Directory的自助密码更改工具

在众多企业的日常运营中,Active Directory(AD)扮演着核心角色,负责管理和维护员工账户。然而,密码重置作为IT支持团队的常规工作之一,往往既耗时又繁琐。虽然一些商业解决方案和通过Windows服务器上RDS服务可以应对密码修改的需求,但这些方法可能带来额外的成本和局限性。在这种情况下,探索开源且免费的替代方案变得尤为重要,PassCore正是这样一种解决方案。

PassCore是一个基于Web的自助服务密码更改工具,它允许用户在Active Directory或LDAP环境中轻松地自行更改密码,前提是他们的账户未被禁用。这一工具由Unosquare开发,采用C#语言编写,并利用ASP.NET Core框架与Material UI(React组件)精心打造用户界面。PassCore的一个显著优势是其跨平台兼容性:它不仅能够在Windows和Linux服务器上运行,而且还支持通过Docker进行部署,这使得它能够在各种不同的操作系统和环境中灵活应用。

遗憾的是,PassCore项目的仓库在2023年6月2日被其所有者归档,目前只能读取,不再接受更改或贡献。尽管项目已归档,但其仍然是一个强大的自助密码修改工具,值得企业探索和利用,以优化其密码管理流程。以下将介绍如何在IIS中部署该项目

前提条件:

  1. 服务器已经加入Windows AD域
  2. 服务器上已经安装并且正常运行IIS
  3. 安装.NET Core 3.1 (SDK / HOSTING)
    地址: https://dotnet.microsoft.com/zh-cn/download/dotnet/3.1
    dotnet-sdk:https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-3.1.426-windows-x64-installer
    dotnet-hosting:https://dotnet.microsoft.com/zh-cn/download/dotnet/thank-you/runtime-aspnetcore-3.1.32-windows-hosting-bundle-installer

开始部署

  1. 下载PassCore

    下载地址:https://github.com/unosquare/passcore/releases

    建议下载PassCore423版本,PassCore424这边部署下来后有个问题,即使密码修改成功了,仍然后报错。

  2. 将上一步下载的压缩包解压到C:\PassCore或者其他合适的位置

  3. 打开IIS管理器,右击"应用程序池",选择"添加应用程序池"

  4. 在弹出的窗口中,在"名称"下输入PassCore Application Pool,在".NET CLR版本"下选择无托管代码,在"托管管道模式"下选择集成最后,勾选"立即启动应用程序池"。设置完所有后单击"确定"。

  5. 在刚刚创建的应用程序池上右击,然后选择高级设置...。将"启动模式"更改为始终运行,将"闲置超时(分钟)"更改为0。单击"确定"。这将确保PassCore在长时间不活动后仍能保持响应。

  6. 回到您的IIS管理器,右键单击"站点",然后选择"添加网站"。

  7. 弹出的对话框。在"站点名称"下输入PassCore。在"应用程序池"下单击"选择",并确保您选择了PassCore Application Pool。在"物理路径"下,单击省略号(...),导航到您提取PassCore的文件夹(步骤二解压的路径),修改端口号为8080

  8. 选择上一步新建的站点,点击右侧浏览网站浏览*:8080 (http)

  9. 成功部署,得到以下结果,但还不能正常使用,需要根据实际情况对配置文件进行配置。

  10. 配置文件位于步骤二解压的目录下的appsettings.json,可以根据自己实际情况修改配置,以下是这边测试的配置,仅供参考。

  11. 修改完配置文件后,至IIS管理器中重启站点,即可生效。如果一切设置正确,应该能够在浏览器中正常使用PassCore来完成自助修改AD密码了。
    重要:
    不要在没有SSL证书的情况下提供此网站到生成环境中,因为请求和响应将以明文传输,攻击者可以轻松检索这些消息并收集用户名和密码。

总结

PassCore旨在提供一个简单、易用且安全的解决方案,帮助组织管理用户的密码更改流程,同时减少IT支持团队的工作负担。由于其开源和免费的属性,它特别适合预算有限或希望节省成本的组织使用。开发者可以通过项目的GitHub页面下载源代码,并根据自己的需求进行定制和扩展。

参考:

A self-service password management tool for Active Directory

https://github.com/unosquare/passcore

相关推荐
Stara05117 小时前
Git推送+拉去+uwsgi+Nginx服务器部署项目
git·python·mysql·nginx·gitee·github·uwsgi
不能只会打代码12 小时前
大学课程项目中的记忆深刻 Bug —— 一次意外的数组越界
java·github·intellij-idea·话题博客
Web极客码1 天前
如何修复WordPress卡在维护模式
服务器·网络·github
油泼辣子多加1 天前
2024年11月17日Github流行趋势
github
海里有太阳1 天前
gitHub常用操作
github
量子孤岛1 天前
建立独一无二的GitHub Profile
github
小小宇宙中微子1 天前
QDUOJ(青岛大学在线评测系统)
github
Smilejudy1 天前
从 ES Kafka Mongodb Restful ... 取到 json 之后
后端·github
明天最后2 天前
由于Two-Factor Authentication导致github发布npm包失败
前端·npm·github
n***85942 天前
GitHub 开源项目 Puter :云端互联操作系统
github