Description
Before reporting an issue
- I have read and understood the above terms for submitting issues, and I understand that my issue may be closed without action if I do not follow them.
Area
No response
Describe the bug
Hi, I'm using Keycloak for authentication and have set up a reverse proxy using Express.js. The redirection to my application port after login works successfully, but I'm immediately logged out afterward. It seems the issue is that cookies are not being set properly.
below is my keycloak.conf setup
kc.spi.cookies.same-site-cookie-value=None
kc.spi.cookies.secure=true
kc.spi.cookies.http->
spi-sticky-session-encoder-infinispan-should-attach-route=false
proxy=edge
proxy-address-forwarding=true
hostname=rtmcdtm4x34.local
hostname-strict=false
hostname-strict-https=false
my backend code:
const authProxy = createProxyMiddleware({
target: 'https://mydomain:8553/',
changeOrigin: true,
xfwd: true,
secure: false,
logger: console,
on: {
proxyReq: (proxyReq, req, res) => {
proxyReq.setHeader('X-Forwarded-Proto', 'https');
proxyReq.setHeader('X-Forwarded-Host', 'mydomain');
proxyReq.setHeader('X-Forwarded-Port', '9444');
proxyReq.setHeader('X-Forwarded-For', req.ip);
},
error: (err, req, res) => {
console.error('Proxy error:', err, req, res);
},
},
});
const resouceProxy = createProxyMiddleware({
target: 'https://mydomain:8553/resources',
changeOrigin: true,
xfwd: true,
secure: false,
logger: console,
on: {
proxyReq: (proxyReq, req, res) => {
proxyReq.setHeader('X-Forwarded-Proto', 'https');
proxyReq.setHeader('X-Forwarded-Host', 'mydomain');
proxyReq.setHeader('X-Forwarded-Port', '9444');
proxyReq.setHeader('X-Forwarded-For', req.ip);
},
error: (err, req, res) => {
console.error('Proxy error:', err, req, res);
},
},
});
const realmsProxy = createProxyMiddleware({
target: 'https://mydomain:8553/realms',
changeOrigin: true,
xfwd: true,
secure: false,
logger: console,
on: {
proxyReq: (proxyReq, req, res) => {
proxyReq.setHeader('X-Forwarded-Proto', 'https');
proxyReq.setHeader('X-Forwarded-Host', 'mydomain');
proxyReq.setHeader('X-Forwarded-Port', '9444');
proxyReq.setHeader('X-Forwarded-For', req.ip);
},
error: (err, req, res) => {
console.error('Proxy error:', err, req, res);
},
},
});
app.use('/auth', authProxy);
app.use('/resources', resouceProxy);
app.use('/realms', realmsProxy);
frontend code:
const keycloak = new Keycloak({
url: https://${hostname}:9444/auth
,
realm: 'relamid'
clientId: 'clientid'
});
Version
26.0.1
Regression
- The issue is a regression
Expected behavior
Maintain the session as its when i logged IN to my application
Actual behavior
When i logged in immediately its logged out when i checked authentication session cookies are not set properly
How to Reproduce?
after login
Anything else?
No response