#oidc #server #issuer

bin+lib 车库门

一个简单的OIDC提供者,仅用于演示目的

5个版本

0.1.0 2024年6月5日
0.1.0-rc.22024年6月4日
0.1.0-rc.12024年6月3日
0.1.0-alpha.22024年5月27日
0.1.0-alpha.12024年5月17日

280身份验证

Download history 123/week @ 2024-05-16 152/week @ 2024-05-23 420/week @ 2024-05-30 159/week @ 2024-06-06 12/week @ 2024-06-13 21/week @ 2024-06-20 26/week @ 2024-06-27 6/week @ 2024-07-04 31/week @ 2024-07-11 12/week @ 2024-07-18 8/week @ 2024-07-25 41/week @ 2024-08-01 11/week @ 2024-08-08

每月72 次下载

Apache-2.0

48KB
1K SLoC

车库门

crates.io GitHub release (latest SemVer) CI

一个简单的OIDC提供者,仅用于演示目的!

理由

OpenID Connect (OIDC) 很好,但很复杂。有一些很好的解决方案允许您设置OIDC提供者(服务器)。然而,有时所有这些解决方案都是过度设计。所需要的只是一个简单的单用户名/密码设置,只需一个配置文件,无需数据库,无需定制,无需云端服务。

这就是痒点,这个项目试图成为挠痒痒的工具。

目标和非目标

目标

  • 一个可以独立运行的OIDC提供者,提供一组预配置的用户和客户端
  • 允许将其嵌入到其他应用程序中。
  • 开箱即用
  • 遵循 "规范"。

拉伸目标

  • 允许与其他服务器框架的互操作性。

非目标

  • 对于OIDC世界来说,这并没有真正的 "范围之外",如果你提出一个PR!😜

状态

这是不安全的!但它确实允许您通过一些基本的公共和保密客户端的认证流程。

再次强调,这是不安全的!它甚至不检查密码!它也不加密令牌。它忽略了它应该忽略的所有事情。

然而,它允许在某些情况下使用它,尽管使用它时实际上并不需要(演示目的!)

另请参阅:待办事项

替代方案

设置类似Keycloak的东西。它是安全的。它是经过测试的。然而,我会需要更多的资源。如果你想得到一个安全的东西,这是必须的。

有一个现有的项目:oxide-auth。我认为它值得一看!实际上它是这个项目的基。

然而,缺点是它将自己视为实现OAuth2提供者的工具箱。这听起来很棒,但也会因为其目标是对所有类型的依赖项无差别而带来很多复杂性。并且一些重要的部分(特别是对于OIDC)需要你自己提供。

依赖关系

~32–47MB
~1M SLoC