-
Notifications
You must be signed in to change notification settings - Fork 581
Adding documentation for Fetch Metadata, Cross-Origin Opener Poliy & Cross-Origin Embedder Policy #149
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 our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
* Adding documentation for FM and COOP/COEP (#1) * Fetch Metadata docs * Added explanations of FM and COOP/COEP * Add docs for COOP and COEP * Update source/security/index.md Co-authored-by: Sal <salchoman@gmail.com> * Update source/security/index.md Co-authored-by: Sal <salchoman@gmail.com> * Removed extra white space * Update source/core-developers/fetch-metadata-interceptor.md Co-authored-by: Sal <salchoman@gmail.com> * Update source/core-developers/fetch-metadata-interceptor.md Co-authored-by: Sal <salchoman@gmail.com> * Update source/core-developers/fetch-metadata-interceptor.md Co-authored-by: Sal <salchoman@gmail.com> * Update source/core-developers/fetch-metadata-interceptor.md Co-authored-by: Sal <salchoman@gmail.com> * Fixes based on PR comments Co-authored-by: Giannis Chatziveroglou <gchatz@mit.edu> Co-authored-by: Sal <salchoman@gmail.com> * Fixes in interceptors table and individual interceptors files * Update source/core-developers/coep-interceptor.md Co-authored-by: Sal <salchoman@gmail.com> * Update source/core-developers/coep-interceptor.md Co-authored-by: Sal <salchoman@gmail.com> Co-authored-by: Giannis Chatziveroglou <gchatz@mit.edu> Co-authored-by: Sal <salchoman@gmail.com>
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.
wow! astonish work! 👏 Absolutely contribution motivates us and Struts needs especially regarding security improvements, thank you very much! 💯 🥇
Below a few nitpick but please also wait for others if I'm right with them.
## Examples | ||
|
||
```xml | ||
<interceptor name="coep" class="org.apache.struts2.interceptor.CoepInterceptor"/> |
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.
As you've already defined and added it to struts-default.xml
.defaultStack
at here , this duplicate definition is not needed as far as I can remember but please wait if @apache/struts-committers acknowledge as well.
<interceptor name="coep" class="org.apache.struts2.interceptor.CoepInterceptor"/> | ||
|
||
<action name="someAction" class="com.examples.SomeAction"> | ||
<interceptor-ref name="defaultStack"> |
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.
Same here. I think it should be something like:
<action name="someAction" class="com.examples.SomeAction">
<interceptor-ref name="defaultStack">
<param name="coepInterceptor.exemptedPaths">...
.
.
.
</interceptor-ref>
|
||
<action name="someAction" class="com.examples.SomeAction"> | ||
<interceptor-ref name="defaultStack"> | ||
<interceptor-ref name="coop"> |
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.
(similar here)
|
||
<action name="someAction" class="com.examples.SomeAction"> | ||
<interceptor-ref name="defaultStack"> | ||
<interceptor-ref name="fetchMetadata"> |
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.
(similar here)
Thank you for your comments @yasserzamani ! Applied your changes and as said will also be waiting for @apache/struts-committers opinion |
LGTM 👍 |
Hello Struts devs!
We're really proud to have contributed to Struts by adding Fetch Metadata (apache/struts#426) and COOP/COEP support (apache/struts#432) in the past few months while CSP is still being reviewed (apache/struts#430). This PR updates documentation to reflect the new interceptors (not CSP!), their parameters, usage and brief explanations of what these security mitigations are and how they work.
We hope this will motivate Struts developers to enable brand new security mitigations on their way forward :)