Basic認証とは
Basic認証(基本認証)は、もっともお手軽な認証方法の一つで、どのWebサーバーにも設定可能です。
あらかじめサーバー側でアクセス可能なユーザー情報を管理しておき、Webページへのアクセス時に認証を行います。
例えば Chrome でBasic認証が設定されたページにアクセスすると、次のような入力フォームが表示されます。
Basic認証には認証情報の改竄など、セキュリティー上のリスクが存在しますが、一時的にページへのアクセスを遮断するなどの用途に用いる分には大丈夫だと思います。
今回、一時的にページを非公開にしたかったのでBasic認証を用いました。その際の設定方法を備忘録として残しておきます。
IISにBasic認証を設定する方法
環境
以下の環境での設定方法です。
- WindowsServer 2012R2
- IIS 8.5
- すでにWebページが公開されているサーバー
サーバーの役割追加
上記の通りすでに何らかのWebページが公開されている前提で話を進めます。おそらくBasic認証に必要な役割のインストールができていないので、これを追加してやります。
サーバーマネージャーを立ち上げ、ダッシュボードから役割と機能の追加を選択します。
サーバーを選んで役割と機能の追加ウィザードを開きます。役割の一覧から Webサーバー(IIS) -> Webサーバー -> セキュリティ -> 基本認証 をチェックします。すでにインストール済の場合は以下の画像のように表示されます。
選択したらインストールを実行します。
基本認証の有効化
インストールが終われば次は機能を有効にします。
IISマネージャーを起動し、左のパネルから Default Web Site をクリックして開きます。(※別に追加されているページでも同様の手順です。)
中央に表示されるアイコンの「認証」をクリックして認証設定を開きます。
匿名認証がおそらく有効になっているので、これを無効にし、代わりに基本認証を有効にします。
以上で基本認証の設定は完了です。
動作確認
基本認証を設定したページ(Default Web Site)にアクセスします。WindowsServerのブラウザ(IE)から http://localhost にアクセスすると、次のようなページが表示されているるはずです。正しく設定されているか確認しておきましょう。
アクセス可能なユーザー情報の設定
認証フォームを表示させる設定まではうまくいきました。最後に認証を行うためのユーザー情報についてです。
IISの基本認証はディレクトリ単位で行います。基本認証を設定したサイトのルートにあたるディレクトリにアクセス権限のあるユーザー情報を入力すれば、認証に成功します。
例えば、「Default Web Site」はデフォルトで C:\inetpub\wwwroot
を見に行きます。したがってこのディレクトリにアクセス権限のあるユーザーのみが基本認証に合格します。
アクセス可能なユーザーは、当該ディレクトリのプロパティから確認・設定が可能です。サーバー上のディレクトリを右クリックしてプロパティを開きます。セキュリティータブに「グループ名またはユーザー名」とあります。
例えば、この状態だと、Administrator権限のユーザー情報であれば基本認証はクリアできます。
編集ボタンからアクセス可能なユーザーを追加できます。追加ボタンで許可するユーザーを追加できます。
必要なユーザー情報を追加してやれば、OKです。
以上。
コメントを書く