【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

相关推荐
sdaxue.com18 分钟前
帝国CMS:如何去掉帝国CMS登录界面的认证码登录
数据库·github·网站·帝国cms·认证码
m0_7482475529 分钟前
github webhooks 实现网站自动更新
github
张国荣家的弟弟2 小时前
【Yonghong 企业日常问题04】永洪BI可视化工具Linux部署全攻略(部署详解版)
linux·运维·github
油泼辣子多加3 小时前
2024年12月23日Github流行趋势
github
lsalp5 小时前
OpenAI于2024年12月21日在GitHub上正式发布了实时嵌入式SDK。支持ESP32-S3
物联网·github·esp32-s3
诸神缄默不语7 小时前
如何在服务器上克隆、pull、push GitHub私有项目
运维·github
dami_king8 小时前
项目开源能够带来什么?从中得到了什么?
开源·gitlab·github
沉默王二10 小时前
虾皮开的很高,还有签字费。
后端·面试·github
苏三有春10 小时前
五分钟学会如何在GitHub上自动化部署个人博客(hugo框架 + stack主题)
git·go·github
油泼辣子多加21 小时前
2024年12月18日Github流行趋势
github