CakePHP3 ViewCellでユーザの名前を取得する

ビューセル内でユーザの名前を取得するには直接sessionを参照する方法があります。

調べていると、以下の方法がオーソドックスな様でした。

$session = $this->request->session();
$username = $session->read('Auth.User.username');

しかし、この方法でユーザ名を取得するには、UserTableのファインダーメソッドのfindAuth()のフィールドにusernameが追加されている必要があります。

このフィールドがセットされていないとsessionに保持されません。

UserTable.php

public function findAuth(\Cake\ORM\Query $query, array $options)
{
    $query->select(['id', 'username', 'password']);
    return $query;
}