亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用用戶實體進行身份驗證時如何在 Symfony 4 中使用獨立的基本身份驗證

使用用戶實體進行身份驗證時如何在 Symfony 4 中使用獨立的基本身份驗證

PHP
慕碼人8056858 2022-06-11 09:58:22
我正在嘗試使用 Symfony 4 (nginx) 為登臺環境添加基本身份驗證。不幸的是,它的效果并不好。如果您在防火墻設置 ( security.yaml) 中定義基本身份驗證,它將自動使用防火墻中指定的提供程序。因此,Symfony 使用基本身份驗證作為實際登錄。集成一個簡單的基本身份驗證應該沒有那么難吧?我誤解了什么嗎?我的目標:兩個獨立的身份驗證(用戶之間沒有關聯)如果我通過基本身份驗證登錄,那么我應該能夠通過實際登錄頁面使用用戶實體登錄。該頁面的行為應該與您沒有登錄并且不使用基本身份驗證一樣。我試圖整合幾個防火墻......staging/security.yamlsecurity:    providers:        our_users:            entity: { class: App\Entity\User\User, property: email }        basic_auth:            memory:                users:                    system: { password: 'testpw', roles: ['ROLE_BASIC_AUTH'] }    firewalls:        dev:            pattern: ^/(_(profiler|wdt)|css|images|js)/            security: false        staging:            provider: basic_auth            http_basic:                realm: "My Basic Auth"        main:            anonymous: ~            form_login:                provider: our_users                login_path: my_login_path                csrf_token_generator: security.csrf.token_manager                default_target_path: homepage            guard:                provider: our_users                authenticators:                    - App\Security\LoginFormAuthenticator    access_control:        - { path: ^/admin, role: ROLE_ADMIN }        - { path: ^/login$, role: ROLE_BASIC_AUTH }        - { path: ^/$, role: IS_AUTHENTICATED_REMEMBERED }我可以使用它通過 Basic Auth 對自己進行身份驗證,但我在臨時防火墻中。當我現在嘗試登錄時,它總是失敗。我認為發生這種情況是因為此防火墻中的表單未分配給引用用戶實體的身份驗證器。而且它不會自動將防火墻切換到正確的防火墻。如果您在頁面上使用用戶系統,實現基本身份驗證的最佳實踐是什么?感謝您的建議!編輯:如果有人遇到同樣的問題:我在我的案例中發現了問題..看看接受的答案的響應。感謝幫助!
查看完整描述

1 回答

?
收到一只叮咚

TA貢獻1821條經驗 獲得超5個贊

URL 只能由一個防火墻保護,將使用第一個匹配的防火墻,這就是您遇到沖突的原因。

使用安全組件時,防火墻將根據請求匹配器的結果決定是否處理請求:匹配請求的第一個防火墻將處理它。

https://symfony.com/doc/current/security/firewall_restriction.html

最簡單的解決方案可能是在 Web 服務器上配置基本身份驗證,例如Apachenginx。


查看完整回答
反對 回復 2022-06-11
  • 1 回答
  • 0 關注
  • 112 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號