このテンプレート リポジトリを使用すると、Github ページでホストされるパスワードで保護されたページを簡単に作成できます。これは、誕生日、結婚式、企業イベントなど、誰にでも公開すべきではない情報やイベントに役立ちます。
デモを確認するには、パスワードtest
を使用します。
免責事項: 私 (または依存関係) が何かを見逃している可能性があることに注意してください。そのため、これが完璧であるとは考えないでください。この方法で銀行情報などを共有しないでください。
use this template
ボタンをクリックして、テンプレートからリポジトリを作成します。{GITHUB-ACCOUNT-NAME}.github.io/{REPOSITORY-NAME}
になります)DECRYPTION_PASSPHRASE
という名前の Github シークレットを作成し、そのvalue
目的のパスワードに設定します (パスワードが欠落しているため、CI パイプラインは最初の試行で失敗することに注意してください)main
ブランチに設定します。Web サイトをカスタマイズするには:
ログインページをカスタマイズできます
encrypt_with_assets.yml、つまり「インデックスの暗号化」ステップを調整して、タイトル、手順、ボタン名を設定します。
- name : Encrypt index
run : >
staticrypt index.html -p ${{ secrets.DECRYPTION_PASSPHRASE }} --short
--template "password_template.html"
--template-title "Login"
--template-instructions "This is a test website, use the password 'test' to enter."
--template-button "Open Page"
--template-color-primary "#113e9f"
--template-color-secondary "#e4e4e4"
詳細と完全なレイアウトの変更については、「StatiCrypt」を参照してください。
暗号化後に訪問者に表示されるmain.html
を編集します (ホストされる暗号化バージョンは、 index.html
です)。
ワークフローencrypt_with_assets.yml
がアクティブであるため、デフォルトではアセットの暗号化が有効になっています。これは、HTML ドキュメント内のすべての直接リンクされた画像、CSS、および JavaScript ファイルをインプレースの Base64 表現に置き換えるだけであることに注意してください。したがって、ファイル内の相対リンクは、場所が変更されたためおそらく機能しなくなります。
資産を暗号化したくない場合
_config.yml
のexclude
からアセットフォルダーを削除します。encrypt_with_assets.yml
からencrypt_with_assets._yml
、およびencrypt_without_assets._yml
名前をencrypt_with_assets.yml
に変更しますデータを(たとえ)プライベート リポジトリに置きたくない場合は、データをローカルで変換し、後でindex.html
のみをアップロードすることもできます。これを行うには、次の手順に従います。
docker build -t ppw .
docker run -it --rm --name ppw -e PASSWORD=test --mount type=bind,source=${PWD},target=/code ppw
main.html
への変更を無視する git update-index --skip-worktree main.html