経緯

Gravに特定のテーマを適応するとCSSとJSが適応されなくなる件 | kaniyama_tのいまなにしてるの経緯欄にありますが,私は過去Wordpressで運用していた頃ログインページに辞書攻撃を食らっており,CMSに対するセキュリティという面はあまり信用していません.そこで,Gravでのログインを自前のIdPのOauth認証のみに変更し,.htaccessでログイン・管理ページのURLを書き換えようと思います.

GravとOauth2.0

Gravでは,主要なSNSサービスやIdP(Google等)のOauth2.0認証をプラグインとして提供しています.そのため,これらの認証手法を用いるないしこれらの認証手法と同一のエンドポイントを準備する場合は,プラグインの導入だけで簡単に実装が出来ます.

但し今回は自前のエンドポイントをそのまま使いたいので,あえてプラグインを自作する方針で進めます.

Grav公式が出している以下の記事を参照すると

This plugin is built utitlizing the The League OAuth2 Client and this allows for easy extension of the core OAuth2 plugin with a variety of third-party providers, 訳: このプラグインは The League OAuth2 クライアントを利用して構築されており、これにより、コア OAuth2 プラグインをさまざまなサードパーティ プロバイダーで簡単に拡張できます。 OAuth2 and LDAP Login Plugins | Grav CMS

とのことなので,記事に記載されているプラグインのGithubレポジトリ(trilbymedia/grav-plugin-login-oauth2)をForkして実装していこうと思います.