0

REMEMBERME cookie を作成する「remember me」機能は問題ありません。ブラウザーを再起動すると、その Cookie も利用可能になりますが、ログに記録されず、Symfony ツールバーで匿名のように認証されます。

通常、ログインしている場合は mydomain.com にアクセスし、ログインしていない場合は mydomain.com/home/calendar にリダイレクトします mydomain.com/login にリダイレクトします

#security.yml
main:
        pattern: ^/.+
        switch_user: { role: ROLE_SUPER_ADMIN, parameter: _steal_user }
        form_login:
            provider: fos_userbundle
            csrf_provider: form.csrf_provider
            always_use_default_target_path: true
            default_target_path: bleep_university_calendar
            login_path: /login
            check_path: /login_check
            remember_me: true
        remember_me:
            key: "%secret%"
            lifetime: 31536000
            always_remember_me: true
            remember_me_parameter: _remember_me
            path: /home/calendar
            domain: ~
        logout: true
        anonymous: false
        context: university

うまくいかない理由を誰か説明してもらえますか?

Symfony 2.1.7 と FOSuserbundle を使用しています。

Google Chrome では、Cookie REMEMBERME は削除されません。すべての URL の設定に表示されます。しかし、Mozilla Firefox では、remember_me の下の属性パスが / の場合、URL /login にリダイレクトされたときに Cookie が削除されます。FirefoxでのみCookieが削除されるようです。

これは、Firefox の REMEMBERME Cookie の値です。

expires : 1409988370
host : "localhost"      
isDomain : false        
isHttpOnly : true       
isSecure : false        
maxAge : undefined      
name : "REMEMBERME"     
path : "/"      
rawValue :  "QmxlZXBcTWFzdGVyU2Vydml...WJlOWI3ZTMyNzkxZGQyZGU3"     
value : "QmxlZXBcTWFzdGVyU2Vydml...WJlOWI3ZTMyNzkxZGQyZGU3"
4

2 に答える 2