Skip to content

Commit

Permalink
Reso configurabile via docker campo da cui prelevare eppn nel token jwt
Browse files Browse the repository at this point in the history
  • Loading branch information
criluc committed Mar 23, 2022
1 parent 9dfe735 commit 17db7ff
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 4 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [2.4.1] - UNRELEASED
### Added
- Aggiunta configurabilità campo del JWT da dove prelevare il campo eppn dell'utente
### Changed
- Corretta attivazione pulsante inserimento richieste assenza nel passato quando
compilato il campo note.
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.4.1-rc1
2.4.1-rc2
2 changes: 1 addition & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ services:
#- KEYCLOAK_CONFIG_URI=${KEYCLOAK_CONFIG_URI} #Opzionale se OAUTH_LOGIN è false, altrimenti obbligatorio. default: file://${application.path}/conf/default-keycloak.json. Di solito è un URL dell'IdP OIDC
#- KEYCLOAK_CLIENT_ID=${KEYCLOAK_CLIENT_ID} #Opzionale. default: false.
#- KEYCLOAK_CLIENT_SECRET=${KEYCLOAK_CLIENT_SECRET} #Opzionale se OAUTH_LOGIN è false, altrimenti obbligatorio.

#- KEYCLOAK_JWT_FIELD=${KEYCLOAK_JWT_FIELD} #Opzionale. default: email
#### Invio Segnalazioni via email
#- REPORT_TO=${REPORT_TO} # default: epas@iit.cnr.it
#- REPORT_FROM=${REPORT_FROM} # default: segnalazioni@epas.tools.iit.cnr.it
Expand Down
6 changes: 6 additions & 0 deletions docker_conf/init
Original file line number Diff line number Diff line change
Expand Up @@ -365,6 +365,7 @@ OAUTH_LOGIN=${OAUTH_LOGIN:-false}
KEYCLOAK_CONFIG_URI=${KEYCLOAK_CONFIG_URI}
KEYCLOAK_CLIENT_ID=${KEYCLOAK_CLIENT_ID:-epas}
KEYCLOAK_CLIENT_SECRET=${KEYCLOAK_CLIENT_SECRET}
KEYCLOAK_JWT_FIELD=${KEYCLOAK_JWT_FIELD}
JWT_KEY=${JWT_KEY}

sed 's#{{OAUTH_LOGIN}}#'"${OAUTH_LOGIN}"'#' -i ${APP_HOME}/conf/prod.conf
Expand All @@ -381,6 +382,11 @@ if [ ${OAUTH_LOGIN} = "true" ]; then
else
sed 's#{{KEYCLOAK_CLIENT_SECRET}}#'"${KEYCLOAK_CLIENT_SECRET}"'#' -i ${APP_HOME}/conf/prod.conf
fi
if [ -z "${KEYCLOAK_JWT_FIELD}" ]; then
sed -n '/KEYCLOAK_JWT_FIELD/!p' -i ${APP_HOME}/conf/prod.conf
else
sed 's#{{KEYCLOAK_JWT_FIELD}}#'"${KEYCLOAK_JWT_FIELD}"'#' -i ${APP_HOME}/conf/prod.conf
fi
if [ -z "${JWT_KEY}" ]; then
sed -n '/JWT_KEY/!p' -i ${APP_HOME}/conf/prod.conf
else
Expand Down
1 change: 1 addition & 0 deletions docker_conf/prod.conf
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,7 @@
%prod.keycloak.config.uri={{KEYCLOAK_CONFIG_URI}}
%prod.keycloak.client_id ={{KEYCLOAK_CLIENT_ID}}
%prod.keycloak.client_secret ={{KEYCLOAK_CLIENT_SECRET}}
%prod.keycloak.jwt.field={{KEYCLOAK_JWT_FIELD}}

# Fine configurazione OAUTH

Expand Down
7 changes: 5 additions & 2 deletions docs/sysadmin/autenticazioneOidc.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@ nel docker-compose.yml di esempio:
#- KEYCLOAK_CONFIG_URI=${KEYCLOAK_CONFIG_URI} #Opzionale se OAUTH_LOGIN è false, altrimenti obbligatorio. default: file://${application.path}/conf/default-keycloak.json. Di solito è un URL dell'IdP OIDC
#- KEYCLOAK_CLIENT_ID=${KEYCLOAK_CLIENT_ID} #Opzionale. default: false.
#- KEYCLOAK_CLIENT_SECRET=${KEYCLOAK_CLIENT_SECRET} #Opzionale se OAUTH_LOGIN è false, altrimenti obbligatorio.
#- KEYCLOAK_JWT_FIELD=${KEYCLOAK_JWT_FIELD} #Opzionale. default: email
Per utilizzare l'autenticazione di tipo OAuth è necessario prima di tutto configurare sul proprio
Identity Provider OIDC un *client OIDC*.
La configurazione del client prevede di specificare almeno le *Valid Redirect URIs*, ovvero le URL
Expand Down Expand Up @@ -60,7 +61,9 @@ Match tra utenti Keycloak e utenti ePAS
------------------------------------------
Una volta autenticati tramite OIDC ePAS riceve un token con le informazioni dell'utente.
Questo token deve contenere anche il campo *email*, di solito nei profili di default associati
ai client OIDC il campo *email* è sempre presente.
ai client OIDC il campo *email* è sempre presente.
È possibile modificare il campo prelevato dal token (*email*) specificando un altro campo
tramite la variabile di ambiente **KEYCLOAK_JWT_FIELD**.

ePAS *ricongiunge* gli utenti autenticati con OIDC con gli utenti interni ad ePAS tramite
la corrispondenza del campo **ePPN** presente nell'anagrafica di ePAS con il campo *email* presente
Expand Down

0 comments on commit 17db7ff

Please sign in to comment.