nginxinc/nginx-openid-connect

different config per Location

realtothstar opened this issue · 7 comments

How is it possible to configure openid that per location is used different configuration :

location /a
location /a/autharea
config1

location /b
location /b/autharea
config2

What aspects of the configuration would you like to be different?

For most things it should be a case of modifying the map…$oidc_ blocks in openid_connect_configuration.conf

For example, swap $host for $uri to control the scopes

map $uri $oidc_scopes {
    /a/authareaa "openid";
    /b/authareab "openid+email";
    default "openid+profile+email+offline_access";
}

Great this is what i'am looking for , unfortunately I didn't found any further documentation regarding this case. I will test tomorrow , thank you kindly in advanced.

test it, the diffent locations redirect now correctly to different keycloak realms, that works, but after login i get the following error:


2020/12/08 09:54:49 [error] 126901#126901: *3 invalid URL prefix in "", client: 172.XXXXX, server: , request: "GET /_codexch?state=0&session_state=e7a168e1-e051-41d9-8986-e1efd24f7d20&code=eeca29b8-d95a-4072-adf5-b0d644068ead.e7a168e1-e051-41d9-8986-e1efd24f7d20.45536850-b020-41da-a291-8e4efe1bb752 HTTP/1.1", subrequest: "/_token", host: "172.XXX"

here my openid_connect_configuration.conf:

# OpenID Connect configuration
#
# Each map block allows multiple values so that multiple IdPs can be supported,
# the $host variable is used as the default input parameter but can be changed.


map $uri $oidc_authz_endpoint {

    /a/auth/ https://iam.xxx.de/auth/realms/xxxx/protocol/openid-connect/auth;
    /b/auth/ https://iam.xxx.de/auth/realms/xx/protocol/openid-connect/auth;
}



map $uri $oidc_token_endpoint {

    /a/auth  https://iam.xxx.de/auth/realms/xxxx/protocol/openid-connect/auth;
    /b/auth  https://iam.xxx.de/auth/realms/xxxx/protocol/openid-connect/auth;
}

map $uri $oidc_jwt_keyfile {

   /a/auth conf.d/a.json;
   /b/auth conf.d/b.json;
}

map $host $oidc_client {

    default nginx-plus;
}

map $uri $oidc_client_secret {
    /a/auth XXXX;
    /b/auth XXXX;
}

map $host $oidc_scopes {
    default "openid+profile+email+offline_access";
}

map $host $oidc_logout_redirect {
    # Where to send browser after requesting /logout location. This can be
    # replaced with a custom logout page, or complete URL.
    default "/_logout"; # Built-in, simple logout page
}

map $host $oidc_hmac_key {
    # This should be unique for every NGINX instance/cluster
    default Vp2mf7iptQPrjlPH1mzH+pJY;







}

map $proto $oidc_cookie_flags {
    http  "Path=/; SameSite=lax;"; # For HTTP/plaintext testing
   https "Path=/; SameSite=lax; HttpOnly; Secure;"; # Production recommendation
}

map $http_x_forwarded_port $redirect_base {
    ""      $proto://$host:$server_port;
    default $proto://$host:$http_x_forwarded_port;
}

map $http_x_forwarded_proto $proto {
    ""      $scheme;
    default $http_x_forwarded_proto;
}

# ADVANCED CONFIGURATION BELOW THIS LINE
# Additional advanced configuration (server context) in openid_connect.server_conf

# JWK Set will be fetched from $oidc_jwks_uri and cached here - ensure writable by nginx user
proxy_cache_path /var/cache/nginx/jwk levels=1 keys_zone=jwk:64k max_size=1m;

# Change timeout values to at least the validity period of each token type
keyval_zone zone=oidc_id_tokens:1M state=conf.d/oidc_id_tokens.json timeout=1h;
keyval_zone zone=refresh_tokens:1M state=conf.d/refresh_tokens.json timeout=8h;

keyval $cookie_auth_token $session_jwt zone=oidc_id_tokens;   # Exchange cookie for JWT
keyval $cookie_auth_token $refresh_token zone=refresh_tokens; # Exchange cookie for refresh token
keyval $request_id $new_session zone=oidc_id_tokens; # For initial session creation
keyval $request_id $new_refresh zone=refresh_tokens; # ''

auth_jwt_claim_set $jwt_audience aud; # In case aud is an array
js_import oidc from conf.d/openid_connect.js;

# vim: syntax=nginx 


