- Read-only site: https://door.caswaf.com (any modification operation will fail)
- Writable site: https://demo.caswaf.com (original data will be restored for every 5 minutes)
Casbin Gateway contains 2 parts:
| Name | Description | Language | Source code |
|---|---|---|---|
| Frontend | Web frontend UI for Casbin Gateway | Javascript + React | https://github.com/apache/casbin-gateway/tree/master/web |
| Backend | RESTful API backend for Casbin Gateway | Golang + Beego + MySQL | https://github.com/apache/casbin-gateway |
Casbin Gateway uses Casdoor to manage members. So you need to create an organization and an application for Casbin Gateway in a Casdoor instance.
- Kubernetes Deployment: Deploy Casbin Gateway on Kubernetes with complete manifests and guide
- Docker Compose: Use the provided
docker-compose.ymlfor quick local setup - Manual Installation: Build and run from source
go get github.com/casdoor/casdoor
go get github.com/apache/casbin-gatewayor
git clone https://github.com/casdoor/casdoor
git clone https://github.com/apache/casbin-gatewayCasbin Gateway will store its users, nodes and topics information in a MySQL database named: caswaf, will create it if not existed. The DB connection string can be specified at: https://github.com/apache/casbin-gateway/blob/master/conf/app.conf
dataSourceName = root:123@tcp(localhost:3306)/Casbin Gateway uses XORM to connect to DB, so all DBs supported by XORM can also be used.
After creating an organization and an application for Casbin Gateway in a Casdoor, you need to update clientID, clientSecret, casdoorOrganization and casdoorApplication in app.conf.
- Configure and run Casbin Gateway by yourself. If you want to learn more, see the documentation.
- Open browser: http://localhost:16001/
Casbin Gateway uses Casdoor to manage members. If you want to log in with oauth, you should see casdoor oauth configuration.
Casbin Gateway uses Casdoor to upload files to cloud storage, send Emails and send SMSs. See Casdoor for more details.
For Casbin Gateway, if you have any questions, you can open Issues, or you can also directly start Pull Requests(but we recommend opening issues first to communicate with the community).