curluneの日記

日々試行錯誤。雑多に、気ままに、てきとーに。HoloLens/Oculus Rift,Touchと戯れる日々。

AzureのApp Serviceでベーシック認証を使って簡易アクセス制限 ひとりぷちアドベントカレンダー2017 11日目

AzureのApp Serviceは、さくっとお試し環境を作るのに便利です。 お試し中に他所からアクセスされるのは宜しくないので、ベーシック認証で簡易アクセス制限を行ってみよう、というお話です。

App ServiceはWindows/Linuxを選択する事ができますが、Windowsな方についてです。

# フリープランはWindowsだけなのだもの

アクセス制限する

apacheのように設定ファイルだけ、とはいかないですが、ありがたいモジュールのおかげで簡単に実現できます。

github.com

管理ポータルのコンソールにて、次のようなコマンドを実行するだけで完了です。 このコンソール、ペーストがうまく行かない場合があります。 できない事は無いのですが、説明しにくいので頑張って入力しましょう。

f:id:curlune:20171211231912p:plain

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とは勝手が異なり多少つまづく事があります。けれどもまあ大体どうにかなるものです。

モジュール作者様に感謝。