AzureのApp Serviceでベーシック認証を使って簡易アクセス制限 ひとりぷちアドベントカレンダー2017 11日目
AzureのApp Serviceは、さくっとお試し環境を作るのに便利です。 お試し中に他所からアクセスされるのは宜しくないので、ベーシック認証で簡易アクセス制限を行ってみよう、というお話です。
App ServiceはWindows/Linuxを選択する事ができますが、Windowsな方についてです。
# フリープランはWindowsだけなのだもの
アクセス制限する
apacheのように設定ファイルだけ、とはいかないですが、ありがたいモジュールのおかげで簡単に実現できます。
管理ポータルのコンソールにて、次のようなコマンドを実行するだけで完了です。 このコンソール、ペーストがうまく行かない場合があります。 できない事は無いのですが、説明しにくいので頑張って入力しましょう。
git clone --depth=1 https://github.com/nabehiro/HttpAuthModule H mkdir bin cp H/P*/H* bin/ cp H/P*/W* . rm -rf H
次のユーザ名とパスワードでアクセスできます。
user: hoge pass: hogepass
ベーシック認証とダイジェスト認証
先ほどの状態では、ベーシック認証ではなくダイジェスト認証になっています。 どちらもユーザ側としての操作は変わらないので、同じように利用できます。
両者の違いはパスワードのやり取りの方法です。ダイジェスト認証のほうがセキュアですが、たまに対応していないブラウザ(クライアント)がある?、らしいです。
設定の変更
コピーしたファイルのうち、Web.config
に設定情報が入っています。
丁寧にコメントが入っているので詳細は省きます。
おわりに
IISなAzureは、apacheとは勝手が異なり多少つまづく事があります。けれどもまあ大体どうにかなるものです。
モジュール作者様に感謝。