Fix priority of interceptors preventing repeated security checks so that interceptor activating CDI request context runs first #40840
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Makes sure that
ActivateRequestContextInterceptor
runs before interceptors that prevent repeated checks which already happened eagerly.Motivation for this change: quarkiverse/quarkus-langchain4j#539 (comment)
When HTTP request has completed, the interceptors preventing repeated checks must applied without internal error. See linked issue for more information.
New order:
ActivateRequestContextInterceptor
priority 100 (activate request context)StandardSecurityCheckInterceptor
s priority 900 (prevent repeated checks if the security check had been performed eagerly)It is fairly edge case because it's hard to avoid active CDI request context at that point and if you activate it, you don't have the identity unless you do custom security yourself. Still, it's right thing to fix it.