No description
- Go 51.6%
- Vue 31.9%
- JavaScript 11.2%
- CSS 4.1%
- Dockerfile 0.7%
- Other 0.5%
|
|
||
|---|---|---|
| .forgejo/workflows | ||
| backend | ||
| frontend | ||
| .gitignore | ||
| compose.yml | ||
| LICENSE | ||
| README.md | ||
POL Account Management
Pol Manager is a simple Account manager for Playonline Accounts for multiboxers or users who want to keep their login info stored securely.
It's based on a Go backend service and Postgres for database storage. The webpage interface is built using Vue3. All information is kept encrypted in the database.
PlayOnline passwords are encrypted at rest. In Vanaportal deployments, users authenticate through the Vanaportal gateway and PolManager receives a short-lived internal identity token. Local legacy email/password auth is still available for development.
API
- Health check: http://localhost:3000/api/v1/health
- Accounts are available through the gateway at
/api/v1/polmanager/accounts. - POL passwords are retrieved through
/api/v1/polmanager/accounts/{id}/pol-passwordafter role, identity, ownership, and rate-limit checks. - Gateway auth uses the Vanaportal
vp_accesscookie. Direct local auth still uses an HttpOnlysessioncookie plus a CSRF token cookie. - Set
INTERNAL_IDENTITY_PUBLIC_KEY_PEMto the gateway public key in deployed PolManager so it can verify internal identity tokens.
Database Layout
app_usersstores local user identities and maps Vanaportal users throughvanaportal_user_id.accountsstores PlayOnline account metadata with auser_idowner, plus AES-GCM encrypted POL password data, so each user only sees and mutates their own accounts.