Neil Griffin created PLUTO-768: ---------------------------------- Summary: Introduce CSRF protection for the ACTION_PHASE via Spring Security Key: PLUTO-768 URL: https://issues.apache.org/jira/browse/PLUTO-768 Project: Pluto Issue Type: New Feature Components: portal driver, portlet container Reporter: Neil Griffin Assignee: Neil Griffin Fix For: 3.0.2
This feature will add Cross-Site Request Forgery [CSRF|https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)] protection for the {{ACTION_PHASE}} of the portlet lifecycle via Spring Security. Specifically, it will ensure that the Spring Security {{_csrf}} parameter is added to every {{javax.portlet.ActionURL}} generated by Pluto's portlet container. It will also utilize the "springSecurityFilterChain" in order to verify that the value of the {{_csrf}} parameter is the correct value before invoking the {{ACTION_PHASE}} of the portlet lifecycle. This feature does *not* secure any other phases of the portlet lifecycle (such as the {{RESOURCE_PHASE}}. It is important to note that if a portlet developer uses an XmlHttpRequest (XHR) to submit a form via HTTP POST with a {{javax.portlet.ResourceURL}}, then it is still incumbent upon the portlet developer to leverage some kind of CSRF protection. -- This message was sent by Atlassian JIRA (v7.6.3#76005)