Please try correcting the $oidc_token_endpoint configuration to use /token instead of /auth.

If that doesn't help, then enable debug logging so we can understand more about the error message.

i have already corrected, but it isnt working again. I enabled the debug mode, but the error log shows no more information:

2020/12/08 11:11:39 [error] 9051#9051: *12 invalid URL prefix in "", client: 172.XXX, server: , request: "GET /_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752 HTTP/1.1", subrequest: "/_token", host: "172.16.0.137"
2020/12/08 11:11:39 [error] 9051#9051: *12 js: OIDC unexpected response from IdP when sending authorization code (HTTP 500). <html>
<head><title>500 Internal Server Error</title></head>
<body>
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx/1.19.0</center>
</body>
</html>

2020/12/08 11:11:39 [error] 9051#9051: *12 open() "/etc/nginx/html/favicon.ico" failed (2: No such file or directory), client: 172.XXX, server: , request: "GET /favicon.ico HTTP/1.1", host: "172.16.0.137", referrer: "http://172.16.0.137/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"

now debug log works:

2020/12/08 11:15:07 [notice] 12195#12195: using the "epoll" event method
2020/12/08 11:15:07 [notice] 12195#12195: nginx/1.19.0 (nginx-plus-r22)
2020/12/08 11:15:07 [notice] 12195#12195: built by gcc 8.3.0 (Debian 8.3.0-6)
2020/12/08 11:15:07 [notice] 12195#12195: OS: Linux 4.19.0-12-amd64
2020/12/08 11:15:07 [notice] 12195#12195: getrlimit(RLIMIT_NOFILE): 1024:524288
2020/12/08 11:15:07 [notice] 12196#12196: start worker processes
2020/12/08 11:15:07 [notice] 12196#12196: start worker process 12197
2020/12/08 11:15:07 [notice] 12196#12196: start worker process 12198
2020/12/08 11:15:07 [notice] 12196#12196: start cache manager process 12199
2020/12/08 11:15:07 [notice] 12196#12196: start cache loader process 12200
2020/12/08 11:15:14 [debug] 12197#12197: *1 http process request line
2020/12/08 11:15:14 [debug] 12197#12197: *1 http request line: "GET /_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752 HTTP/1.1"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http uri: "/_codexch"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http args: "state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http exten: ""
2020/12/08 11:15:14 [debug] 12197#12197: *1 posix_memalign: 00005610DA95BE30:4096 @16
2020/12/08 11:15:14 [debug] 12197#12197: *1 http process request header line
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header: "Host: 172.16.0.137"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header: "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:83.0) Gecko/20100101 Firefox/83.0"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header: "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header: "Accept-Language: de,en-US;q=0.7,en;q=0.3"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header: "Accept-Encoding: gzip, deflate"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header: "Connection: keep-alive"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header: "Cookie: auth_redir=/devopsbt/test/; auth_nonce=a87090d0cd280f04a6ad183539f38d00"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header: "Upgrade-Insecure-Requests: 1"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header: "Cache-Control: max-age=0"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http header done
2020/12/08 11:15:14 [debug] 12197#12197: *1 event timer del: 14: 517014213
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 0
2020/12/08 11:15:14 [debug] 12197#12197: *1 rewrite phase: 1
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script value: "NGINX / OpenID Connect login failure
"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script set $internal_error_message
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script value: "/_codexch"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script set $redir_location
2020/12/08 11:15:14 [debug] 12197#12197: *1 test location: "/_refresh"
2020/12/08 11:15:14 [debug] 12197#12197: *1 test location: "/_jwks_uri"
2020/12/08 11:15:14 [debug] 12197#12197: *1 test location: "/_id_token_validation"
2020/12/08 11:15:14 [debug] 12197#12197: *1 test location: "/_codexch"
2020/12/08 11:15:14 [debug] 12197#12197: *1 using configuration "=/_codexch"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http cl:-1 max:1048576
2020/12/08 11:15:14 [debug] 12197#12197: *1 rewrite phase: 3
2020/12/08 11:15:14 [debug] 12197#12197: *1 post rewrite phase: 4
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 5
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 6
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 7
2020/12/08 11:15:14 [debug] 12197#12197: *1 access phase: 8
2020/12/08 11:15:14 [debug] 12197#12197: *1 access phase: 9
2020/12/08 11:15:14 [debug] 12197#12197: *1 access phase: 10
2020/12/08 11:15:14 [debug] 12197#12197: *1 access phase: 11
2020/12/08 11:15:14 [debug] 12197#12197: *1 post access phase: 12
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 13
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 14
2020/12/08 11:15:14 [debug] 12197#12197: *1 add cleanup: 00005610DA95C3C8
2020/12/08 11:15:14 [debug] 12197#12197: *1 posix_memalign: 00005610DA95E7B0:4096 @16
2020/12/08 11:15:14 [debug] 12197#12197: *1 http subrequest "/_token?code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http finalize request: -4, "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752" a:1, c:3
2020/12/08 11:15:14 [debug] 12197#12197: *1 http request count:3 blk:0
2020/12/08 11:15:14 [debug] 12197#12197: *1 http posted request: "/_token?code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 rewrite phase: 1
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script value: "NGINX / OpenID Connect login failure
"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script set $internal_error_message
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script value: "/_codexch"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script set $redir_location
2020/12/08 11:15:14 [debug] 12197#12197: *1 test location: "/_refresh"
2020/12/08 11:15:14 [debug] 12197#12197: *1 test location: "/api/"
2020/12/08 11:15:14 [debug] 12197#12197: *1 test location: "/_token"
2020/12/08 11:15:14 [debug] 12197#12197: *1 using configuration "=/_token"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http cl:-1 max:1048576
2020/12/08 11:15:14 [debug] 12197#12197: *1 rewrite phase: 3
2020/12/08 11:15:14 [debug] 12197#12197: *1 post rewrite phase: 4
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 5
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 6
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 7
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 13
2020/12/08 11:15:14 [debug] 12197#12197: *1 generic phase: 14
2020/12/08 11:15:14 [debug] 12197#12197: *1 http map started
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script var: "/_token"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http map: "/_token" ""
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script var: ""
2020/12/08 11:15:14 [error] 12197#12197: *1 invalid URL prefix in "", client: 172.16.16.15, server: , request: "GET /_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752 HTTP/1.1", subrequest: "/_token", host: "172.16.0.137"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http finalize request: 500, "/_token?code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752" a:0, c:2
2020/12/08 11:15:14 [debug] 12197#12197: *1 http special response: 500, "/_token?code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http output filter "/_token?code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http copy filter: "/_token?code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http postpone filter "/_token?code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752" 00005610DA95CE00
2020/12/08 11:15:14 [debug] 12197#12197: *1 http postpone filter in memory
2020/12/08 11:15:14 [debug] 12197#12197: *1 http postpone filter in memory 124 bytes
2020/12/08 11:15:14 [debug] 12197#12197: *1 http postpone filter in memory 53 bytes
2020/12/08 11:15:14 [debug] 12197#12197: *1 http copy filter: 0 "/_token?code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http finalize request: 0, "/_token?code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752" a:0, c:2
2020/12/08 11:15:14 [error] 12197#12197: *1 js: OIDC unexpected response from IdP when sending authorization code (HTTP 500). <html>
<head><title>500 Internal Server Error</title></head>
<body>
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx/1.19.0</center>
</body>
</html>

