Fix db, keyclaok .env.example e docker compose

This commit is contained in:
Lorenzo Sanesi
2026-07-25 12:10:54 +02:00
parent 5b7c82d359
commit 7cd0a1ff1b
7 changed files with 198 additions and 34 deletions
+14 -9
View File
@@ -4,21 +4,26 @@ Realm `scouthub` con feature Organizations abilitata, importato automaticamente
all'avvio di Keycloak (`--import-realm` nel `docker-compose.yml` alla radice).
Basato su `keycloak/realm.json` (bozza di riferimento), con l'aggiunta del
ruolo `admin-centrale` richiesto da `POST /gruppi` in `scouthub-home-be`
(placeholder temporaneo, vedi il TODO in `src/routes/gruppi.routes.ts`).
ruolo `admin` richiesto da `POST /gruppi` e `GET /gruppi` in
`scouthub-home-be`: creazione/elenco diretti restano riservati ad `admin`,
mentre un utente normale passa dal flusso self-service di richiesta
creazione gruppo (`POST /richieste-creazione-gruppo`), che alla review
positiva invoca la stessa `createGruppo()` internamente.
Contiene già:
- i realm role usati dal backend: `admin-centrale`, `capo-gruppo`,
`capo-unita`, `censito`, più il placeholder `manage-organizations`
- i realm role usati dal backend, in gerarchia composite (`admin` include
`capo-gruppo` include `capo-unita` include `capo` include `censito`; `admin`
include anche `moderatore`): `admin`, `capo-gruppo`, `capo-unita`, `capo`,
`censito`, `moderatore`, più il placeholder `manage-organizations`
- il client scope `organization` (aggiunge id/attributi della Organization
nei token OIDC)
- il client confidential `scouthub-home-be` (service account abilitato,
usato dal backend per il flow client-credentials verso le Admin REST API —
il suo `clientId`/`secret` devono corrispondere a
`KEYCLOAK_ORG_SERVICE_CLIENT_ID`/`_SECRET` in `scouthub-home-be/.env.example`)
- il client pubblico `scouthub-frontend` (login utente, redirect su
`http://localhost:4200/*`)
- il client pubblico `scouthub-frontend` (login utente, condiviso da tutti i
frontend Angular del progetto, redirect su `http://localhost:7000-7003/*`)
Passi manuali ancora da fare dopo l'import (non automatizzabili in un realm
export senza conoscere gli id generati a runtime):
@@ -49,15 +54,15 @@ I passaggi da fare sono:
- manage-users
- view-users
9. Clicca Assign.
10. Dopo fatto questo bisogna fare un user admin-centrale
10. Dopo fatto questo bisogna fare un user admin
I passaggi da fare per admin-centrale:
I passaggi da fare per admin:
1. Apri http://localhost:8081/admin, login admin/admin, cambia realm in scouthub.
2. Menu laterale → Users → clicca su movioletto@yahoo.it.
3. Vai sul tab "Role mapping".
4. Clicca "Assign role".
5. Assicurati che il filtro sia su "Filter by realm roles" (dovrebbe esserlo di default per gli utenti normali).
6. Cerca e seleziona admin-centrale.
6. Cerca e seleziona admin.
7. Clicca Assign.
⚠️ Il secret del client `scouthub-home-be` (`CAMBIA-QUESTO-SECRET-IN-UN-VAULT`)