Hatayı görünce ilk olarak security.yaml dosyasına göz attım. Çünkü hatanın firewall ayarlarından ortaya çıktığı belliydi. Uzun süre kurcalamam hatta çoğu şeyi yeniden kurmam sonrasında hatayı düzeltemedim. Neyse ki daha önce github üzerinden bu soru sorulmuş.
Bu hatanın birden fazla nedeni olabilir çünkü security dosyasında bir ton ayar var. Bu yüzden ben sadece benim yanlış yaptığım yeri gösteriyorum.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
security: encoders: App\Entity\User: algorithm: bcrypt providers: app_user_provider: entity: class: App\Entity\User firewalls: dev: pattern: ^/(_(profiler|wdt)|css|images|js)/ security: false login: pattern: ^/api/login stateless: true anonymous: true json_login: check_path: /api/login success_handler: lexik_jwt_authentication.handler.authentication_success failure_handler: lexik_jwt_authentication.handler.authentication_failure api: pattern: ^/api stateless: true anonymous: false provider: app_user_provider guard: authenticators: - lexik_jwt_authentication.jwt_token_authenticator main: anonymous: true role_hierarchy: ROLE_USER: ROLE_USER # activate different ways to authenticate # http_basic: true # https://symfony.com/doc/current/security.html#a-configuring-how-your-users-will-authenticate # form_login: true # https://symfony.com/doc/current/security/form_login_setup.html # Easy way to control access for large sections of your site # Note: Only the *first* access control that matches will be used access_control: - { path: ^/api/login, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/api/register, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/api, roles: IS_AUTHENTICATED_ANONYMOUSLY } |
Şimdi yukarıda dikkat etmeniz gereken kısım “firewalls:” kısmı. Bu kısımda bizim login kontrolümüz yapılıyor. Burda dikkat etmemiz gereken kısım “main:” olan firewall’ın en altta olması gerekiyor. Ben ortalara bir yerlere koyduğum için sorun yaşamışım. Yaml dosyası olsada sıralamanın yazılımı etkileyebileceğini unutmayın.