如果想在 V2EX 获得更好的推广效果,欢迎了解 PRO 会员机制:
https://www.v2ex.com/pro/about

如果你经常使用铜币置顶主题,持有 V2EX Solana Token 会在每日签到时获得额外铜币:
https://www.v2ex.com/solana
Casbin
V2EX  ›  推广

Casdoor: 具有 Web UI 界面的开源身份认证、单点登录平台,支持 GitHub、Gitee、QQ、微信、钉钉登录等

  •  
  •   Casbin ·
    PRO
    · Sep 23, 2021 · 331451 views
    This topic created in 1725 days ago, the information mentioned may be changed or developed.

    UI 优先的统一身份认证系统 Casdoor

    Casdoor 是什么?

    Casdoor 是一个基于 OAuth 2.0 / OIDC 的 UI 优先集中认证 / 单点登录 (SSO) 平台,简单点说,就是 Casdoor 可以帮你解决 用户管理 的难题,你无需开发用户登录注册等与用户鉴权相关的一系列功能,只需几个步骤,简单配置,与你的主应用配合,便可完全托管你的用户模块,简单省心,功能强大。

    仓库地址: https://github.com/casbin/casdoor

    演示地址: https://door.casbin.com/

    官网文档: https://casdoor.org/

    Casdoor 目前作为 Casbin 社区项目统一使用的鉴权平台,项目已开源,希望得到大家的一些建议和 Star~,我们会及时跟进反馈并改正问题哒。

    为什么要用 Casdoor ?

    用户管理一直是项目中非常令人头疼的一个问题,不仅要确保安全性,功能是否完整,方便使用也十分重要。目前大多数应用已从过去单一的账号密码登录,逐渐升级为允许通过第三方平台登录,例如 GitHub 、微信、QQ 等。但是这一套逻辑依然需要开发者去实现,大多数功能偏离了业务。

    Casdoor 就是替开发者们解决这个难题,即 提供一套统一的鉴权平台,只需要简单配置便可完全托管用户模块

    使用的理由也非常简单,总结概括为三句话:

    • 功能完备,操作简单。作为一个需要完全托管用户模块的项目,功能完备必不可少,Casdoor 支持常见用户模块所需要的各种功能。并且配置简单,上手难度低。
    • 开源可控,社区活跃。能否快速得到社区的反馈,解决实际应用中出现的问题也十分重要,否则出了 Bug 没人管岂不是尴尬? Casdoor 有自己的讨论社区 Casnode,也有 QQ 群,均可及时活跃地解决实际应用中的问题。
    • 性能强大,耦合良好。采用 Golang 开发,并发性支持良好,并且内部模块耦合度低,代码易懂,热插拔性好。

    Casdoor 又有哪些特性?

    • 支持普通的账户密码注册登录,也支持各种常见的第三方认证,例如 GitHub 、Facebook 、Google 、Wechat 、QQ 、LinkedIn 等等,截止目前共 9 个平台,并在不断听取用户建议对更多的平台提供支持。
    • 管理方便。Casdoor 内部将模块分为了 5 大类,Organization 、User 、Application 、Token 和 Provider 。可以同时接入多个组织,组织下有不同应用,用户可以通过应用或组织分类,单独管理任何组织、应用或用户的 Token 令牌,轻松管理复杂系统,目前已部署在 Casbin 社区各种系统当作鉴权平台。
    • 自定义程度高。Casdoor 可以随意修改登录方式,例如是否允许密码或第三方登录,自定义应用的注册项数量,是否启用两步验证,以及是否允许各个 Provider 登录、注册等等,高度可插拔。
    • 具备 Swagger API 文档。清晰的 API 介绍,无需阅读源代码即可直接方便调用各个 API 接口,提供定制化功能。
    • 前后端分离架构,部署简单。作为统一认证平台,除了性能,稳定性,新特性之外,易用性也是考量的重要标准,Casdoor 后端使用 Golang 语言开发,前端使用 React.js 框架,使用者只需启动后端服务,并将前端工程文件打包,即可直接使用,操作简单,上手难度低。
    • ...

    总结

    我们希望 Casdoor 能帮助广大开发者们解决用户管理的难题,更专注主要业务,提高开发效率。

    同时作为一个开源项目,我们也非常希望获得大家的使用建议,帮助我们更好地改善项目质量,从功能、易用性等方面更好地满足大家的需求。

    如果使用过程中有任何疑问,欢迎加入社区 QQ 群交流,提 Issues 。当然,提 PR 也是十分欢迎的!

    • QQ 群:645200447

    384 replies    2025-10-08 18:27:29 +08:00
    1  2  3  4  
    podel
        101
    podel  
       Feb 21, 2022
    自动动手支持了 SubMail 的 SMS 服务。能合并到你们开发主干分支不?
    Casbin
        102
    Casbin  
    OP
    PRO
       Feb 21, 2022
    @podel 没问题,可以提 PR 到这里: https://github.com/casdoor/go-sms-sender
    iiusky
        103
    iiusky  
       Feb 22, 2022
    @Casbin 有相关具体的文档教程吗?我好像没看到
    Casbin
        104
    Casbin  
    OP
    PRO
       Feb 22, 2022
    iiusky
        105
    iiusky  
       Feb 22, 2022
    @Casbin 好的麻烦了~我在研究研究 刚用你们的 casbin 自己撸了一套
    adoal
        106
    adoal  
       Feb 28, 2022 via iPhone
    看到这名字我第一反应是支持 CAS 协议…
    Drumming
        107
    Drumming  
       Mar 2, 2022
    https://console.cloud.tencent.com/ciam
    和腾讯云的这个产品好像功能类似
    Casbin
        108
    Casbin  
    OP
    PRO
       Mar 7, 2022
    @iiusky Casdoor 与 Casbin 配合使用,效果更佳哈~
    Casbin
        109
    Casbin  
    OP
    PRO
       Mar 7, 2022
    @adoal 未来可以支持哈~
    @Drumming 开源产品自主可控更好些
    QuinceyWu
        110
    QuinceyWu  
       Mar 9, 2022
    可以考虑下微软的 sso 接入
    Casbin
        111
    Casbin  
    OP
    PRO
       Mar 9, 2022
    @QuinceyWu 现在就支持 AAD 登录呢~ https://door.casdoor.com/login

    <img src="" />
    QuinceyWu
        112
    QuinceyWu  
       Mar 9, 2022
    @Casbin 抱歉 请原谅我仔细阅读
    iiusky
        113
    iiusky  
       Mar 13, 2022
    我搭建后发现个问题,普通用户居然也能登录 casdoor 的管理后台(或者说你们的 casdoor 没有前后台之分),而且能看到所以用户、组织等信息。。这符合。。。真实业务?
    Casbin
        114
    Casbin  
    OP
    PRO
       Mar 13, 2022
    @iiusky 你可能搞错了,built-in 组织下的所有用户都是“全局管理员”,见文档: https://casdoor.org/zh/docs/basic/core-concepts/#%E7%94%A8%E6%88%B7
    iiusky
        115
    iiusky  
       Mar 14, 2022
    @Casbin 原来是这样 Org
    Hawy
        116
    Hawy  
       Mar 15, 2022 via iPhone
    请问身份验证和鉴权服务有办法分离吗?想单独使用鉴权服务
    Casbin
        117
    Casbin  
    OP
    PRO
       Mar 15, 2022   ❤️ 1
    @Hawy 权限服务可以直接使用 Casbin: https://casbin.org/
    Hawy
        118
    Hawy  
       Mar 16, 2022 via iPhone
    @Casbin 如果用自建的身份认证服务,用 casdoor 的权限管理功能及界面,是不是只能基于 OAUTH 对接?还有别的方式吗?
    Casbin
        119
    Casbin  
    OP
    PRO
       Mar 16, 2022
    @Hawy 建议同时使用 Casdoor 的身份认证系统,可以实现与权限的深度集成。如果你有旧的账号系统,可以用同步器实现与 Casdoor 的实时双向用户数据同步: https://casdoor.org/docs/user/manipulation/
    Hawy
        120
    Hawy  
       Mar 16, 2022
    @Casbin 请问有文档或者例子描述 casdoor 里面如何实现 RBAC ,ABAC ,RESTful 权限模型么?另外是否支持类似于“支持资源角色的 RBAC”这样的 RBAC 变种?
    Hawy
        121
    Hawy  
       Mar 17, 2022
    @Casbin 还有一个问题是对无法访问外网的 Air-gapped 环境部署不太友好,docker 镜像里面很多静态资源都在 cdn.casbin.com
    samondlee
        122
    samondlee  
       Mar 17, 2022
    已经推荐给 gametools.network 社区使用
    star7th
        123
    star7th  
       Mar 17, 2022
    关于 docker 部署生产环境,建议把数据库配置信息做成环境变量。这样的话,我只需要跑一个 docker 容器,然后设置数据库链接环境变量即可访问,而不需要改配置文件。
    star7th
        124
    star7th  
       Mar 17, 2022
    已经通过 configmap 解决。其实感觉还是环境变量会更方便一点。毕竟要改的配置不多,做成单项环境变量也挺好。
    Yoehson
        125
    Yoehson  
       Mar 21, 2022
    售价如何?
    Casbin
        126
    Casbin  
    OP
    PRO
       Mar 21, 2022
    @Hawy #120 可以加群了解~

    @Hawy #121 可以在 github 提个英文 issue 吗?

    @samondlee #122 感谢推荐,有链接么?

    @star7th #123 现在已经支持环境变量来修改配置信息: https://casdoor.org/docs/basic/server-installation#via-environment-variables

    @Yoehson #125 可以加群了解~
    willgogogo
        127
    willgogogo  
       Mar 21, 2022
    基于 CAS 做的?
    Casbin
        128
    Casbin  
    OP
    PRO
       Mar 22, 2022
    @willgogogo #127 只是名字有点像哈,与 CAS 代码层面没有任何关系,但是支持 CAS 认证协议
    samondlee
        129
    samondlee  
       Mar 25, 2022
    @Casbin 一个用于替代 bfban.com 的举报系统,不过还没做完 https://bfreport.com/
    dalongs
        130
    dalongs  
       Mar 29, 2022
    学习学习
    RangerWolf
        131
    RangerWolf  
       Apr 2, 2022
    不知道大佬有什么商业化的打算吗?还是暂时不着急,等以后再说?
    Casbin
        132
    Casbin  
    OP
    PRO
       Apr 2, 2022
    @RangerWolf #131 我们有企业版,可以加群咨询
    axina
        133
    axina  
       Apr 5, 2022
    请问下支持 flutter 吗
    zhouchijian
        134
    zhouchijian  
       Apr 11, 2022   ❤️ 1
    redisEndpoint 要怎么配置才行?

    redis://:[email protected]:6379

    :[email protected]:6379

    全都报错

    panic: dial tcp: address redis://:[email protected]:6379: too many colons in address
    zhouchijian
        135
    zhouchijian  
       Apr 11, 2022
    @zhouchijian 翻了下文档没查到怎么配置 redis 。全局搜了 README 也没查到。。。
    Casbin
        136
    Casbin  
    OP
    PRO
       Apr 11, 2022   ❤️ 1
    @zhouchijian Redis session 是由 Beego 提供的功能,格式也是 Beego 的格式,可查看 Beego 文档: https://beego.vip/docs/module/session.md#saving-provider-config 。例子格式是:127.0.0.1:6379,100,astaxie
    cfu18
        137
    cfu18  
       Apr 14, 2022
    @Casbin 试用了一下,casdoor 没有 session 管理吗?看文档,sdk 里用的 Beego 的功能,是每一个应用的服务自己去管理 session ?
    masterclock
        138
    masterclock  
       Apr 15, 2022
    试用了一下
    1. 默认的用户密码是明文保存的
    2. 自带的 UI 默认的密码保存方式也是明文
    明文有什么意义呢?
    3. 密码 hash 方式可以修改,但似乎没法改 hash 时的参数
    3. 改了 hash 方式后,原有用户的密码就失效了
    4. 自带的 UI 无法登录非 built-in orgnization 的用户吗?

    总的来说,比较担心,不太敢上船
    Casbin
        139
    Casbin  
    OP
    PRO
       Apr 21, 2022
    @masterclock

    1, 2. 自带的演示站只是演示一个例子,自己部署的时候可以第一时间修改为其他密码保存算法的。默认 Plain 的原因是,方便回头修改为其他方式,如果比如已经用了 bcrypt ,再改成别的 md5-salt 就没有机会了,因为已有的密码不可逆为明文再用另一种形式加密
    3. 在组织编辑页面( https://door.casdoor.com/organizations/casbin )有一项“密码 Salt 值”可以作为参数修改
    4. 那肯定失效了呀,见 2 ,已有密码不可逆为明文
    5. 不同组织的登录地址不同,见文档: https://casdoor.org/zh/docs/basic/core-concepts#application
    hoythan
        140
    hoythan  
       Apr 25, 2022   ❤️ 1
    好家伙半年了还能置顶
    C603H6r18Q1mSP9N
        141
    C603H6r18Q1mSP9N  
       May 3, 2022
    怎么收费的?
    Casbin
        142
    Casbin  
    OP
    PRO
       May 3, 2022
    @shanghai1998 #141 可以加群咨询
    xinyana
        143
    xinyana  
       May 22, 2022 via Android
    好家伙,挖坟啊
    wangxiaoaer
        144
    wangxiaoaer  
       May 23, 2022 via iPhone
    Casbin
        145
    Casbin  
    OP
    PRO
       May 24, 2022
    @wangxiaoaer #144 已回复
    shangrila
        146
    shangrila  
       May 26, 2022   ❤️ 1
    好家伙半年了还能置顶
    ychost
        147
    ychost  
       May 28, 2022
    jCasbin 的质量也太差了点,不过 Casbin 的 model 、policy 值得借鉴
    Casbin
        148
    Casbin  
    OP
    PRO
       May 31, 2022
    @ychost #147 请问 jCasbin 哪部分有问题呢?欢迎提出宝贵意见建议哈
    veightz
        149
    veightz  
       May 31, 2022 via iPhone
    先码,逐步把公司的 ldap 换成 Google 中…
    fivesmallq
        150
    fivesmallq  
       May 31, 2022
    没人吐槽下 RESTful API 吗
    Casbin
        151
    Casbin  
    OP
    PRO
       May 31, 2022
    @fivesmallq #150 RESTful API 有什么问题么
    fivesmallq
        152
    fivesmallq  
       Jun 1, 2022
    @Casbin API 所有的 url 设计都是 get+post ,path 上全是动词,实际可以使用 http method 来解决,model 好多是复用的,删除的时候也需要传入整个 model 吗?也没有写清楚哪些是必填的,example value 最好有一些真实的数据,会比较直观。response 也是一言难尽,都用的一个,data 和 data2 的作用分别是?

    {
    "data": {},
    "data2": {},
    "msg": "string",
    "name": "string",
    "status": "string",
    "sub": "string"
    }
    fivesmallq
        153
    fivesmallq  
       Jun 1, 2022
    建议参考下其他类似 saas 产品 api 的设计,作为一个平台,api 还是挺重要的
    leeggco
        154
    leeggco  
       Jun 7, 2022
    按照官方的例子没跑起来

    访问登录页面报错,看不到登录框

    HPM Error occurred while trying to proxy request /api/get-account from 1.116.227.58:7001 to http://localhost:8000 (ECONNREFUSED) ( https://nodejs.org/api/errors.html#errors_common_system_errors)
    Casbin
        155
    Casbin  
    OP
    PRO
       Jun 7, 2022
    leeggco
        156
    leeggco  
       Jun 7, 2022
    @Casbin 解决了
    WOLFRAZOR
        157
    WOLFRAZOR  
       Jun 11, 2022 via Android
    有没有人机检测?被爆破咋办?
    xuelu520
        158
    xuelu520  
       Jun 14, 2022   ❤️ 1
    为啥这个可以一直置顶的?付费的吗?
    Lojii
        159
    Lojii  
       Jun 18, 2022
    @xuelu520 我也挺好奇,怎么会置顶这么久
    aec4d
        160
    aec4d  
       Jun 18, 2022   ❤️ 1
    求求你不要置顶了,置顶大半年了,成功的引起了我的反感

    这个项目不能说没用,只能说比较难实施

    如果只有一两个内部项目,那么用这种统一认证的方式没必要
    如果一家公司有上百个项目,那么很可能这家公司历史悠久,想要改造接入这种统一认证的推动难度不小
    如果一个小公司,写第一个项目就考虑统一认证,或许这个项目有用。但是它真的需要考虑这么多吗。绝大多数小公司活不过几年,开始的项目以快速实现为主
    一家超大型公司为了统一体验对这种统一认证有比较强的需求,那么别人有几千人的研发团队,有自己的需求。选择一个自己控制不了的项目作为核心接入中间件合理吗?肯定会自己实现
    aec4d
        161
    aec4d  
       Jun 18, 2022
    @livid 请问能阻止一下一个帖子置顶快半年多这种操作吗
    aec4d
        162
    aec4d  
       Jun 18, 2022   ❤️ 3
    作者要真的这么积极置顶,完全可以买站点的广告位,而不是过几天就让自己的贴子置顶到分享创造栏,看 V2 快十年了,这应该是我见过的唯一一个这种操作的
    Livid
        163
    Livid  
    MOD
    PRO
       Jun 18, 2022   ❤️ 2
    @xuelu520
    @Lojii
    @aec4d

    付费用户可以消耗铜币置顶。

    如果你们 Block 这个账号就不会看到来自他的置顶。
    phithon
        164
    phithon  
       Jun 19, 2022
    @Livid 说明置顶该涨价了
    yunweier
        165
    yunweier  
       Jun 22, 2022
    可以使用 LDAP 登陆吗?
    renyijiu
        166
    renyijiu  
       Jun 23, 2022
    @Casbin demo 的飞书登录报错,提示 请求非法, 请联系应用开发者
    dunizb
        167
    dunizb  
       Jul 1, 2022 via Android
    Flutter 支持吗
    Casbin
        168
    Casbin  
    OP
    PRO
       Jul 1, 2022
    @WOLFRAZOR #157 具有默认的 captcha 验证码,也可以对接谷歌 reCaptcha ,hCaptcha 以及国内的阿里云验证码,未来也会支持更多的网易、极验等,也可以自行实现 CaptchaProvider 接口

    @yunweier #165 可以,见文档: https://docs.casdoor.cn/zh/docs/ldap/overview

    @renyijiu #166 飞书开放平台创建的示例 app 过期了,您这边可以自行申请,不影响使用哈

    @dunizb #167 正在支持中 https://github.com/casdoor/casdoor-flutter-sdk
    novolunt
        169
    novolunt  
       Jul 4, 2022
    支持 discouse 论坛吗
    Casbin
        170
    Casbin  
    OP
    PRO
       Jul 4, 2022
    lycc
        171
    lycc  
       Jul 17, 2022
    如果没有配置有效的密码找回方式,修改 built-in 的密码加密方式的话,会导致管理员都无法登录。
    Zerek
        172
    Zerek  
       Jul 18, 2022
    查询用户的 role/permission 的 api 功能都没有完善,这些基础的功能貌似都还没实现完成?
    lankerened
        173
    lankerened  
       Jul 20, 2022
    我试用了一下,看起来你们的组织不能自定义用户字段,有解决方案吗
    Aloento
        174
    Aloento  
       Jul 27, 2022
    好东西是好东西,但是我还是选择用 identityserver + blazor 自己写一份
    lameleg
        175
    lameleg  
       Jul 28, 2022
    https://github.com/labring/sealos 我们正在集成 casdoor 很好用 谢谢 @Casbin
    ljpCN
        176
    ljpCN  
       Aug 3, 2022
    有什么业界竞品不?
    ljpCN
        177
    ljpCN  
       Aug 3, 2022
    @ljpCN #176 之前看过一个 https://www.authing.cn/ 。不知道 OP 有没有做过什么对比。
    wangxiaoaer
        178
    wangxiaoaer  
       Aug 7, 2022 via iPhone   ❤️ 1
    我觉得楼上几个拿置顶说事儿甚至投诉给站长的真是小人之行,你觉得没有 block 了就行,凭什么觉得对别人也没有?起码对我挺有用,我也一直在找这种类似产品,虽然研究了 casdoor 一番后觉得不是很灵活,没有用到生产环境,但是项目的思路 理念还是给了我一些启发。

    作者自己的心血不论好坏,在符合站里规则情况下进行推广有什么好唧唧歪歪的。
    mclxly
        179
    mclxly  
       Aug 11, 2022
    近期接触到 casdoor ,感觉不错,给 OP 点赞
    ydatong
        180
    ydatong  
       Aug 13, 2022
    6
    p0h5
        181
    p0h5  
       Aug 14, 2022 via iPhone
    现在 Oauth 已经对接到 APISIX ,期待 IAM 能做起来
    dcsite
        182
    dcsite  
       Aug 16, 2022   ❤️ 1
    @wangxiaoaer 说的对,我现在就 Block 他
    Talbot3
        183
    Talbot3  
       Aug 19, 2022
    我源代码编译过,用的还是旧的 golang 版本,还使用了 google 服务的接口。拉代码模块依赖都有问题。能换成 go.mod 么,别依赖 google 服务接口么
    Seahurt
        185
    Seahurt  
       Aug 22, 2022   ❤️ 5
    自己部署 bug 太多了...就算用官方的 all-in-one 镜像也启动不起来。好不容易改了代码启动起来了,前端页面又一片空白。学学隔壁 logto 吧, 他们家的使用体验好太多了
    Casbin
        186
    Casbin  
    OP
    PRO
       Aug 22, 2022   ❤️ 1
    @Seahurt 请升级 v1.100.0 ,最近修复了一个相关的问题。建议加我们的 QQ 群,获得更快速的支持:645200447
    jadelike
        187
    jadelike  
       Aug 26, 2022
    赞,可惜我司用 springboot
    Casbin
        188
    Casbin  
    OP
    PRO
       Aug 26, 2022
    @jadelike 支持 Spring Boot, Spring Cloud 全家桶: https://casdoor.cn/zh/docs/integration/spring-boot
    tikazyq
        189
    tikazyq  
       Sep 19, 2022
    收费么?
    Casbin
        190
    Casbin  
    OP
    PRO
       Sep 19, 2022
    @tikazyq 开源、免费商用
    hanyuwei70
        191
    hanyuwei70  
       Sep 21, 2022
    支持 WebAuthn Password-less ,点赞
    electronic
        192
    electronic  
       Sep 26, 2022 via Android
    微信可以不扫码登陆吗
    aec4d
        193
    aec4d  
       Sep 27, 2022
    大兄弟,置顶一年啦
    yuyu01
        194
    yuyu01  
       Sep 28, 2022
    demo 把别人的 ip 暴露出来了,可以清理一下吗?
    yuyu01
        195
    yuyu01  
       Sep 28, 2022
    你们的 demo ,至少把别人扫码登录的用户名和 ip 打一下码吧,这样把别人的用户和 ip 都暴露出来真的好吗?扫个码登录体验一下,发现信息全部暴露在上面了,加 qq 群请求处理也没人回复!真的很无语!
    yuyu01
        196
    yuyu01  
       Sep 29, 2022
    上面说的问题,已经通过联系 qq 管理员清理相关记录
    idblife
        197
    idblife  
       Oct 10, 2022
    看了下文档,支持 ldap ,不支持 ad 域控?
    waltcow
        198
    waltcow  
       Oct 11, 2022   ❤️ 4
    好家伙还能置顶这么久,服了
    binjoo
        199
    binjoo  
       Oct 12, 2022
    哪怕是有新功能你再置顶一次也有看头。。
    搞多了就是牛皮藓的感觉,B 了。
    wangxiaoaer
        200
    wangxiaoaer  
       Oct 24, 2022
    有没有基于 Java 类似的产品?
    1  2  3  4  
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2764 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 222ms · UTC 11:56 · PVG 19:56 · LAX 04:56 · JFK 07:56
    ♥ Do have faith in what you're doing.