1

Symfony 1.4、sfDoctrineGuardPlugin を使用しています。

私のバックエンド アプリでは、ユーザーは URL を手動で変更することによって、実際にはアクセスできないページにアクセスできます。それを止める方法はありますか?

たとえば、すべての作成者が自分のデータに通常どおりアクセスできるとします。ただし、URL の ID を変更すると、必要な記事を編集できます。インターネットで検索しましたが、解決策が見つかりませんか? 方法を知っていますか?

どうもありがとう。

4

2 に答える 2

1

特定の作成者に属さないものを非表示にするだけでは、それらを編集または削除から保護することはできません。

バックエンド モジュールでexecuteEdit/ executeUpdate/アクションをオーバーロードして、不正な管理を回避します。executeDelete

何かのようなもの:

public function executeEdit(sfWebRequest $request) {
    ...
    $this->forward404Unless($this->article->belongsTo($me));
    ...
}

さらに、適切な資格情報を確認できます。一部のユーザー グループに特別なコンテンツや別のユーザーのコンテンツにアクセスさせたい場合に便利です。

それが役立つことを願っています。

于 2011-01-24T13:39:57.517 に答える
0

記事と著者の間に関係を作る必要があります。既にあると思いますので、ArticlePeer の doSelect メソッドをオーバーライドして Author に確認するのが最善の方法です。現在のユーザーに属する記事を選択する基準を追加するだけです。

于 2011-01-24T05:22:24.527 に答える