問題タブ [symfony2-voter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
473 参照

php - 2番目のオブジェクトなしで小枝で有権者を呼び出す

私は新しいsymfonyプロジェクトを開発しており、カスタムボーターを実装しました。コントローラーでは、 を介して有権者を呼び出すことができますが$this->isGranted('view',$team)、そのためにはチーム オブジェクトが必要です。チームを表示したい場合は問題ありません。しかし、今はトップメニューのみのベーステンプレートがあります。true が返されたときに「チーム」ボタンのみを表示したいのです$this->isGranted('view',$team)が、このテンプレートではチームを表示しないため、この関数を通過できるチーム オブジェクトがありません。最初の twig テンプレートは、プロジェクトの概要です。これどうやってするの?base-template に空白の team-object を渡す必要がありますか? 誰でも私を助けることができますか?

0 投票する
1 に答える
271 参照

php - Symfony Voter 定数の使用法

私はボーター、特にvoteOnAttribute次のようなメソッドを定義しました:

メソッドでVoterInterface定数 ( ACCESS_GRANTEDACCESS_ABSTAIN、 )を使用できないのはなぜですか?ACCESS_DENIED

vote私がそうすると、抽象クラスのメソッドのために、アクセス拒否の決定は強制されませんVoter:

ACCESS_DENIEDでは定数が -1 に設定されているためVoterInterfaceif ($this->voteOnAttribute($attribute, $subject, $token))return が -1 であっても条件は true です。

ここで何を間違えていますか?voteOnAttributeこれらの定数は、カスタムメソッドで使用する予定ですか?

注:有権者戦略をに設定しunanimousましたsecurity.yml

0 投票する
1 に答える
262 参照

symfony - サブリソースを介したsymfonyボーターが呼び出されていません

コンテキストは次のとおりです。

Symfony 3.4 と api-platform を使用しています。

私は2つのクラスを持っています:

  • サプライヤー
  • 製品

仕入先の全商品を一覧表示したい

Supplier エンティティでは、通常の CRUD メソッドに access_control を実装しました。

また、正常に機能しないサブリソースを通るルートもあります。

問題は、サブリソースのアクセス制御が機能しないことです。そこでは、このリソースに対する許可について投票者をチェックすることになっていますが、投票者をチェックせず、403 を返す必要があるときに HTTP 応答コード 200 を返します。

access_control の代わりにセキュリティを使用しているドキュメントを確認しました。

そして、それも機能しません。

有権者が呼び出されない理由についての手がかりやヒントを誰かが持っていますか?