Meine Extension "gahvtool" soll im Plugin "hvlandlord" ein Formular zur Pflege von Wohnungen (Flat) haben.
Wenn ich das Fluidformular erstelle:
<f:form action="update" name="flat" object="{flat}" >
erhalte ich diesen HTML-Code:
<form name="flat" action="index.php?id=74&tx_gahvtool_hvlandlord%5Baction%5D=update&tx_gahvtool_hvlandlord%5Bcontroller%5D=Flat&cHash=d97d3b80ade62272cd612b18a3054ac8" method="post">
<div>
<input type="hidden" name="tx_gahvtool_hvlandlord[flat][__identity]" value="4">
<input type="hidden" name="tx_gahvtool_hvlandlord[__referrer][@extension]" value="Gahvtool">
<input type="hidden" name="tx_gahvtool_hvlandlord[__referrer][@controller]" value="Flat">
<input type="hidden" name="tx_gahvtool_hvlandlord[__referrer][@action]" value="edit">
<input type="hidden" name="tx_gahvtool_hvlandlord[__referrer][arguments]" value="YTozOntzOjQ6ImZsYXQiO3M6MToiNCI7czo2OiJhY3Rpb24iO3M6NDoiZWRpdCI7czoxMDoiY29udHJvbGxlciI7czo0OiJGbGF0Ijt9e0b6a15985ff57c2d7b8698bca776fe2b862337d">
<input type="hidden" name="tx_gahvtool_hvlandlord[__trustedProperties]" value="a:1:{s:4:"flat";a:3:{s:5:"title";i:1;s:5:"rooms";i:1;s:10:"__identity";i:1;}}16aa2ac1354458dbc6b9c6476a3aa31eb5121769">
</div>
Alles schön und gut, aber jetzt kann ich im Browser einfach die Action in der Formular-Url ändern, z.B. von "update" auf "delete" oder ich ändere die tx_gahvtool_hvlandlord[flat][__identity] von 4 auf 5. Beides wird von Extbase akzeptiert - eigentlich, dachte ich, wird so etwas bei Fluidformularen durch die Hashwerte verhindert. Aber das gilt wohl nur für die Argumente die übergeben werden, nicht aber für die Werte.
Wie ist prinzipiell das Vorgehen, um so etwas zu verhindern?