Sollen geschützte Ansichten für den JSF 2.2 CSRF-Schutz verwendet werden?

8

Ich bin verwirrt. Ich sehe, dass JSF 2.0 impliziten CSRF-Schutz hat: Wie JSF 2.0 CSRF verhindert

Auf der anderen Seite nach dem Artikel Ссылка sollten wir das folgende Element zur faces-config.xml -Datei mit der Liste der JSF-Seiten hinzufügen.

%Vor%

Sollte <protected-views> für den JSF 2.2 CSRF-Schutz verwendet werden?

    
Michael 17.11.2014, 09:28
quelle

1 Antwort

12
  

Ich bin verwirrt.   Ich sehe, dass JSF 2.0 impliziten CSRF-Schutz hat:    Wie JSF 2.0 CSRF verhindert

Dieser implizite Schutz gilt nur für POST-Anfragen (d. h. Seiten mit <h:form> ).

  

Auf der anderen Seite nach dem Artikel Ссылка sollten wir das folgende Element zur faces-config.xml -Datei mit der Liste der JSF-Seiten hinzufügen.

%Vor%

Dieser Schutz ist auch bei GET-Anfragen wirksam (d. h. Seiten mit <f:viewAction> , die seit JSF 2.2 ebenfalls neu sind). Wenn Sie <h:link> oder <h:button> verwenden, um GET-Links / -Schaltflächen zu diesen Seiten zu erstellen, wird ein neuer GET-Anforderungsparameter javax.faces.Token mit einem automatisch generierten Token-Wert an die URL in der generierten HTML-Ausgabe angehängt und dieser Parameter wäre erforderlich, wenn die fragliche Seite in <protected-views> deklariert ist.

  

Soll <protected-views> für den CSRF-Schutz von JSF 2.2 verwendet werden?

Nur auf Seiten mit <f:viewAction> , die Sie CSRF-schützen möchten. Diejenigen mit <h:form> sind bereits implizit durch% code_de% verstecktes Eingabefeld geschützt, vorausgesetzt, Sie haben den JSF-Ansichtszustand nicht durch javax.faces.ViewState deaktiviert. Siehe auch a.o. CSRF, XSS und SQL Injection Angriffsprävention in JSF .

    
BalusC 19.11.2014, 11:04
quelle