You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Java 21 regression bug: devserver (but not the production server) responds with HTTP 403 Forbidden when a securtiy constraint is defined upon a static file (e.g. index.html)
#242
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
When setting <java21> in appengine-web.xml,
and when a security constraint is defined over a static file (e.g. index.html), the devserver (and probably the production server) responds with HTTP 403 instead of serving the file.
Note that setting <java17> in appengine-web.xml is a workaround that prevents the issue.
I deployed the test files (test-files.txt) on the production server. Apparently, the production server is not impacted by this bug.
ludoch
changed the title
Java 21 regression bug: devserver (and probably the production server) responds with HTTP 403 Forbidden when a securtiy constraint is defined upon a static file (e.g. index.html)
Java 21 regression bug: devserver (but not the production server) responds with HTTP 403 Forbidden when a securtiy constraint is defined upon a static file (e.g. index.html)
Jul 3, 2024
Your admin security constraint is redundant as admin is already covered under *.
I have been able to reproduce this, and removing the admin constraint stopped me getting 403's.
I am still investigating why these are combining to not allow the request. In my tests I am not seeing the request for /index.html reach the Jetty security handler at all.
I can even reproduce this on prod in the java8 runtime.
The request is not served by Jetty because it is detected as a static file, and I can see in app.yaml. It has defined the required role as admin instead of required which would allow any user.
This is different to how these constrains would combine in the servlet spec which should go to required. So if the request were to reach Jetty it should serve the index.html.
When setting
<java21>
in appengine-web.xml,and when a security constraint is defined over a static file (e.g. index.html), the devserver (and probably the production server) responds with HTTP 403 instead of serving the file.
Note that setting
<java17>
in appengine-web.xml is a workaround that prevents the issue.test-files.txt
The text was updated successfully, but these errors were encountered: