Как аутентифицироваться на двух разных брандмауэрах symfony2 одновременно?

У меня есть приложение Symfony с двумя областями: одна для доступа клиентов с веб-страницы, другая для вызовов API из AJAX и веб-сервисов.

Каждая из этих областей защищена собственным брандмауэром. Веб-интерфейс аутентифицируется с помощью формы входа и API с http_basic.

Оба брандмауэра работают нормально, но когда WEB-интерфейс делает AJAX-вызов API-интерфейса, то браузер предлагает пользователю снова войти в систему, даже если он уже был авторизован (через форму входа ). Это то, чего я хочу избежать. Я хотел бы, чтобы оба брандмауэра были аутентифицированы одновременно, чтобы предотвратить это приглашение.

Я видел еще один вопрос с точно той же проблемой. Но они используют аутентификацию http_basicна обоих брандмауэрах, так что,предложенное решение не сработало в моем случае:

Аутентифицируйте несколько брандмауэров symfony2 с помощью одной формы входа

Моя безопасность.yml

#....
firewalls:
    api:
        pattern:    ^/API
        context: primary_auth
        stateless:  true
        http_basic: 
            realm: "API: Please log in"

    web:
        pattern:    ^/
        context: primary_auth
        form_login:
            check_path: /login_check
            login_path: /login
            provider: fos_userbundle
        logout:
            path:   /logout
            target: /
        anonymous: ~

7
задан Community 23 May 2017 в 12:26
поделиться