Symfony2 ファイアウォール コンポーネントが一部のリクエストで時間がかかるという問題があります。
主にAJAXリクエスト中に発生することに気付きました-教義でLIKE %..%ステートメントを使用してエンティティを検索するとき(それが重要かどうかはわかりませんが、それは私が気づいたことです;))。
少し後 (1 または 2 秒後) に同じ URL を呼び出すと、「通常の」ファイアウォール処理時間になります。
認証に外部データ ソースを使用していません。すべてが PostgreSQL に保存されています。
次のタイムラインを見てください。
ファイアウォールを直接デバッグする方法はありますか?
私の設定は次のようになります:
security:
firewalls:
admin_area:
provider: db_users
pattern: ^/admin
anonymous: ~
form_login:
login_path: /admin/login
check_path: /admin/login-check
logout:
path: /admin/logout
target: /admin
switch_user: { role: ROLE_SUPERADMIN, parameter: _become_user }
secured_area:
pattern: ~
anonymous: ~
http_basic:
realm: "Secured Demo Area"
access_control:
- { path: ^/admin/clip-manager/clip/encode/*, roles: IS_AUTHENTICATED_ANONYMOUSLY, ip: 127.0.0.1 }
- { path: ^/admin/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/login-check, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin, roles: [ROLE_ADMIN_LOGIN, ADMIN_AREA] }
providers:
db_users:
entity: { class: Webility\Bundle\AppUserBundle\Entity\User, property: username }
encoders:
Webility\Bundle\AppUserBundle\Entity\User:
algorithm: sha256
iterations: 3
encode_as_base64: false
acl:
connection: default
と を使用Symfony\SecurityBundle
してJMSSecurityExtraBundle
います。