Web

Basic認証の設定手順

投稿日:2020年3月24日 更新日:

1. Basic認証とは?

HTTP認証の中で最も一般的なのが、Basic認証です。

Basic認証では、ユーザーが入力したパスワードが Basic64 でエンコードされてサーバーに送信されるのですが、Basic64 はデコード(真逆の変換)できるため、通信の内容を見られるとパスワードが知られてしまうという弱点を持っています。そのため、通常は HTTPS と合わせて利用します(通信内容が暗号化されますので)。

手軽であるため、レンタルサーバーでのアクセス制限機能などにも利用されています。

2. Basic認証の設定手順

ウェブサーバーには Apache を想定し、設定ファイルには .htaccess ファイルを利用するという前提で説明します。

(1) パスワードファイルを生成する

htpasswd コマンドを実行して、ユーザー名やパスワードを記録したパスワードファイルを生成します。

$ htpasswd -c {ファイルパス} {ユーザー名}

実際に実行した例が以下です。

$ htpasswd -c .htpasswd foo
New password:
Re-type new password:
Adding password for user foo

$ cat .htpasswd
foo:$apr1$2/Dzi6od$Tpp/I/WL/iEEST20tcDbj/

ここでは、以下を指定しました。

  • ファイル名 .htpasswd
  • ユーザー名 foo
  • パスワード password

ウェブからこのファイルを読まれないように、このファイルはドキュメントルートの外に配置するか、適切なパーミションを設定しておきます。

参考

(2) Apache の設定ファイルに認証するための記述を行う

ここでは、特定のディレクトリに対して Basic認証を掛ける場合を想定し、そのディレクトリ直下の .htaccess ファイルに設定を記述します。

AuthType Basic
AuthName "{領域名}"
AuthUserFile "{パスワードファイルへのパス}"
Require valid-user
  • AuthType と Require は上記のまま記述します。
  • AuthName と AuthUserFile は、自分が決めた内容を記述します。

一例を示します。

AuthType Basic
AuthName "Basic Auth"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user

今回のように.htaccess ファイルを利用する場合は、Apache を再起動する必要はありません。

以上の設定を行うと、Basic認証が有効になります。

3. おわりに

認証しないと特定のウェブページが見られないようにしたい場合、Basic認証は手軽で便利です。但し、HTTPS を併用することを徹底しましょう。

Web

Digest認証の設定手順

2020.03.23

4. 参考

スポンサードリンク

📂-Web

執筆者:labo


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Web

インターネットの説明に欠けているもの?

 株式会社日本レジストリサービス(以下JPRS、本社:東京都千代田区、代表取締役社長 東田幸樹)は、インターネット教育の支援活動の一環として、全国の中学校・高校・高等専門学校を対象に、マンガ小冊子『ポ …

Web Programming

Webプログラミングのための Web入門

この記事では、Webプログラミングで必要になる Webの知識をご紹介します。 目次1. インターネット2. インターネットを土台として存在するプロトコル3. Web とは?4. URL5. HTML2 …

Web

Webフォントを使う場合に font-display 記述子を使ってすぐにテキストを表示させる

目次1. Webフォントの読み込みと font-display 記述子(概要)2. font-display 記述子を使ってテキストをすぐに表示させる方法3. font-display 記述子の詳しい …

Web

英辞郎 on the WEB の隙間を狭くする (Stylusを使う方法)

英辞郎 on the WEB の隙間を狭くする方法を紹介しました。

Web Vitals

Chrome UX Report API を使う手順 (cURL の場合)

Chrome UX Report API を使う手順 (cURL の場合)を紹介します。