現在CakePHPでusersテーブル・UsersController.phpを用いてAuth認証の実装をしています。

usersディレクトリではログイン状態が続くのですが、  
他のディレクトリに飛ぶと、勝手にログアウトのような状態になってしまいます。

このようなことが起こる場合は、何が考えられるでしょうか。  
何かお分かりの方は、是非ご教授の程よろしくお願いします。

ちなみにFacebook認証との連携のため、Form認証のようなデフォルト的認証はしておりません。  
また、[こちらのコード](http://fuzzydevelopment.net/cakephp-facebook-374.html)を参考にしています。
CC BY-SA 3.0
2015-07-07T16:17:53.593
12128
2015-08-07T05:10:48.707
2015-07-08T04:56:54.873
8772
9722
question
php cakephp
CakePHPで勝手にAuth認証が切れる
<http://fuzzydevelopment.net/cakephp-facebook-374.html>
のコードそのままということならログイン処理が正しくないので動きません。

```

        $user = $this->User->find('first', ['conditions' => ['User.id' => $facebookId]]);
        if (!empty($user['User'])) {
            if ($this->Auth->login($user['User'])) {
                $this->redirect(['action' => 'index']);
            }
        } else {
            $this->_add();
        }
    
```

で、ユーザーが見つからないときに`_add`メソッドを呼び出すようですが、その中でログインセッションにユーザーをセットしていないので、ログインしたことになっていません。

Facebook認証を行いたいなら <https://github.com/uzyn/cakephp-opauth> や
<https://github.com/ADmad/CakePHP-HybridAuth/tree/cake2> などを利用した方がよいと思います。

また、勉強目的ならドキュメントを参考にして独自にAuthenticateクラスを作成してもいいかもしれません。

カスタム認証オブジェクトの作成  
<http://book.cakephp.org/2.0/ja/core-
libraries/components/authentication.html#id6>
CC BY-SA 3.0
2015-07-08T01:10:05.160
12133
2015-07-08T01:10:05.160
2668
12128
answer