【问题标题】:how to set routing prefix for dosuserbundle and hwiauthbundle (ERR_TOO_MANY_REDIRECTS)如何为 dosuserbundle 和 hwiauthbundle (ERR_TOO_MANY_REDIRECTS) 设置路由前缀
【发布时间】:2019-11-13 02:00:09
【问题描述】:

我正在使用 fosuserbundle 和 HWIOAuthBundle 使用 Symfony3.4 构建应用程序,一切正常,但是当我尝试使用路由前缀时,尝试登录时出现 ERR_TOO_MANY_REDIRECTS 错误

Security.yml: 
        firewalls:
        main:
            pattern: ^/
            provider: chain_provider
            form_login:
                provider: fos_userbundle
                csrf_token_generator: security.csrf.token_manager
                check_path: fos_user_security_check
                login_path:        fos_user_security_login
                failure_path:      fos_user_security_login
            oauth:
                resource_owners:
                    azure:           azure_login
                login_path:        fos_user_security_login
                failure_path:      fos_user_security_login
                use_forward:       false

                oauth_user_provider:
                    service: custom.user_provider

            logout:
                path: fos_user_security_logout
                target: fos_user_security_login
            anonymous: true
            switch_user: true
            logout_on_user_change: true

    access_control:
        - { path: ^/api/tokens, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/connect/azure, role: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/admin/configuration/, role: [ROLE_SUPER_ADMIN] }
        - { path: ^/admin/, role: [ROLE_ADMIN] }
        - { path: ^/, role: IS_AUTHENTICATED_FULLY }
        - { path: ^/%app_name%, role: IS_AUTHENTICATED_FULLY }
        - { path: ^/api, roles: IS_AUTHENTICATED_FULLY }

Routing.yml:

 fos_user_security:
       resource: "@FOSUserBundle/Resources/config/routing/security.xml"
       prefix: /%app_name%

    fos_user_resetting:
       resource: "@FOSUserBundle/Resources/config/routing/resetting.xml"
       prefix: /%app_name%/resetting
       methods:  [GET,POST]

有人可以告诉我我在这里缺少什么,因为单独使用 fosuserbundle 每件事都像魅力一样,但是在添加时:

        oauth:
        resource_owners:
            azure:           azure_login
        login_path:        fos_user_security_login

我要进入循环

【问题讨论】:

    标签: symfony routing fosuserbundle prefix hwioauthbundle


    【解决方案1】:

    所以我找到了解决这个问题的方法,我的问题不仅出在安全文件中,而且似乎是注释也导致了问题,但是在更改访问控制后:

    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
    

    收件人:

    - { path: ^/%app_name%/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
    

    并且在这个注解中不应该写在类之上,而是在它自身之上的控制器之上,并且从末尾的/开始小心

    【讨论】:

      猜你喜欢
      • 2015-01-10
      • 2014-08-28
      • 2020-05-17
      • 2011-11-14
      • 2020-10-27
      • 1970-01-01
      • 2017-09-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多