私は現在、Symfony1.4に基づくプロジェクトに取り組んでいます。sfDoctrineGuardPluginを使用して、2種類のユーザー(ユーザーと管理者)を認証しています。各モジュールおよびモジュール内の各アクションについて、不正なアクションの実行を防ぐためにクレデンシャルを使用しています。
しかし、私は問題に直面しています。たとえば、ユーザーがプロジェクトを編集したい場合、URLはfrontend.php / project / edit / id/1のようになります。ここでは、プロジェクト#1が彼のものであると仮定します。ここで、プロジェクト#2が彼のものではないとします。彼がURLfrontend.php/ project / edit / id / 2を入力すると、編集フォームにアクセスできるようになり、自分に属していないプロジェクトを編集できるようになります。
どうすればその動作を防ぐことができますか?
編集フォームを表示する前に、編集可能な各モデルの所有権を確認することは避けたいのですが...別の方法で行うことはできますか?
この行動を防ぐための良い習慣やアドバイスはありますか?
どうもありがとう !