[jira] [Created] (PLUTO-768) Introduce CSRF protection for the ACTION_PHASE via Spring Security

"Neil Griffin (JIRA)" <[email protected]> Thu, 4 Apr 2019 15:42:00 +0000 (UTC)
Newsgroups gmane.comp.jakarta.pluto.devel
Message-ID <[email protected]>
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)