私は次の状況にあります:複数のビューがファイルをアップロードし、AJAXを介して以前のアップロードのリストを取得できるコンテンツエディターを使用しています。このために、すべてのコントローラーに2つのアクションを追加することになります。代わりに、エディターの相互作用を処理する一般的な単一目的のEditorControllerを1つだけ使用したいと思います。
これに伴う問題はアクセス権です。EditorControllerに、要求が有効なソースからのものであるかどうかを確認してもらいたい(つまり、現在のユーザーがアクセスできる既知のアクション)。具体的には、リクエストが「/ posts / edit / 1」のようなものからのものであり、これが私が使用を許可されているアクションであることを確認してください。
これはできますか?同じ結果を達成するためのより良い方法は何ですか?現在、再利用するコンポーネントに機能がすでにパッケージ化されています。しかし、同じ2つのアクションをすべてのコントローラーに追加することを繰り返します。
編集:以下のコメントから、http://book.cakephp.org/2.0/en/core-libraries/components/security-component.html#restricting-cross-controller-communicationを指摘しました。私が達成したいことは、許可されたコントローラーまたはアクションを明示的にホワイトリストに登録するのではなく、呼び出し元から継承されたアクセス権を持っていることを除いて、SecurityComponent::$allowedControllers
とに非常に似ています。SecurityComponent::$allowedActions