8000 Reverse proxy setup cookie issue · Issue #40861 · keycloak/keycloak · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Reverse proxy setup cookie issue #40861
Closed
@Maribhuvan

Description

@Maribhuvan

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugCategorizes a PR related to a bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0