2020/12/08 11:15:14 [debug] 12197#12197: *1 http request count:2 blk:0
2020/12/08 11:15:14 [debug] 12197#12197: *1 http posted request: "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http finalize request: 502, "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752" a:1, c:1
2020/12/08 11:15:14 [debug] 12197#12197: *1 http special response: 502, "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 test location: "@do_oidc_flow"
2020/12/08 11:15:14 [debug] 12197#12197: *1 test location: "@oidc_error"
2020/12/08 11:15:14 [debug] 12197#12197: *1 using location: @oidc_error "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 rewrite phase: 3
2020/12/08 11:15:14 [debug] 12197#12197: *1 http script var: "NGINX / OpenID Connect login failure
"
2020/12/08 11:15:14 [debug] 12197#12197: *1 HTTP/1.1 502 Bad Gateway
Server: nginx/1.19.0
Date: Tue, 08 Dec 2020 10:15:14 GMT
Content-Type: text/plain
Content-Length: 37
Connection: keep-alive

2020/12/08 11:15:14 [debug] 12197#12197: *1 write new buf t:1 f:0 00005610DA95F530, pos 00005610DA95F530, size: 157 file: 0, size: 0
2020/12/08 11:15:14 [debug] 12197#12197: *1 http write filter: l:0 f:0 s:157
2020/12/08 11:15:14 [debug] 12197#12197: *1 http output filter "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http copy filter: "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http postpone filter "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752" 00007FFFF0811F90
2020/12/08 11:15:14 [debug] 12197#12197: *1 write old buf t:1 f:0 00005610DA95F530, pos 00005610DA95F530, size: 157 file: 0, size: 0
2020/12/08 11:15:14 [debug] 12197#12197: *1 write new buf t:0 f:0 0000000000000000, pos 00005610DA95F468, size: 37 file: 0, size: 0
2020/12/08 11:15:14 [debug] 12197#12197: *1 http write filter: l:1 f:0 s:194
2020/12/08 11:15:14 [debug] 12197#12197: *1 http write filter limit 0
2020/12/08 11:15:14 [debug] 12197#12197: *1 writev: 194 of 194
2020/12/08 11:15:14 [debug] 12197#12197: *1 http write filter 0000000000000000
2020/12/08 11:15:14 [debug] 12197#12197: *1 http copy filter: 0 "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752"
2020/12/08 11:15:14 [debug] 12197#12197: *1 http finalize request: 0, "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752" a:1, c:2
2020/12/08 11:15:14 [debug] 12197#12197: *1 http request count:2 blk:0
2020/12/08 11:15:14 [debug] 12197#12197: *1 http finalize request: -4, "/_codexch?state=0&session_state=17a4a894-9c9b-42e3-9eac-59f9bb9c1e66&code=979fd7df-8da1-4267-8d97-ef07ce34278f.17a4a894-9c9b-42e3-9eac-59f9bb9c1e66.45536850-b020-41da-a291-8e4efe1bb752" a:1, c:1
2020/12/08 11:15:14 [debug] 12197#12197: *1 set http keepalive handler
2020/12/08 11:15:14 [debug] 12197#12197: *1 http close request
2020/12/08 11:15:14 [debug] 12197#12197: *1 http log handler
2020/12/08 11:15:14 [debug] 12197#12197: *1 posix_memalign: 00005610DA8ED670:4096 @16
2020/12/08 11:15:14 [debug] 12197#12197: *1 http session log handler
2020/12/08 11:15:14 [debug] 12197#12197: *1 run cleanup: 00005610DA95C3C8
2020/12/08 11:15:14 [debug] 12197#12197: *1 free: 00005610DA8F4510, unused: 3
2020/12/08 11:15:14 [debug] 12197#12197: *1 free: 00005610DA95BE30, unused: 0
2020/12/08 11:15:14 [debug] 12197#12197: *1 free: 00005610DA95E7B0, unused: 328
2020/12/08 11:15:14 [debug] 12197#12197: *1 free: 00005610DA8ED670, unused: 3685
2020/12/08 11:15:14 [debug] 12197#12197: *1 free: 00005610DA8CA7F0
2020/12/08 11:15:14 [debug] 12197#12197: *1 hc free: 0000000000000000
2020/12/08 11:15:14 [debug] 12197#12197: *1 hc busy: 0000000000000000 0
2020/12/08 11:15:14 [debug] 12197#12197: *1 tcp_nodelay
2020/12/08 11:15:14 [debug] 12197#12197: *1 reusable connection: 1
2020/12/08 11:15:14 [debug] 12197#12197: *1 event timer add: 14: 65000:517019213
2020/12/08 11:16:07 [notice] 12200#12200: http file cache: /var/cache/nginx/jwk 0.000M, bsize: 4096
2020/12/08 11:16:07 [notice] 12196#12196: signal 17 (SIGCHLD) received from 12200
2020/12/08 11:16:07 [notice] 12196#12196: cache loader process 12200 exited with code 0
2020/12/08 11:16:07 [notice] 12196#12196: signal 29 (SIGIO) received
2020/12/08 11:16:19 [debug] 12197#12197: *1 event timer del: 14: 517019213
2020/12/08 11:16:19 [debug] 12197#12197: *1 http keepalive handler
2020/12/08 11:16:19 [debug] 12197#12197: *1 close http connection: 14
2020/12/08 11:16:19 [debug] 12197#12197: *1 reusable connection: 0
2020/12/08 11:16:19 [debug] 12197#12197: *1 free: 0000000000000000
2020/12/08 11:16:19 [debug] 12197#12197: *1 free: 00005610DA8E4640, unused: 120

Hi @BenjaminToth - sorry for the long wait on this. I have commented on the latest issue about the location based IdP Configuration. See issue #44 for more details.
Cheers Timo