组件分享之后端组件——一款基于Golang的认证全套模块Casdoor
背景
近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。
组件基本信息
- 组件:casdoor
- 开源协议:Apache-2.0 License
- 使用说明:casdoor.org
内容
如果你正在进行编写一个项目,但是缺少一个认证模块,这时就可以使用本节中分享的组件casdoor了,它支持OAuth 2.0、OIDC 和 SAML 的 UI 优先集中式身份验证/单点登录 (SSO) 平台,与 Casbin RBAC 和 ABAC 权限管理集成。能让我们的系统快速集成一套完整的认证体系,同时它支持第三方应用程序登录,包括国内国外常见的平台,具体可查看官方描述,这里就不具体说明了。
以下是官方说明的一些特点:
Casdoor 的特性:
前后端分离的架构,使用 Go 语言开发,Casdoor 支持高并发,提供基于Web的用户管理 UI,并支持中、英等多种语言。
Casdoor 支持 Github、Google、QQ、WeChat 第三方应用程序登录,并支持使用插件扩展第三方登录。
使用 Casbin 基于授权管理,Casdoor 支持 ACL,RBAC,ABAC,RESTful 等访问控制模型。
支持手机验证码、邮件验证码、找回密码等功能。
审查和记录访问日志。
使用阿里云、腾讯云、七牛云提供的图片CDN云存储。
个性化的注册、登录和忘记密码页面。
Casdoor 支持使用 db 同步方法与现有系统的集成,用户可以顺利过渡到Casdoor 。
Casdoor 支持主流数据库: MySQL、PostgreSQL、SQL Server 等, 并支持扩展插件的新数据库。
这个认证模块是基于Golang语言,OAuth2协议基础上提供相关功能的,不熟悉OAuth2协议的先去了解一下,防止使用过程中难于理解。
本文声明:
知识共享许可协议
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。