Integrer l'authentification Keycloak dans l'application
This commit is contained in:
@@ -34,7 +34,7 @@
|
||||
"protocol": "openid-connect",
|
||||
"publicClient": true,
|
||||
"standardFlowEnabled": true,
|
||||
"directAccessGrantsEnabled": false,
|
||||
"directAccessGrantsEnabled": true,
|
||||
"serviceAccountsEnabled": false,
|
||||
"implicitFlowEnabled": false,
|
||||
"frontchannelLogout": true,
|
||||
|
||||
43
keycloak/scripts/init-config.sh
Normal file
43
keycloak/scripts/init-config.sh
Normal file
@@ -0,0 +1,43 @@
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
KEYCLOAK_URL="${KEYCLOAK_URL:-http://keycloak:8080/auth}"
|
||||
KEYCLOAK_REALM="${KEYCLOAK_REALM:-chesscubing}"
|
||||
KEYCLOAK_CLIENT_ID="${KEYCLOAK_CLIENT_ID:-chesscubing-web}"
|
||||
KEYCLOAK_ADMIN_USERNAME="${KEYCLOAK_ADMIN_USERNAME:-admin}"
|
||||
KEYCLOAK_ADMIN_PASSWORD="${KEYCLOAK_ADMIN_PASSWORD:-admin}"
|
||||
|
||||
echo "Attente de Keycloak..."
|
||||
until /opt/keycloak/bin/kcadm.sh config credentials \
|
||||
--server "$KEYCLOAK_URL" \
|
||||
--realm master \
|
||||
--user "$KEYCLOAK_ADMIN_USERNAME" \
|
||||
--password "$KEYCLOAK_ADMIN_PASSWORD" >/dev/null 2>&1; do
|
||||
sleep 2
|
||||
done
|
||||
|
||||
CLIENT_INTERNAL_ID="$(
|
||||
/opt/keycloak/bin/kcadm.sh get clients \
|
||||
-r "$KEYCLOAK_REALM" \
|
||||
-q clientId="$KEYCLOAK_CLIENT_ID" \
|
||||
--fields id \
|
||||
--format csv \
|
||||
--noquotes | tail -n 1
|
||||
)"
|
||||
|
||||
if [ -z "$CLIENT_INTERNAL_ID" ]; then
|
||||
echo "Client Keycloak introuvable: $KEYCLOAK_CLIENT_ID"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
/opt/keycloak/bin/kcadm.sh update "clients/$CLIENT_INTERNAL_ID" \
|
||||
-r "$KEYCLOAK_REALM" \
|
||||
-s directAccessGrantsEnabled=true \
|
||||
-s standardFlowEnabled=true \
|
||||
-s publicClient=true >/dev/null
|
||||
|
||||
/opt/keycloak/bin/kcadm.sh update "realms/$KEYCLOAK_REALM" \
|
||||
-s registrationAllowed=true \
|
||||
-s loginWithEmailAllowed=true >/dev/null
|
||||
|
||||
echo "Configuration Keycloak synchronisee."
|
||||
Reference in New Issue
Block a user