🔁 Rekommenderad väg för testmiljö

Kör en minimal proxy/server som:

  • Tar emot /authauth.jidoka.se.
  • Läser ditt PFX-certifikat (för mTLS).
  • Pratar med Freja:s OIDC-endpoints.
  • Returnerar ett svar som OIDC-klienten förstår.

Jag kan hjälpa dig sätta upp en sådan i Node.js, Go eller nginx beroende på dina preferenser.

Vill du att jag genererar ett exempel med Node.js + express + http-proxy-middleware som gör detta, inkl. stöd för Freja:s test-certifikat (PFX)?

Bra fråga! Här är en tydlig jämförelse mellan de tre förslagen – och varför jag föreslår Node.js i just ditt fall:

🔁 Vad du behöver:

Du vill ha en tunn serverauth.jidoka.se som:

  1. Tar emot OIDC-förfrågningar (t.ex. /auth, /token, /callback).
  2. Använder ditt Freja PFX-certifikat för att kommunicera med Freja testmiljö (via mutual TLS).
  3. Vidarebefordrar svaren till OIDC-klienten (exempelvis WordPress).

⚙️ Skillnader mellan Node.js, Go och Nginx

VerktygTypFördelarNackdelar
Node.jsProgrammerbart ramverk (JS)✅ Enkelt att skriva logik
✅ Har bibliotek för OIDC + mTLS
✅ Du kan logga, testa, debugga
🔧 Kräver Node.js installerat
Go (Golang)Programmerbart ramverk (Go)✅ Väldigt snabbt och säkert
✅ Bra för produktion
🔧 Kräver Go-kod och kompilering
⏱ Tar längre tid att sätta upp
NginxWebbserver + reverse proxy✅ Låg CPU-användning
✅ Enkelt att forwarda requests
❌ Ingen inbyggd mTLS-klient
❌ Kan inte hantera OIDC-flödet själv

🧠 Slutsats: Node.js passar bäst nu

Eftersom:

  • Du har PFX-certifikatet från Freja.
  • Du behöver mTLS + OIDC + enkel routing.
  • Du troligen vill ha något du kan läsa och anpassa själv.

⬇️ Vill du att jag skapar en färdig Node.js-lösning som:

  • Kör som en liten server på auth.jidoka.se.
  • Använder ditt Freja-certifikat (.pfx).
  • Tar emot /auth och kör hela OIDC-flödet?

Säg bara till – jag fixar ett fungerande exempel med installationsinstruktioner.


Node.js ”OIDC-proxy”

Freja OIDC proxy
// Enkel OIDC-proxy till Freja via mTLS med Node.js

Här är ett fungerande exempel på en OIDC-proxy med Node.js som vidarebefordrar /auth till Frejas testmiljö över mTLS.

Förutsättningar:

  • Du har filen freja.pfx (certifikat från Freja)
  • Du har ett lokalt certifikat (localhost.crt och localhost.key) för att köra HTTPS
  • Installera nödvändiga moduler:
install express http-proxy-middleware

Nästa steg

  1. Lägg filerna i samma mapp som scriptet.
  2. Starta med:
sudo node app.js
  1. Testa i webbläsaren eller med curl:
curl -vk https://localhost/auth/oidc/.well-known/openid-configuration

Vill du köra detta bakom Nginx Proxy Manager på auth.jidoka.se/auth, så kan vi justera det efteråt. Vill du det?

Jidoka autorization url
https://oidc.prod.frejaeid.com/oidc/authorize?&response_type=code&scope=openid%20email%20profile&client_id=oidc-jidoka&state=52051f72df5d9befa6f1e3b433b2183d&redirect_uri=https%3A%2F%2Fwww.jidoka.se%2Fopenid-connect-authorize