AuthComponentの論理削除フラグを認証条件に加える設定

usersテーブルにdeletedというカラムを持っているとして、
認証時にusername,password以外に、
deleted=0の場合のみ認証するという条件を追加する設定。

CakePHP3.1からは以下のような設定が必要っぽい。

cakephp\src\Controller\AppControllerでの設定

$this->loadComponent('Auth', [
    'authenticate' => [
        'Form' => [
            'fields' => [
                'username' => 'username',   // ユーザー名のカラムを指定
                'password' => 'password'    // パスワードに使うカラムを指定
            ],
            'finder' => 'Auth',             // UsersTableに追加するメソッド名?
        ]
    ],
    ...以下略

cakephp\src\Model\Table\UsersTableに以下メソッド追加

    public function findAuth(\Cake\ORM\Query $query, array $options)
    {
        $query->where(['Users.deleted' => 0]);

        return $query;
    }