Clone this repo:
  1. a4eaa88 feat: add linter to CI by Yang Luo · 7 weeks ago master
  2. 41a6184 Fix frontend warnings by Gucheng Wang · 2 years, 8 months ago
  3. 7ab1f56 feat: add .eslintrc and format all code (#7) by TieStone · 2 years, 9 months ago
  4. e852b00 docs: add README.md to this repo (#8) by ozline · 2 years, 9 months ago
  5. dec3f1e Improve theme color by Gucheng Wang · 2 years, 9 months ago

Online Demo

Deployed site: https://waf.casbin.com/

Architecture

CasWAF contains 2 parts: Name | Description | Language | Source code ----|------|----|---- Frontend | Web frontend UI for CasWAF | Javascript + React | https://github.com/casbin/caswaf/tree/master/web Backend | RESTful API backend for CAsWAF | Golang + Beego + MySQL | https://github.com/casbin/caswaf

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

Get the code

go get github.com/casbin/casdoor
go get github.com/casbin/caswaf

or

git clone https://github.com/casbin/casdoor
git clone https://github.com/casbin/caswaf

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.

Configure Casdoor

After creating an organization and an application for CasWAF in a Casdoor, you need to update clientID, clientSecret, casdoorOrganization and casdoorApplication in app.conf.

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.

Contribute

For CasWAF, if you have any questions, you can give Issues, or you can also directly start Pull Requests(but we recommend giving issues first to communicate with the community).

License

Apache-2.0