Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork9.6k
[Security] Use the session only if it is started when usingSameOriginCsrfTokenManager
#59146
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.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
carsonbot commentedDec 9, 2024
Hey! I see that this is your first PR. That is great! Welcome! Symfony has acontribution guide which I suggest you to read. In short:
Review the GitHub status checks of your pull request and try to solve the reported issues. If some tests are failing, try to see if they are failing because of this change. When two Symfony core team members approve this change, it will be merged and you will become an official Symfony contributor! I am going to sit back now and wait for the reviews. Cheers! Carsonbot |
SameOriginCsrfTokenManager
SameOriginCsrfTokenManager
carsonbot commentedDec 9, 2024
Hey! Thanks for your PR. You are targeting branch "7.3" but it seems your PR description refers to branch "7.2". Cheers! Carsonbot |
Maybe you could you take a look@nicolas-grekas ? 🙏 |
…inCsrfTokenManager`
SameOriginCsrfTokenManager
SameOriginCsrfTokenManager
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
I made some changes to also not trigger session usage tracking.
Thanks ! |
Thank you@Crovitche-1623. |
e36382c
intosymfony:7.2Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
If I understand well, the
SameOriginCsrfTokenManager
has been created to provide a stateless way of creating CSRF tokens and therefore allow pages with CSRF tokens to be cached.When using
Symfony\Component\Security\Csrf\SameOriginCsrfTokenManager
, I think an additionnal check must be done to ensure that the session is started in addition to verifying that it exists. If not, the CSRF strategy used will be persisted everytime in the session and the stateless check (used with the#[Route]
attribute parameter) will therefore never pass.