From 7ce680d1da03f3549e62779a8bc879f16ef53709 Mon Sep 17 00:00:00 2001 From: Alessandro Sebastiani Date: Mon, 1 Jul 2024 19:25:13 +0200 Subject: [PATCH 1/2] feat: add support for http plain server --- Dockerfile | 2 ++ docker-compose.yml | 1 + spid-validator/server/spid-validator.js | 4 ++-- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8c68883..5af71fd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,6 +5,7 @@ ARG BUILD_DATE ARG VCS_REF ARG VCS_URL ARG VERSION +ARG USE_HTTPS ARG EXPOSE_HTTPS_PORT # Define the Metadata Container image @@ -59,6 +60,7 @@ ADD . /spid-saml-check RUN mkdir /spid-saml-check/data ENV TZ=Europe/Rome +ENV NODE_USE_HTTPS=${USE_HTTPS} ENV NODE_HTTPS_PORT=${EXPOSE_HTTPS_PORT} # Build validator diff --git a/docker-compose.yml b/docker-compose.yml index f07b841..973a24a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -6,4 +6,5 @@ services: container_name: spid-saml-check restart: unless-stopped ports: + - "8080:8080" - "8443:8443" diff --git a/spid-validator/server/spid-validator.js b/spid-validator/server/spid-validator.js index 36be991..a578c53 100644 --- a/spid-validator/server/spid-validator.js +++ b/spid-validator/server/spid-validator.js @@ -29,7 +29,7 @@ const Authenticator = require("./lib/authenticator"); const { config } = require("process"); const os = require('os'); -const useHttps = config_server.useHttps; +const useHttps = (process.env.NODE_USE_HTTPS) ? /^true$/i.test(process.env.NODE_USE_HTTPS) : config_server.useHttps; const httpPort = (process.env.NODE_HTTPS_PORT) ? process.env.NODE_HTTPS_PORT : config_server.port; let https; @@ -278,5 +278,5 @@ app.listen(httpPort, () => { console.log("\n\nSPID SP Test Tool (spid-sp-test), version: " + version); }); - console.log("\n\nlistening on port " + httpPort); + console.log("\n\nlistening on port " + httpPort + " support for TLS is: " + useHttps); }); From 44a53b15a8eb449ff1d295003a88bcec9eecdf65 Mon Sep 17 00:00:00 2001 From: Alessandro Sebastiani Date: Thu, 11 Jul 2024 16:49:37 +0200 Subject: [PATCH 2/2] feat: use different http port - update README --- README.it.md | 6 ++++++ README.md | 6 ++++++ spid-validator/config/server.json | 3 ++- spid-validator/server/spid-validator.js | 7 ++++++- 4 files changed, 20 insertions(+), 2 deletions(-) diff --git a/README.it.md b/README.it.md index 532fe0e..832e2c7 100644 --- a/README.it.md +++ b/README.it.md @@ -21,6 +21,12 @@ docker run -t -i -p 8443:8443 italia/spid-saml-check # Esecuzione di una specifica versione docker run -t -i -p 8443:8443 italia/spid-saml-check:v.1.8.1 + +# Esecuzione dell'ultima versione specificando la porta TLS +docker run -t -i -p 10443:10443 -e NODE_HTTPS_PORT=10443 italia/spid-saml-check + +# Esecuzione dell'ultima versione disabilitando il TLS e porta 8080 +docker run -t -i -p 8080:8080 -e NODE_USE_HTTPS=false -e NODE_HTTPS_PORT=8080 italia/spid-saml-check ``` Così facendo l'applicazione spid-validator è immediatamente disponibile diff --git a/README.md b/README.md index 8ad5a5e..86e901f 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,12 @@ docker run -t -i -p 8443:8443 italia/spid-saml-check # Executes a specific version docker run -t -i -p 8443:8443 italia/spid-saml-check:v.1.8.2 + +# Executes a specific version setting TLS port +docker run -t -i -p 10443:10443 -e NODE_HTTPS_PORT=10443 italia/spid-saml-check + +# Executes a specific version disabling TLS and setting port 8080 +docker run -t -i -p 8080:8080 -e NODE_USE_HTTPS=false -e NODE_HTTPS_PORT=8080 italia/spid-saml-check ``` The application spid-validator is immediately available at https://localhost:8443 diff --git a/spid-validator/config/server.json b/spid-validator/config/server.json index 402ad93..0b9cabf 100644 --- a/spid-validator/config/server.json +++ b/spid-validator/config/server.json @@ -1,6 +1,7 @@ { "host": "https://localhost", - "port": 8443, + "port": 8080, + "s_port": 8443, "useProxy": false, "useHttps": true, "httpsPrivateKey": "./config/spid-saml-check.key", diff --git a/spid-validator/server/spid-validator.js b/spid-validator/server/spid-validator.js index a578c53..f1c058f 100644 --- a/spid-validator/server/spid-validator.js +++ b/spid-validator/server/spid-validator.js @@ -30,7 +30,12 @@ const { config } = require("process"); const os = require('os'); const useHttps = (process.env.NODE_USE_HTTPS) ? /^true$/i.test(process.env.NODE_USE_HTTPS) : config_server.useHttps; -const httpPort = (process.env.NODE_HTTPS_PORT) ? process.env.NODE_HTTPS_PORT : config_server.port; +const httpPort = process.env.NODE_HTTPS_PORT + ? process.env.NODE_HTTPS_PORT + : useHttps + ? config_server.s_port + : config_server.port; + let https; let httpsPrivateKey;