どのようにsymfonyでのユーザーのセットアップのアクセス制御に?

SS:

私は役割フィールドが含まれているユーザテーブル持っている[「ROLE_SUPERUSERを」]

今私は2つのURLがあります。

  • ローカルホスト:8000 / API / EN /ログイン
  • ローカルホスト:8000 / API / EN /テスト

ユーザーが正常にログインすると、それはクッキーを生成します。どのようにクッキーが設定されていない場合は、このURLが許可されていない2番目のURLへのアクセス制御を設定することができます。

私はに次の行を追加したsecurity.yamlファイル

access_control:
 - { path: ^/api/{locale}, roles: IS_AUTHENTICATED_ANONYMOUSLY }
 - { path: ^/api/{locale}, roles: ROLE_SUPERUSER}

しかし、これは動作しませんでした。

任意のヘルプ?

シド:

ファイアウォールは、その一致した最初のルートを取ると制限が適用されます。

それはリストから除外することができますので、一つは、ログインパスのためにいくつかのファイアウォールの制限を適用する必要はありません。

確かならば、私は100%ではないよ{locale}ファイアウォールがルートの説明とは異なり、動作しますインチ ただし、上のルールを定義するために正規表現を使用することができます^/api/<anything>/test

access_control:
 - { path: ^/api/.*?/test, roles: ROLE_SUPERUSER }

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=303330&siteId=1