appstore-1panel/apps/casdoor/README.md
萌森 46383cd25a 优化 casdoor 配置说明
Signed-off-by: 萌森 <qyg2297248353@163.com>
2024-07-19 18:35:36 +08:00

3.6 KiB
Raw Blame History

Casdoor

Casdoor 是一个 UI 优先的身份访问管理 (IAM)/单点登录 (SSO) 平台,其 Web UI 支持 OAuth 2.0、OIDC、SAML、CAS、LDAP、SCIM、WebAuthn、TOTP、MFA、RADIUS、Google Workspace、活动目录和 Kerberos。

Casdoor

简介

Casdoor是一个基于OAuth 2.0、OIDC、SAML 和 CAS 的UI-first的身份和访问管理(IAM)/单点登录(SSO)平台。

Casdoor是由Casbin社区通过Golang和React进行开发。

Casdoor旨在提供一个强大的认证平台来处理用户管理问题。

  • 强大的功能和极简的配置。 支持使用 登录和传统的用户名/密码登录只需几个步骤Casdoor即可帮助您构建您的用户管理系统。

  • 💥 前后端分离架构。 Casdoor提供可随心所欲的网页界面并支持高并发。

  • 🥂 活跃的开源社区。 Casdoor是开源的并有专业团队积极维护中。

  • 🌐 多语言支持。 Casdoor支持多种语言包括中文、英文、法文、以及更多语言。

特性

  • Casdoor 遵循前后端分离架构,采用 Golang 进行开发。 它支持高同步提供基于网页的用户界面管理并支持10多种语言的本地化。

  • Casdoor 支持第三方应用登录,如 GitHub、谷歌、QQ、微信等并支持通过插件扩展第三方登录。

  • Casdoor 支持基于 Cassbin 的授权管理。 它支持 ACL、RBAC、ABAC 和 RESTful鉴权管理模式。

  • Casdoor 提供了手机验证码、电子邮件验证码以及重置密码的功能。

  • Casdoor 支持日志的审计和记录。

  • Casdoor 可以使用阿里云、腾讯云、七牛云提供的图片CDN云存储功能。

  • Casdoor 允许自定义注册、登录以及找回密码页面。

  • 通过数据库同步支持与现有系统的集成,从而能够顺利过渡到 Casdoor。

  • Casdoor 支持主流数据库: MySQL、PostgreSQL、SQL Server 等, 并支持扩展插件以支持新的数据库。

安装说明

数据库支持

当前仅支持 MySQLPostgreSQL 数据库。

官方支持使用 'SQLite' 数据库,但不建议在生产环境中使用。因此,我们放弃了 'SQLite' 数据库的配置选项。

同时还有一些其他数据库的支持,但是这些数据库的支持并不完善,因此我们也放弃了这些数据库的配置选项。

存储 本地文件系统

Casdoor 支持将用户头像等文件存储在本地文件系统中。默认情况下Casdoor 会将文件存储在容器内部 /home/user/casdoor/files 目录下。

我们将其挂载在 持久化目录 /home/casdoor 下,以便于数据的持久化。

Socks5 代理 (地区网络限制) 配置

如果您的网络环境受到地区网络限制,您可以通过配置 Socks5 代理 来解决这个问题。

格式host:port

socks5Proxy 是 SOCKS 代理服务器 IP 地址。 设置代理端口因为我们有与Google相关的服务或者使用Google、GitHub、Facebook、LinkedIn或Steam作为OAuth提供商这在某些地区可能会受到网络限制。

数据初始化 init_data.json 配置

Casdoor 会在第一次启动时,自动初始化数据库。您可以通过配置 init_data.json 文件来初始化数据库。

配置自定义的 init_data.json 文件,需要挂载到容器中。

需要修改 docker-compose.yml 文件中的 volumes 部分,添加自定义配置的挂载,将 init_data.json 文件挂载到容器中,覆盖默认配置。

volumes:
  - ./config/init_data.json:/init_data.json

其中 ./config/init_data.json 为默认配置文件所在路径,您可以根据实际情况进行修改为自定义绝对文件路径即可。