ページにベーシック認証をかける
mkdocsのページに認証機能を追加する方法はいくつか考えられます。
netlify
やVercel
などのホスティングサービスの機能を使うdjango
やflask
などのwebフレームワークにmkdocsを組み込み、認証機能を追加する- mkdocsのプラグインを使う
ホスティングサービスの機能を使う方法は、ホスティングサービスによっては有料プランが必要になることがあります。また、フレームワークにmkdocsを組み込む方法は、mkdocsの更新に追従するために手間がかかることがあります。
筆者はとにかく手軽にマークダウンを書くだけでいいということでmkdocs
を使っているので、プラグインを使う方法を選択しました。
mkdocsのプラグインを使う
色々調べた結果、mkdocs-encryptcontent-plugin
というプラグインでベーシック認証をかけることができることがわかりました。
mkdocs-encryptcontent-pluginのインストール
まずは、mkdocs-encryptcontent-plugin
をインストールします。
bash | |
---|---|
1 |
|
mkdocs.ymlの設定
mkdocs-encryptcontent-plugin
は、mkdocs.yml
に設定を追加することでベーシック認証をかけることができます。
基本的な設定を以下に示します。
mkdocs.yml | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
ページにベーシック認証をかける
ベーシック認証をかけたいページには、以下のように設定します。
docs/mkdocs/page-besic-auth.md | |
---|---|
1 2 3 4 5 6 7 8 |
|
level
には、mkdocs.yml
で設定したpassword_inventory
のキーを指定します。
まとめ
mkdocs-encryptcontent-plugin
を使うことで、簡単にmkdocsのページにベーシック認証をかけることができます。
他にも、認証情報を外部ファイルに保存する方法や、認証情報を環境変数に保存する方法もあるので、必要に応じて調べてみてください。