Go to file
Gucheng Wang 6ce50691d9 Update README 2023-05-25 15:22:25 +08:00
.github fix: fix CI warnings (#560) 2023-01-12 14:46:08 +08:00
casdoor Update casdoor-go-sdk to v0.9.1 2022-09-29 00:37:37 +08:00
conf Set chromeCtxNum to 1 by default. 2022-04-07 09:31:41 +08:00
controllers Update casdoor-go-sdk to v0.9.1 2022-09-29 00:37:37 +08:00
dictionary Add topic management 2020-09-29 02:42:36 +08:00
discuzx Update casdoor-go-sdk to v0.9.1 2022-09-29 00:37:37 +08:00
i18n Improve translation. 2021-12-28 21:43:45 +08:00
object fix: online user can not be updated (#570) 2023-03-17 22:36:03 +08:00
routers Update casdoor-go-sdk to v0.9.1 2022-09-29 00:37:37 +08:00
service Update casdoor-go-sdk to v0.9.1 2022-09-29 00:37:37 +08:00
swagger feat: add comments to categorize apis for swagger (#389) 2021-12-06 18:27:23 +08:00
util chore(style): fmt code (#534) 2022-08-09 20:10:21 +08:00
web fix: remove duplicate signin successfully message (#571) 2023-03-17 22:38:25 +08:00
.gitattributes Detect as Go. 2021-11-25 09:59:43 +08:00
.gitignore Add account API. 2020-06-09 12:22:44 +08:00
.releaserc.json fix: add semantic release (#468) 2022-04-07 14:18:00 +08:00
Dockerfile update https://registry.npm.taobao.org to https://registry.npmmirror.com (#411) 2022-02-12 11:50:19 +08:00
LICENSE Initial commit 2020-05-29 10:45:59 +08:00
README.md Update README 2023-05-25 15:22:25 +08:00
Tag_test.go Migrate beego back from v2 to v1. 2021-08-26 00:22:28 +08:00
docker-compose.yml Improve docker-compose.yml 2021-10-28 23:50:26 +08:00
go.mod Update casdoor-go-sdk to v0.10.0 2022-10-07 20:46:37 +08:00
go.sum Update casdoor-go-sdk to v0.10.0 2022-10-07 20:46:37 +08:00
main.go chore(style): fmt code (#534) 2022-08-09 20:10:21 +08:00

README.md

📦 CasWAF

An open-source Web Application Firewall (WAF) software developed by Go and React.

semantic-release docker pull casbin/casnode GitHub Workflow Status (branch) GitHub Release Docker Image Version (latest semver)

Go Report Card license GitHub issues GitHub stars GitHub forks Crowdin

Architecture

CasWAF contains 2 parts:

Name Description Language
Frontend Web frontend UI for CasWAF Javascript + React
Backend RESTful API backend for CasWAF Golang + Beego + MySQL

Installation

CasWAF uses Casdoor to manage members. So you need to create an organization and an application for CasWAF in a Casdoor instance.

Necessary configuration

Setup database

CasWAF will store its users, nodes and topics informations in a MySQL database named: caswaf, will create it if not existed. The DB connection string can be specified at: https://github.com/casbin/caswaf/blob/master/conf/app.conf

dataSourceName = root:123@tcp(localhost:3306)/

CasWAF uses XORM to connect to DB, so all DBs supported by XORM can also be used.

Run caswaf

Optional configuration

Setup your WAF to enable some third-party login platform

CasWAF uses Casdoor to manage members. If you want to log in with oauth, you should see casdoor oauth configuration.

OSS, Mail, and SMS services

CasWAF uses Casdoor to upload files to cloud storage, send Emails and send SMSs. See Casdoor for more details.