Casbin Forum runs on Casnode, the open-source Discourse-style forum. Try the Casnode demo →
Casbin Forum

yep, that was it! My redirect url (probably just the default entry) had the wrong port. Thanks!

whoops, I didn't know about that step. Adding casibase redirect URLs to casdoor. That sounds like the likely issue.

okay, thanks for confirming that!

I tried in a different browser that hadn't seen casibase or casdoor and still got the same issue. (not using a vpn or docker... I'm running both casdoor and casibase in another user account together, and using sqlite for both)

should these three errors when casibase is run worry me?

2026/01/23 03:20:23.695 [E] [init.go:30]  Failed to add template code-server: constraint failed: UNIQUE constraint failed: template.owner, template.name (1555)
2026/01/23 03:20:23.695 [E] [init.go:30]  Failed to add template kuboard: constraint failed: UNIQUE constraint failed: template.owner, template.name (1555)
2026/01/23 03:20:23.695 [E] [init.go:30]  Failed to add template pdf2zh: constraint failed: UNIQUE constraint failed: template.owner, template.name (1555)

if I do log into casdoor, then when I try to log into casibase and get redirected to casdoor, there is a "continue with existing account" option. But clicking that still ultimately leaves me not logged into casibase, and generates the same 403 forbidden error in the casibase log

Hello! I'm trying to set up casibase purely on my local machine, just to try it out. I was happy with how simple it seemed to get both casdoor and casibase up and running, but then when I go to log in with my new user, the login seems to work in casdoor, but when I get bounced back to casibase, I'm still not logged in. In the log for casdoor, it seems to show no error at all, but in the log for casibase, I do see a 403 error on /api/signin, presumably from casdoor?

2026/01/16 17:18:34.201 [D] [server.go:3301]  |      127.0.0.1| 200 |     199.02µs| nomatch| GET      /callback
2026/01/16 17:18:34.994 [D] [server.go:3301]  |      127.0.0.1| 200 |    930.029µs|   match| GET      /api/get-forms   r:/api/get-forms
2026/01/16 17:18:34.994 [D] [server.go:3301]  |      127.0.0.1| 200 |    997.109µs|   match| GET      /api/get-account   r:/api/get-account
2026/01/16 17:18:34.995 [D] [server.go:3301]  |      127.0.0.1| 200 |   1.418309ms|   match| GET      /api/get-store   r:/api/get-store
2026/01/16 17:18:35.031 [D] [server.go:3301]  |      127.0.0.1| 403 |   3.035507ms| nomatch| POST     /api/signin
2026/01/16 17:18:35.141 [D] [server.go:3301]  |      127.0.0.1| 200 |    711.449µs|   match| GET      /api/get-store-names   r:/api/get-store-names

I've made sure clientId/clientSecret/casdoorOrganization/casdoorApplication all match