V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
saltbo
V2EX  ›  问与答

求问有没有开源的账号系统?

  •  
  •   saltbo · 354 天前 · 2736 次点击
    这是一个创建于 354 天前的主题,其中的信息可能已经有所发展或是发生改变。
    每次做个东西都需要把登录注册,密码修改,密码重置等功能重新做一遍。

    我想应该有开源的账号系统吧。让我换个前端样式就能用
    28 条回复    2019-12-11 11:14:59 +08:00
    loading
        1
    loading   354 天前 via Android
    建议先说语言,我想搭车问 go 的。
    saltbo
        2
    saltbo   354 天前
    @loading 啊哈哈 我也是 Go 的

    但是,我觉得这不影响啊,对外暴露接口就好了。当然有 sdk 更好,哈哈
    Heebe
        3
    Heebe   354 天前
    框架吗?
    这种东西一般都有业务性的,自己可以累积,也可以找一些现成的权限管理系统。
    wangkun025
        4
    wangkun025   354 天前
    Ruby 的话,可以用 devise
    codexboy
        5
    codexboy   354 天前
    看看 keycloak ?
    saltbo
        6
    saltbo   354 天前
    @Heebe 不涉及权限管理 单纯的账号系统 登录验证
    saltbo
        7
    saltbo   354 天前
    我说下我的设想:
    1.具备完整的注册登录、密码修改、密码重置等功能(包含前后端)
    2.前端样式支持自定义,可以根据站点风格调整
    3.支持 SSO,可以在配置文件中注册 sso 跳转的地址
    4.提供相关的验证接口( SDK 更佳)
    saltbo
        8
    saltbo   354 天前
    可以理解为一个账号微服务,它是一个面向 C 端的账号系统,所以不涉及权限问题。因为大多数情况下我们只是做个登录验证而已
    Heebe
        9
    Heebe   354 天前
    @saltbo 换个思路,权限管理设计到的是模块开发,包括权限本身也是模块,去掉或者隐藏就是你要的单纯的用户登录了。
    mcfog
        10
    mcfog   354 天前   ❤️ 3
    话说发明 jwt 的那家公司就是卖这个服务的 https://auth0.com/
    abmin521
        11
    abmin521   354 天前 via iPhone
    AD LDAP ?

    增加一个限制 rbac
    saltbo
        12
    saltbo   354 天前
    @mcfog Yeah !就是这种。 但是我想要个开源的,自己部署使用。 他这个开发者版本也要$23/mo
    saltbo
        13
    saltbo   354 天前
    @abmin521 对 类似 AD LDAP 但是 ldap 太老了 更现代一点
    zeyexe
        14
    zeyexe   354 天前
    keycloak +1

    keycloak 功能挺全面的。
    izoabr
        15
    izoabr   354 天前
    以前好像用 Sun 的 OpenAM,但找不到了,就去 hub 上搜了一下,发现一个国产的,据说开源的东西,楼主可以瞧瞧。
    https://github.com/longguikeji/arkid-core
    izoabr
        16
    izoabr   354 天前
    OpenIDM
    huobazi
        17
    huobazi   354 天前
    rails [devise + doorkeeper] 几分钟的事
    des
        18
    des   354 天前 via Android
    ucenter ?
    SharkIng
        19
    SharkIng   354 天前
    https://github.com/pomerium/pomerium 这个是 Go 的但是好像不太符合楼主要求。

    他们的 Github 中有个 repo 叫做 “Awesome Zero trust” 里面有一些其他的可以看看

    另外如果指定要 Go 的话 这里有些列表可以看看 https://github.com/avelino/awesome-go#authentication-and-oauth
    silentstorm
        20
    silentstorm   353 天前 via Android
    LDAP
    saltbo
        21
    saltbo   353 天前
    @zeyexe keycloak 好像很满足 我看看怎么用
    saltbo
        22
    saltbo   353 天前
    @izoabr arkid 也不错 感谢
    saltbo
        23
    saltbo   353 天前
    saltbo
        24
    saltbo   353 天前
    @izoabr arkid 好像和我想要的有点出入:它的登录登录之后只能进入到所谓一账通的后台,并不是直接跳转到指定应用。 他这个设计我理解是企业内部的场景,登录成功后到一个统一的后台可以选择去哪个子系统。
    izoabr
        25
    izoabr   353 天前
    @saltbo #24 我看好像是进去有一个 dashboard,然后点各个应用,不过 python 的有源代码也好改造,就是后面加 redirect 参数,成功之后做个跳转嘛。
    Zimilo
        26
    Zimilo   353 天前   ❤️ 1
    @saltbo 利益相关,我是 arkid 的开发者

    arkid 是一个开源的 idP 实现。arkid 主要的场景是为了解决一个组织各种系统共用一个账号权限管理中心, 比如 wifi、gitlab、云盘、内部 oa、crm 等等。同时有管理后台管理每个人的权限等。

    对于您的场景,您可以在 arkid 中新建一个应用,然后选择对接方式,比如选择 ldap 协议,OAuth 或者使用 http 接口进行对接即可。

    当然也可以把 arkid 仅仅作为某个系统的账号中心,避免像您提到的需要重复开发功能。
    比如我们公司的官网 https://www.longguikeji.com 就是使用 arkid(OAuth2)作为账号中心, 可以支持注册、登录。默认注册完会归类到 arkid 的外部账号中。管理员有 web 界面可以管理注册用户。
    SharkIng
        27
    SharkIng   348 天前
    @saltbo 这个看起来也不错
    saltbo
        28
    saltbo   348 天前
    @SharkIng 哪个?
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1094 人在线   最高记录 5268   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 19:43 · PVG 03:43 · LAX 11:43 · JFK 14:43
    ♥ Do have faith in what you're doing.