OpenPNE3で認証レベルを管理するにはどうすればいいんだろ。

OpenPNE3で認証レベルを管理するにはどうすればいいんだろ。

 とりあえず認証レベルを追加したいんだけど(例えば無料会員と有料会員みたいな感じで)どうするのがいいんかねぇ。

(lib/user/opAuthAdapter*.class.phpあたりを作ればいいのかな?)

 アクセス制限自体はsymfonyの機能でsecure.ymlに記述すればいいみたいだけど。 はてなグループの終了日を2020年1月31日(金)に決定しました - はてなグループ日記 - 機能変更、お知らせなど

――とか思っていたのですが、ログイン時に credentials を操作できそうな部分は sfOpenPNESecurityUser の#login()と#initializeCredentials()くらいに見える。

 で、そのあたりは opAuthAdapter側では何も操作できない気がするし*1プラグインでフックできそうな感じでもない。

 だとすれば myUser.class.php を書き換えるか、あるいは factories.yml の user: { class: myUser } の部分を書き換えて自前の(sfOpenPNESecurityUserを継承した)クラスを指定する、のかなぁ。

*1:opAuthAdapter#modifyCredentials($sfUser)とかしててくれればよかったのに。あるいは$sfUser->addCredentials($opAuthAdapter->appendCredentials() )するとか。