| ... | @@ -5,75 +5,8 @@ Wiki del Odoo de Comunitats Energètiques |
... | @@ -5,75 +5,8 @@ Wiki del Odoo de Comunitats Energètiques |
|
|
## Aixecar un servidor de keycloak per a testing:
|
|
## Aixecar un servidor de keycloak per a testing:
|
|
|
[Documentació Aixecar un servidor de keycloak](Aixecar un servidor de keycloak per a testing)
|
|
[Documentació Aixecar un servidor de keycloak](Aixecar un servidor de keycloak per a testing)
|
|
|
|
|
|
|
|
|
|
## \[WIP\] Configurar un servidor de keycloak
|
|
|
Executem `docker-compose up` amb el següent `docker-compose.yml`:
|
|
[Documentació Configurar un servidor de keycloak](Configurar un servidor de keycloak)
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
|
version: '2'
|
|
|
|
|
services:
|
|
|
|
|
postgresql:
|
|
|
|
|
image: docker.io/bitnami/postgresql:11
|
|
|
|
|
environment:
|
|
|
|
|
# ALLOW_EMPTY_PASSWORD is recommended only for development.
|
|
|
|
|
- ALLOW_EMPTY_PASSWORD=yes
|
|
|
|
|
- POSTGRESQL_USERNAME=bn_keycloak
|
|
|
|
|
- POSTGRESQL_DATABASE=bitnami_keycloak
|
|
|
|
|
ports:
|
|
|
|
|
- "5433:5432"
|
|
|
|
|
volumes:
|
|
|
|
|
- 'postgresql_data:/bitnami/postgresql'
|
|
|
|
|
|
|
|
|
|
keycloak:
|
|
|
|
|
image: docker.io/bitnami/keycloak:18
|
|
|
|
|
depends_on:
|
|
|
|
|
- postgresql
|
|
|
|
|
ports:
|
|
|
|
|
- "8080:8080"
|
|
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
|
postgresql_data:
|
|
|
|
|
driver: local
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**Des de la meva màquina lxc no puc resoldre "keycloak"**: El docker que ens munta el keycloak ens crea una entrada que resol el dns keycloak Però l'ansible que crea l'odoo no li diu qui resol "keycloak". Cal afegir manualment al fitxer de `/etc/hosts` una línia que indiqui com resoldre keycloak: `10.0.3.1 keycloak`
|
|
|
|
|
|
|
|
|
|
## \[WIP\] Configurar un servidor de keycloak (orientat a interaccionar amb Odoo)
|
|
|
|
|
|
|
|
|
|
1. Un cop carregat (docker-compose up a la carpeta on tinguem el docker-compose.yml) el KC, accedim a la Administration Console: <http://10.0.3.1:8080> (ussuari: user, password: bitnami)
|
|
|
|
|
1. Creem un nou Realm = 'coordinadora' (es correspon amb la companyia 'coordinadora' del Odoo):
|
|
|
|
|
1. Dins del realm 'coordinadora' creem un nou Client = odoo:
|
|
|
|
|

|
|
|
|
|
1. Dins del realm 'ce1'coordinadora' creem 3 rols a nivell de Realm:
|
|
|
|
|

|
|
|
|
|
Amb aquesta configuració:
|
|
|
|
|

|
|
|
|
|

|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
1. Dins del realm 'ce1'coordinadora' aquests 3 grups d'usuaris:
|
|
|
|
|

|
|
|
|
|
... a cada grup li assignem per defecte el rol corresponent (creats en el pas anterior):
|
|
|
|
|

|
|
|
|
|

|
|
|
|
|

|
|
|
|
|
1. Assignem el grup ce_members_group com a grupper defecte de qualsevol usuari nou que es crei en el realm:
|
|
|
|
|

|
|
|
|
|
1. [Opcional] Si volem disposar d'alguns usuaris al KC per fer proves (a part dels que puguin afegir-s'hi via crides a la APi del KC desde l'Odoo, dins del realm 'coordinadora', creem 3 usuaris i els asignem, cadascun a un dels 3 grups anteriors. Cadascun d'ells adquirirà per defecte el rol :
|
|
|
|
|

|
|
|
|
|

|
|
|
|
|
1. [opcional] Als 2 usuaris els posem el mateix password (Pestanya credencials) per simplificar: 1234
|
|
|
|
|

|
|
|
|
|
Automàticament cada user hereta els roles del realm que li corresponen en base al grup al qual pertanyen.
|
|
|
|
|
1. Al Realm Master, creem un usuari api_admin_ce1 (per simplificar li posem també password 1234) específic per a la administració, via API del realm ce1 (se n’ha de crear un per a cada realm de ce existent) → cal assignar-li el rol de manage-users (això permet que desde l’Odoo o desde un altre aplicació es puguin CREAR nous usuaris dins del realm ce1 via API usant aquest usuari):
|
|
|
|
|

|
|
|
|
|
1. Repetim els passos anteriors del 2 fins al pas anterior a aquest, per a cadascun dels diferents realms corresponents a diferents CE que necessitem tenir disponibles al KC (ce2, ce3, ...).
|
|
|
|
|
1. Repetim el pas anterior (grup de passos per crear nous realsm) però per a un realm especial dins del KC que anomenarem 'coordinadora' i que es correspon amb la companyia de Odoo/OV que fa de coordinadora de la plataforma. Els passos a seguir son els mateixos que per als realms regulars vinculats a cadascuna de les CE (ce1, ce2,...) amb la excepció que aquest realm ha de tenir un 3er role de realm addicional anomenat 'platform_admin_role' (composite = True i hereta per defecte el role 'ce_admin_role'), i un grup de usuaris addicional anomenat 'platform_admins_group' al que li assignarem per defecte el role anterior ('platform_admin_role'). Aquest role/group és per assignar als usuaris de la coordinadora amb capacitats al Odoo per poder executar accions inter realm (ex: creacio de nous realms) via la API de KC desde Odoo:
|
|
|
|
|

|
|
|
|
|

|
|
|
|
|

|
|
|
|
|

|
|
|
|
|
1. Al Realm Master, anem al Client admin-cli i activem Acces-Type = ‘Confidencial’ → això habilita la pestanya “Credencials” amb un Secret_id per tal de poder interactuar amb el realm Master via API i poder per exemple crear nous REALMS (= noves CE) desde Odoo/OV:
|
|
|
|
|

|
|
|
|
|
|
|
|
|
|
## [WIP] Odoo: Configuracions Generals
|
|
## [WIP] Odoo: Configuracions Generals
|
|
|
|
|
|
| ... | |
... | |
| ... | | ... | |