📌 项目地址goauthentik/authentik | ⭐ 22,975 颗星 | 🔧 Python | 📜 未标注

它解决的是什么问题

现代应用的身份认证协议五花八门:企业内部系统可能用 LDAP,SaaS 工具用 SAML,自研应用用 OIDC,网络设备用 RADIUS。如果每个应用各自对接一套认证,管理用户、权限、会话就成了噩梦。authentik 是一个开源的身份提供商(IdP),把所有协议统一到一个平台后面,用户只需在 authentik 登录一次,就能访问所有接入的应用。它支持的协议包括 SAML、OAuth2/OIDC、LDAP、RADIUS 等,并且设计目标是既能跑在家里的小服务器上,也能支撑大规模生产集群。

怎么部署和使用

README 给出了安装方式的优先级建议:

由于 README 没有提供具体的 docker-compose.yml 内容或命令行示例,所以实际安装时务必参考上面的官方文档。部署完成后,你需要在 authentik 中创建应用(Application)和提供商(Provider),选择对应协议(如 OIDC),然后配置外部应用的回调地址。之后外部应用会将用户重定向到 authentik 的登录页,认证完成后再跳转回去。

和同类工具的区别

同类开源 IdP 还有 Keycloak、Authelia、Casdoor 等。authentik 的突出特点是协议覆盖广:SAML、OIDC、LDAP、RADIUS 同时支持,特别是 LDAP 和 RADIUS 让它能接管传统网络设备、旧系统的认证,这一点一般 Web 登录型工具做不到。另一个特点是为自托管场景做了轻量级设计,可以用 Docker Compose 快速跑起来,同时企业版提供 Okta、Auth0、Entra ID、Ping Identity 的替代方案,适合需要商业支持和合规性的组织。它的界面也同时提供浅色/深色主题,从项目截图可以看出 UI 比较现代。

需要注意的事项

  • 这是 Python 项目,核心代码和组件都在 GitHub 上,Star 数 22975,社区活跃度较高。
  • 企业版是商业收费的,但核心开源版本功能已经足够自托管或小团队使用。如果你需要大规模身份管理、企业级支持,才考虑企业版。
  • 安全相关的问题请参考仓库根目录的 SECURITY.md。身份认证系统属于关键基础设施,生产环境务必按官方文档配置反向代理、HTTPS、备份和更新策略。
  • 如果你希望贡献代码或文档,需要先看 开发者文档;文档改动要遵循 Style Guide

简而言之,如果你手头有不同协议的系统需要统一登录,或者想摆脱商业 IdP 的许可费用,authentik 是一个值得拉起来试一下的项目。

这篇文章对你有帮助吗?

发表回复