2017-08-04 10 views
0

私はの3つのアプリケーションに分割されたSymfony 3プロジェクトを持っています。(複数のカーネル、同じデータベース、異なるサブドメイン):Front/Admin/Partner。 は(主に、それはいくつかのソナタ管理のconfigsを使用することができるようにした。)複数のSymfonyアプリケーション間で認証を共有する方法(同じデータベース、複数のカーネル)?

ユーザーがフロントアプリでログインフォームを記入すると、彼はは彼の役割に応じて、対応するアプリ(サブドメイン)にリダイレクトされます。

私の質問は:このリダイレクト後に彼を認証させる方法は?

答えて

1

なぜ私はvarフォルダがアプリによって分割されたので、私のsessionsフォルダはアプリ間で共有されませんでした。

var 
    |-- admin 
    | |-- cache 
    | |-- logs 
    | |-- sessions 
    |-- front 
    | ... 

ソリューションは、私のアプリのセッションのコンフィグで同じsave_pathを定義することでした。
私もすべてのサブドメインが共有する1枚のPHPSESSIDクッキーを取得するために(サブドメインなし)ホスト名にcookie_domainを定義する必要がありました:

framework: 
    session: 
     save_path: '%kernel.project_dir%/var/sessions/' 
     cookie_domain: 'mywebsite.com' 
関連する問題