6ae232055d4d8a97267517c5e50074c2c819941and<?xml version="1.0" encoding="UTF-8"?>
6ae232055d4d8a97267517c5e50074c2c819941and<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
fd9abdda70912b99b24e3bf1a38f26fde908a74cnd<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"><head>
fd9abdda70912b99b24e3bf1a38f26fde908a74cnd<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
fd9abdda70912b99b24e3bf1a38f26fde908a74cnd<!--
6ae232055d4d8a97267517c5e50074c2c819941and XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
6ae232055d4d8a97267517c5e50074c2c819941and This file is generated from xml source: DO NOT EDIT
6ae232055d4d8a97267517c5e50074c2c819941and XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
6ae232055d4d8a97267517c5e50074c2c819941and -->
96ad5d81ee4a2cc66a4ae19893efc8aa6d06fae7jailletc<title>認証、承認、アクセス制御 - Apache HTTP サーバ バージョン 2.5</title>
6ae232055d4d8a97267517c5e50074c2c819941and<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
6ae232055d4d8a97267517c5e50074c2c819941and<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="/style/css/prettify.css" />
2e545ce2450a9953665f701bb05350f0d3f26275nd<script src="/style/scripts/prettify.min.js" type="text/javascript">
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen</script>
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen
6ae232055d4d8a97267517c5e50074c2c819941and<link href="/images/favicon.ico" rel="shortcut icon" /></head>
6ae232055d4d8a97267517c5e50074c2c819941and<body id="manual-page"><div id="page-header">
af33a4994ae2ff15bc67d19ff1a7feb906745bf8rbowen<p class="menu"><a href="/mod/">モジュール</a> | <a href="/mod/quickreference.html">ディレクティブ</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">用語</a> | <a href="/sitemap.html">サイトマップ</a></p>
3f08db06526d6901aa08c110b5bc7dde6bc39905nd<p class="apache">Apache HTTP サーバ バージョン 2.5</p>
6ae232055d4d8a97267517c5e50074c2c819941and<img alt="" src="/images/feather.gif" /></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div id="path">
b43f840409794ed298e8634f6284741f193b6c4ftakashi<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP サーバ</a> &gt; <a href="http://httpd.apache.org/docs/">ドキュメンテーション</a> &gt; <a href="../">バージョン 2.5</a> &gt; <a href="./">How-To / チュートリアル</a></div><div id="page-content"><div id="preamble"><h1>認証、承認、アクセス制御</h1>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="toplang">
b43f840409794ed298e8634f6284741f193b6c4ftakashi<p><span>翻訳済み言語: </span><a href="/en/howto/auth.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
c04f76acce77126cf88b09350e56ea8c6b4a064enilgun<a href="/fr/howto/auth.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
6ae232055d4d8a97267517c5e50074c2c819941and<a href="/ja/howto/auth.html" title="Japanese">&nbsp;ja&nbsp;</a> |
91f378b5a10f2d83820902ed10ba7967a3920c18nilgun<a href="/ko/howto/auth.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung<a href="/tr/howto/auth.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
6ae232055d4d8a97267517c5e50074c2c819941and</div>
b43f840409794ed298e8634f6284741f193b6c4ftakashi<div class="outofdate">この日本語訳はすでに古くなっている
b43f840409794ed298e8634f6284741f193b6c4ftakashi 可能性があります。
b43f840409794ed298e8634f6284741f193b6c4ftakashi 最近更新された内容を見るには英語版をご覧下さい。
b43f840409794ed298e8634f6284741f193b6c4ftakashi </div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>「認証」とは、誰かが自分は誰であるかを主張した場合に、
6ae232055d4d8a97267517c5e50074c2c819941and それを確認するための全過程を指します。「承認」とは、
6ae232055d4d8a97267517c5e50074c2c819941and 誰かが行きたい場所に行けるように、あるいは欲しい情報を
6ae232055d4d8a97267517c5e50074c2c819941and 得ることができるようにするための全過程を指します。</p>
6ae232055d4d8a97267517c5e50074c2c819941and</div>
6ae232055d4d8a97267517c5e50074c2c819941and<div id="quickview"><ul id="toc"><li><img alt="" src="/images/down.gif" /> <a href="#related">関連するモジュールとディレクティブ</a></li>
6ae232055d4d8a97267517c5e50074c2c819941and<li><img alt="" src="/images/down.gif" /> <a href="#introduction">はじめに</a></li>
6ae232055d4d8a97267517c5e50074c2c819941and<li><img alt="" src="/images/down.gif" /> <a href="#theprerequisites">準備</a></li>
6ae232055d4d8a97267517c5e50074c2c819941and<li><img alt="" src="/images/down.gif" /> <a href="#gettingitworking">動作させる</a></li>
6ae232055d4d8a97267517c5e50074c2c819941and<li><img alt="" src="/images/down.gif" /> <a href="#lettingmorethanonepersonin">
6ae232055d4d8a97267517c5e50074c2c819941and複数の人が入れるようにする</a></li>
6ae232055d4d8a97267517c5e50074c2c819941and<li><img alt="" src="/images/down.gif" /> <a href="#possibleproblems">起こりえる問題</a></li>
6ae232055d4d8a97267517c5e50074c2c819941and<li><img alt="" src="/images/down.gif" /> <a href="#dbmdbd">パスワードの保存形式を変える</a></li>
6ae232055d4d8a97267517c5e50074c2c819941and<li><img alt="" src="/images/down.gif" /> <a href="#multprovider">複数のプロバイダを使用する</a></li>
6ae232055d4d8a97267517c5e50074c2c819941and<li><img alt="" src="/images/down.gif" /> <a href="#beyond">単純な承認のその先</a></li>
6ae232055d4d8a97267517c5e50074c2c819941and<li><img alt="" src="/images/down.gif" /> <a href="#moreinformation">追加情報</a></li>
30471a4650391f57975f60bbb6e4a90be7b284bfhumbedooh</ul><ul class="seealso"><li><a href="#comments_section">コメント</a></li></ul></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="related" id="related">関連するモジュールとディレクティブ</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and<p>認証と承認の処理に関連する 3 種類のモジュールがあります。
6ae232055d4d8a97267517c5e50074c2c819941andそれぞれ少なくともひとつずつ必要です。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and<ul>
6ae232055d4d8a97267517c5e50074c2c819941and <li>認証のタイプ (
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/core.html#authtype">AuthType</a></code> ディレクティブ参照)
6ae232055d4d8a97267517c5e50074c2c819941and <ul>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_auth_basic.html">mod_auth_basic</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_auth_digest.html">mod_auth_digest</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and </ul>
6ae232055d4d8a97267517c5e50074c2c819941and </li>
6ae232055d4d8a97267517c5e50074c2c819941and <li>認証プロバイダ (
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_auth_basic.html#authbasicprovider">AuthBasicProvider</a></code>,
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_auth_digest.html#authdigestprovider">AuthDigestProvider</a></code> ディレクティブ参照)
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <ul>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authn_anon.html">mod_authn_anon</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authn_dbd.html">mod_authn_dbd</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authn_dbm.html">mod_authn_dbm</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authn_default.html">mod_authn_default</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authn_file.html">mod_authn_file</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and </ul>
6ae232055d4d8a97267517c5e50074c2c819941and </li>
6ae232055d4d8a97267517c5e50074c2c819941and <li>承認 (
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/core.html#require">Require</a></code> ディレクティブ参照)
6ae232055d4d8a97267517c5e50074c2c819941and <ul>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authz_dbm.html">mod_authz_dbm</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authz_dbm.html">mod_authz_dbm</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authz_default.html">mod_authz_default</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authz_groupfile.html">mod_authz_groupfile</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authz_host.html">mod_authz_host</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authz_owner.html">mod_authz_owner</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and <li><code class="module"><a href="/mod/mod_authz_user.html">mod_authz_user</a></code></li>
6ae232055d4d8a97267517c5e50074c2c819941and </ul>
6ae232055d4d8a97267517c5e50074c2c819941and </li>
6ae232055d4d8a97267517c5e50074c2c819941and</ul>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>これらのモジュールに加えて、<code class="module"><a href="/mod/mod_authn_core.html">mod_authn_core</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and と <code class="module"><a href="/mod/mod_authz_core.html">mod_authz_core</a></code> があります。
6ae232055d4d8a97267517c5e50074c2c819941and この 2 つのモジュールは認証モジュールに共通なコアディレクティブを
6ae232055d4d8a97267517c5e50074c2c819941and 実装しています。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code class="module"><a href="/mod/mod_authnz_ldap.html">mod_authnz_ldap</a></code> は認証プロバイダと承認プロバイダの
6ae232055d4d8a97267517c5e50074c2c819941and 両方の機能を持っています。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="module"><a href="/mod/mod_authz_host.html">mod_authz_host</a></code> はホスト名、IP アドレスや
6ae232055d4d8a97267517c5e50074c2c819941and リクエストの特徴に基づいたアクセス制御を行いますが、
6ae232055d4d8a97267517c5e50074c2c819941and 認証プロバイダのシステムの一部ではありません。
6ae232055d4d8a97267517c5e50074c2c819941and mod_access との後方互換性のため、
6ae232055d4d8a97267517c5e50074c2c819941and 新しいモジュールの <code class="module"><a href="/mod/mod_access_compat.html">mod_access_compat</a></code> があります。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>様々なアクセス制御の行ない方については、
6ae232055d4d8a97267517c5e50074c2c819941and <a href="access.html">アクセス制御</a>の方法をご覧ください。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="introduction" id="introduction">はじめに</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and <p>もし機密の情報や、ごくごく少数グループの人向けの情報を
6ae232055d4d8a97267517c5e50074c2c819941and ウェブサイトに置くのであれば、この文書に書かれている
6ae232055d4d8a97267517c5e50074c2c819941and テクニックを使うことで、そのページを見ている人たちが
6ae232055d4d8a97267517c5e50074c2c819941and 望みの人たちであることを確実にできるでしょう。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>この文書では、多くの人が採用するであろう、
6ae232055d4d8a97267517c5e50074c2c819941and ウェブサイトの一部分を保護する「一般的な」
6ae232055d4d8a97267517c5e50074c2c819941and 方法についてカバーしています。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="note"><h3>注意</h3>
6ae232055d4d8a97267517c5e50074c2c819941and <p>データが本当に機密なのであれば、認証に加えてさらに
6ae232055d4d8a97267517c5e50074c2c819941and <code class="module"><a href="/mod/mod_ssl.html">mod_ssl</a></code> を使うと良いでしょう。</p>
6ae232055d4d8a97267517c5e50074c2c819941and </div>
6ae232055d4d8a97267517c5e50074c2c819941and</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="theprerequisites" id="theprerequisites">準備</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and <p>この文書で取り扱われるディレクティブは、
6ae232055d4d8a97267517c5e50074c2c819941and メインサーバ設定ファイル (普通は
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/core.html#directory">&lt;Directory&gt;</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and セクション中) か、あるいはディレクトリ毎の設定ファイル
6ae232055d4d8a97267517c5e50074c2c819941and (<code>.htaccess</code> ファイル) かで用います。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code>.htaccess</code> ファイルを用いるのであれば、
6ae232055d4d8a97267517c5e50074c2c819941and これらのファイルに認証用のディレクティブを置けるように
6ae232055d4d8a97267517c5e50074c2c819941and サーバの設定をしないといけないでしょう。これは
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/core.html#allowoverride">AllowOverride</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブで可能になります。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/core.html#allowoverride">AllowOverride</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブでは、ディレクトリ毎の設定ファイル中に置くことのできる
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブを、もしあれば、指定します。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>認証について話を進めているので、次のような
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/core.html#allowoverride">AllowOverride</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブが必要になるでしょう。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and AllowOverride AuthConfig
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>そうでなく、メインサーバ設定ファイルの中に
6ae232055d4d8a97267517c5e50074c2c819941and 直接置くのであれば、当然ながらそのファイルへの書き込み
6ae232055d4d8a97267517c5e50074c2c819941and 権限を持っていなければならないでしょう。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>また、どのファイルがどこに保存されているか知るために、
6ae232055d4d8a97267517c5e50074c2c819941and サーバのディレクトリ構造について少し知っておく
6ae232055d4d8a97267517c5e50074c2c819941and 必要があるでしょう。
6ae232055d4d8a97267517c5e50074c2c819941and これはそんなに難しくないので、この文書中で
6ae232055d4d8a97267517c5e50074c2c819941and ディレクトリ構造について知っておく必要がある場面では、
6ae232055d4d8a97267517c5e50074c2c819941and 明らかになるようにします。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code class="module"><a href="/mod/mod_authn_core.html">mod_authn_core</a></code> と <code class="module"><a href="/mod/mod_authz_core.html">mod_authz_core</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and の両方が httpd バイナリに静的に組み込み済みであるか、httpd.conf
6ae232055d4d8a97267517c5e50074c2c819941and 設定ファイルで動的にロードされるかして、httpd に組み込まれていなければ
6ae232055d4d8a97267517c5e50074c2c819941and なりません。これらの二つのモジュールは、設定ファイルのなかで非常に
6ae232055d4d8a97267517c5e50074c2c819941and 重要でウェブサーバの認証と承認で使用されるコアディレクティブと
6ae232055d4d8a97267517c5e50074c2c819941and その機能を提供しています。</p>
6ae232055d4d8a97267517c5e50074c2c819941and</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="gettingitworking" id="gettingitworking">動作させる</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and <p>では、サーバ上のあるディレクトリをパスワードで保護する
6ae232055d4d8a97267517c5e50074c2c819941and 基本手順を示します。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>まずはじめに、パスワードファイルを作ります。
6ae232055d4d8a97267517c5e50074c2c819941and どの認証プロバイダを使うかによって、パスワードファイル生成の手順は
6ae232055d4d8a97267517c5e50074c2c819941and 大きく異なります。ここでの例では、手始めにテキストパスワードファイルを
6ae232055d4d8a97267517c5e50074c2c819941and 使います。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>このパスワードファイルは、ウェブからアクセスできる場所に
6ae232055d4d8a97267517c5e50074c2c819941and 置くべきではありません。他の人がパスワードファイルを
6ae232055d4d8a97267517c5e50074c2c819941and ダウンロードできないようにするためです。例えば、
6ae232055d4d8a97267517c5e50074c2c819941and <code>/usr/local/apache/htdocs</code> でドキュメントを
6ae232055d4d8a97267517c5e50074c2c819941and 提供しているのであれば、パスワードファイルは
6ae232055d4d8a97267517c5e50074c2c819941and <code>/usr/local/apache/passwd</code>
6ae232055d4d8a97267517c5e50074c2c819941and などに置いた方が良いでしょう。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>ファイルを作るためには、Apache 付属の <code class="program"><a href="/programs/htpasswd.html">htpasswd</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and を使います。このコマンドは Apache をどこにインストールしようとも、
6ae232055d4d8a97267517c5e50074c2c819941and インストールディレクトリの <code>bin</code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクトリ以下に置かれます。サードバーティ製のパッケージで
6ae232055d4d8a97267517c5e50074c2c819941and インストールした場合は、実行パスの中で見つかるでしょう。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>ファイルを作るには、次のようにタイプしてください。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and htpasswd -c /usr/local/apache/passwd/passwords rbowen
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code class="program"><a href="/programs/htpasswd.html">htpasswd</a></code> は、パスワードを要求し、その後
6ae232055d4d8a97267517c5e50074c2c819941and 確認のためにもう一度入力するように要求してきます。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and # htpasswd -c /usr/local/apache/passwd/passwords rbowen<br />
6ae232055d4d8a97267517c5e50074c2c819941and New password: mypassword<br />
6ae232055d4d8a97267517c5e50074c2c819941and Re-type new password: mypassword<br />
6ae232055d4d8a97267517c5e50074c2c819941and Adding password for user rbowen
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>もし <code class="program"><a href="/programs/htpasswd.html">htpasswd</a></code> がパスの中に入っていない場合は、
6ae232055d4d8a97267517c5e50074c2c819941and もちろん、実行するためにプログラムまでのフルパスを
6ae232055d4d8a97267517c5e50074c2c819941and タイプする必要があります。デフォルトのインストール状態であれば、
6ae232055d4d8a97267517c5e50074c2c819941and <code>/usr/local/apache/bin/htpasswd</code>
6ae232055d4d8a97267517c5e50074c2c819941and にプログラムが置かれています。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>次に、サーバがパスワードを要求するように設定して、
6ae232055d4d8a97267517c5e50074c2c819941and どのユーザがアクセスを許されているかをサーバに知らせなければ
6ae232055d4d8a97267517c5e50074c2c819941and なりません。 <code>httpd.conf</code> を編集するか
6ae232055d4d8a97267517c5e50074c2c819941and <code>.htaccess</code> ファイルを使用するかで
6ae232055d4d8a97267517c5e50074c2c819941and 設定します。例えば、ディレクトリ
6ae232055d4d8a97267517c5e50074c2c819941and <code>/usr/local/apache/htdocs/secret</code>
6ae232055d4d8a97267517c5e50074c2c819941and を保護したい場合は、
6ae232055d4d8a97267517c5e50074c2c819941and <code>/usr/local/apache/htdocs/secret/.htaccess</code>
6ae232055d4d8a97267517c5e50074c2c819941andhttpd.conf 中の &lt;Directory
6ae232055d4d8a97267517c5e50074c2c819941and /usr/local/apache/htdocs/secret&gt; セクションに
6ae232055d4d8a97267517c5e50074c2c819941and 配置して、次のディレクティブを使うことができます。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and AuthType Basic<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthName "Restricted Files"<br />
6ae232055d4d8a97267517c5e50074c2c819941and # (Following line optional)<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthBasicProvider file<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthUserFile /usr/local/apache/passwd/passwords<br />
6ae232055d4d8a97267517c5e50074c2c819941and Require user rbowen
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>個々のディレクティブについて見てみましょう。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/core.html#authtype">AuthType</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブはどういう認証方法でユーザの認証を行うかを
6ae232055d4d8a97267517c5e50074c2c819941and 選択します。最も一般的な方法は <code>Basic</code>
6ae232055d4d8a97267517c5e50074c2c819941and で、これは <code class="module"><a href="/mod/mod_auth_basic.html">mod_auth_basic</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and で実装されています。しかしながら、
6ae232055d4d8a97267517c5e50074c2c819941and これは気を付けるべき重要なポイントなのですが、
6ae232055d4d8a97267517c5e50074c2c819941and Basic 認証はクライアントからサーバへ、
6ae232055d4d8a97267517c5e50074c2c819941and パスワードを暗号化せずに送ります。ですからこの方法は、
6ae232055d4d8a97267517c5e50074c2c819941and <code class="module"><a href="/mod/mod_ssl.html">mod_ssl</a></code> と組み合わせない状態では、
6ae232055d4d8a97267517c5e50074c2c819941and 特に機密性の高いデータに対しては用いるべきでは
6ae232055d4d8a97267517c5e50074c2c819941and ありません。 Apache ではもう一つ別の認証方法:
6ae232055d4d8a97267517c5e50074c2c819941and <code>AuthType Digest</code> をサポートしています。
6ae232055d4d8a97267517c5e50074c2c819941and この方法は <code class="module"><a href="/mod/mod_auth_digest.html">mod_auth_digest</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and で実装されていて、もっと安全です。
6ae232055d4d8a97267517c5e50074c2c819941and 最近のクライアントは Digest
6ae232055d4d8a97267517c5e50074c2c819941and 認証をサポートしているようです。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code class="directive"><a href="/mod/core.html#authname">AuthName</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブでは、認証に使う <dfn>Realm</dfn> (訳注: 領域)
6ae232055d4d8a97267517c5e50074c2c819941and を設定します。Realm は大きく分けて二つの機能を提供します。
6ae232055d4d8a97267517c5e50074c2c819941and 一つ目は、クライアントがパスワードダイアログボックスの
6ae232055d4d8a97267517c5e50074c2c819941and 一部としてユーザにこの情報をよく提示する、というものです。
6ae232055d4d8a97267517c5e50074c2c819941and 二つ目には、クライアントが与えられた認証領域に対してどのパスワードを
6ae232055d4d8a97267517c5e50074c2c819941and 送信すれば良いのかを決定するために使われる、という機能です。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>例えば、<code>"Restricted Files"</code> 領域中で
6ae232055d4d8a97267517c5e50074c2c819941and 一度認証されれば、同一サーバ上で <code>"Restricted Files"</code>
6ae232055d4d8a97267517c5e50074c2c819941and Realm としてマークされたどんな領域でも、クライアントは
6ae232055d4d8a97267517c5e50074c2c819941and 自動的に同じパスワードを使おうと試みます。
6ae232055d4d8a97267517c5e50074c2c819941and このおかげで、複数の制限領域に同じ realm を共有させて、
6ae232055d4d8a97267517c5e50074c2c819941and ユーザがパスワードを何度も要求される事態を
6ae232055d4d8a97267517c5e50074c2c819941and 防ぐことができます。もちろん、セキュリティ上の理由から、
6ae232055d4d8a97267517c5e50074c2c819941and サーバのホスト名が変わればいつでも必ず、
6ae232055d4d8a97267517c5e50074c2c819941and クライアントは再びパスワードを尋ねる必要があります。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code class="directive"><a href="/mod/mod_auth_basic.html#authbasicprovider">AuthBasicProvider</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and はデフォルト値が <code>file</code> なので、今回の場合は無くても構いません。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="module"><a href="/mod/mod_authn_dbm.html">mod_authn_dbm</a></code> や <code class="module"><a href="/mod/mod_authn_dbd.html">mod_authn_dbd</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and といった他のモジュールを使う場合には必要になります。
6ae232055d4d8a97267517c5e50074c2c819941and </p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code class="directive"><a href="/mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブは <code class="program"><a href="/programs/htpasswd.html">htpasswd</a></code> で作った
6ae232055d4d8a97267517c5e50074c2c819941and パスワードファイルへのパスを設定します。
6ae232055d4d8a97267517c5e50074c2c819941and ユーザ数が多い場合は、リクエスト毎のユーザの認証のための
6ae232055d4d8a97267517c5e50074c2c819941and プレーンテキストの探索が非常に遅くなることがあります。
6ae232055d4d8a97267517c5e50074c2c819941and Apache ではユーザ情報を高速なデータベースファイルに
6ae232055d4d8a97267517c5e50074c2c819941and 保管することもできます。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="module"><a href="/mod/mod_authn_dbm.html">mod_authn_dbm</a></code> モジュールが
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authn_dbm.html#authdbmuserfile">AuthDBMUserFile</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブを提供します。これらのファイルは <code class="program"><a href="/programs/dbmmanage.html">dbmmanage</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and プログラムで作成したり操作したりできます。
6ae232055d4d8a97267517c5e50074c2c819941and <a href="http://modules.apache.org/">Apache
6ae232055d4d8a97267517c5e50074c2c819941and モジュールデータベース</a>中にあるサードパーティー製の
6ae232055d4d8a97267517c5e50074c2c819941and モジュールで、その他多くのタイプの認証オプションが
6ae232055d4d8a97267517c5e50074c2c819941and 利用可能です。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>最後に、<code class="directive"><a href="/mod/core.html#require">Require</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブが、サーバのこの領域にアクセスできるユーザを
6ae232055d4d8a97267517c5e50074c2c819941and 指定することによって、プロセスの承認部分を提供します。
6ae232055d4d8a97267517c5e50074c2c819941and 次のセクションでは、<code class="directive"><a href="/mod/core.html#require">Require</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブの様々な用法について述べます。</p>
6ae232055d4d8a97267517c5e50074c2c819941and</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="lettingmorethanonepersonin" id="lettingmorethanonepersonin">
6ae232055d4d8a97267517c5e50074c2c819941and複数の人が入れるようにする</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and <p>上記のディレクティブは、ただ一人 (具体的にはユーザ名
6ae232055d4d8a97267517c5e50074c2c819941and <code>rbowen</code> の誰か) がディレクトリに
6ae232055d4d8a97267517c5e50074c2c819941and 入れるようにします。多くの場合は、複数の人が
6ae232055d4d8a97267517c5e50074c2c819941and 入れるようにしたいでしょう。ここで
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_groupfile.html#authgroupfile">AuthGroupFile</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and の登場です。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>もし複数の人が入れるようにしたいのであれば、
6ae232055d4d8a97267517c5e50074c2c819941and グループに属するユーザの一覧の入っている、グループ名のついた
6ae232055d4d8a97267517c5e50074c2c819941and グループファイルを作る必要があります。このファイルの
6ae232055d4d8a97267517c5e50074c2c819941and 書式はきわめて単純で、お好みのエディタで生成できます。
6ae232055d4d8a97267517c5e50074c2c819941and ファイルの中身は次のようなものです。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and GroupName: rbowen dpitts sungo rshersey
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>一行にスペース区切りで、グループに所属するメンバーの
6ae232055d4d8a97267517c5e50074c2c819941and 一覧をならべるだけです。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>既に存在するパスワードファイルにユーザを加える場合は、
6ae232055d4d8a97267517c5e50074c2c819941and 次のようにタイプしてください。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and htpasswd /usr/local/apache/passwd/passwords dpitts
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>以前と同じ応答が返されますが、新しいファイルを
6ae232055d4d8a97267517c5e50074c2c819941and 作るのではなく、既にあるファイルに追加されています。
6ae232055d4d8a97267517c5e50074c2c819941and (新しいパスワードファイルを作るには <code>-c</code>
6ae232055d4d8a97267517c5e50074c2c819941and を使います。)</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>ここで次のようにして <code>.htaccess</code> ファイルを
6ae232055d4d8a97267517c5e50074c2c819941and 修正する必要があります。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and AuthType Basic<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthName "By Invitation Only"<br />
6ae232055d4d8a97267517c5e50074c2c819941and # Optional line:<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthBasicProvider file<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthUserFile /usr/local/apache/passwd/passwords<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthGroupFile /usr/local/apache/passwd/groups<br />
6ae232055d4d8a97267517c5e50074c2c819941and Require group GroupName
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>これで、グループ <code>GroupName</code> にリストされていて、
6ae232055d4d8a97267517c5e50074c2c819941and <code>password</code> ファイルにエントリがある人は、
6ae232055d4d8a97267517c5e50074c2c819941and 正しいパスワードをタイプすれば入ることができるでしょう。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>もっと特定せずに複数のユーザが入れるようにする、
6ae232055d4d8a97267517c5e50074c2c819941and もう一つの方法があります。グループファイルを作るのではなく、
6ae232055d4d8a97267517c5e50074c2c819941and 次のディレクティブを使えばできます。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and Require valid-user
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code>require user rbowen</code> 行でなく、上記を使うと、
6ae232055d4d8a97267517c5e50074c2c819941and パスワードファイルにリストされている人であれば誰でも
6ae232055d4d8a97267517c5e50074c2c819941and 許可されます。
6ae232055d4d8a97267517c5e50074c2c819941and 単にパスワードファイルをグループ毎に分けておくことで、
6ae232055d4d8a97267517c5e50074c2c819941and グループのような振る舞いをさせることもできます。
6ae232055d4d8a97267517c5e50074c2c819941and このアプローチの利点は、Apache は二つではなく、
6ae232055d4d8a97267517c5e50074c2c819941and ただ一つのファイルだけを検査すればよいという点です。
6ae232055d4d8a97267517c5e50074c2c819941and 欠点は、たくさんのパスワードファイルを管理して、その中から
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authn_file.html#authuserfile">AuthUserFile</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブに正しいファイルを参照させなければならない点です。</p>
6ae232055d4d8a97267517c5e50074c2c819941and</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="possibleproblems" id="possibleproblems">起こりえる問題</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and <p>Basic 認証が指定されている場合は、
6ae232055d4d8a97267517c5e50074c2c819941and サーバにドキュメントをリクエストする度に
6ae232055d4d8a97267517c5e50074c2c819941and ユーザ名とパスワードを検査しなければなりません。
6ae232055d4d8a97267517c5e50074c2c819941and これは同じページ、ページにある全ての画像を
6ae232055d4d8a97267517c5e50074c2c819941and リロードする場合であっても該当します
6ae232055d4d8a97267517c5e50074c2c819941and (もし画像も保護されたディレクトリから来るのであれば) 。
6ae232055d4d8a97267517c5e50074c2c819941and 予想される通り、これは動作を多少遅くします。
6ae232055d4d8a97267517c5e50074c2c819941and 遅くなる程度はパスワードファイルの大きさと比例しますが、
6ae232055d4d8a97267517c5e50074c2c819941and これは、ファイルを開いてあなたの名前を発見するまで
6ae232055d4d8a97267517c5e50074c2c819941and ユーザ名のリストを読まなければならないからです。
6ae232055d4d8a97267517c5e50074c2c819941and そして、ページがロードされる度にこれを行わなければ
6ae232055d4d8a97267517c5e50074c2c819941and なりません。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>結論としては、一つのパスワードファイルに置くことのできる
6ae232055d4d8a97267517c5e50074c2c819941and ユーザ数には実質的な限界があります。
6ae232055d4d8a97267517c5e50074c2c819941and この限界はサーバマシンの性能に依存して変わりますが、
6ae232055d4d8a97267517c5e50074c2c819941and 数百のエントリを越えたあたりから速度低下が見られると予期されています。
6ae232055d4d8a97267517c5e50074c2c819941and その時は他の認証方法を考慮に入れた方が良いでしょう。</p>
6ae232055d4d8a97267517c5e50074c2c819941and</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="dbmdbd" id="dbmdbd">パスワードの保存形式を変える</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>プレーンテキストでパスワードを保存する方法には上記の問題があり、
6ae232055d4d8a97267517c5e50074c2c819941and データベースのような別の場所にパスワードを保存したいと思う
6ae232055d4d8a97267517c5e50074c2c819941and かもしれません。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code class="module"><a href="/mod/mod_authn_dbm.html">mod_authn_dbm</a></code> と <code class="module"><a href="/mod/mod_authn_dbd.html">mod_authn_dbd</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and を使うと、それができるようになります。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_auth_basic.html#authbasicsource">AuthBasicSource</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and で file の代わりに、<code>dbm</code> あるいは <code>dbd</code>
6ae232055d4d8a97267517c5e50074c2c819941and を格納形式として選べます。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>テキストファイルの代わりに dbm ファイルを選択する場合は、たとえば次のようにします。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and &lt;Directory /www/docs/private&gt;<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthName "Private"<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthType Basic<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthBasicProvider dbm<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthDBMUserFile /www/passwords/passwd.dbm<br />
6ae232055d4d8a97267517c5e50074c2c819941and Require valid-user<br />
6ae232055d4d8a97267517c5e50074c2c819941and &lt;/Directory&gt;
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>この他のオプションも存在します。詳細に関しては
6ae232055d4d8a97267517c5e50074c2c819941and <code class="module"><a href="/mod/mod_authn_dbm.html">mod_authn_dbm</a></code> のドキュメントをご覧ください。</p>
6ae232055d4d8a97267517c5e50074c2c819941and</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="multprovider" id="multprovider">複数のプロバイダを使用する</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>認証承認アーキテクチャに基づいている新しいプロバイダを使うと、
6ae232055d4d8a97267517c5e50074c2c819941and 認証承認の方法をひとつに縛る必要がなくなります。
6ae232055d4d8a97267517c5e50074c2c819941and いくつものプロバイダを組み合わせて、自分の望みの挙動にできます。
6ae232055d4d8a97267517c5e50074c2c819941and 次の例では file 認証プロバイダと ldap 認証プロバイダを
6ae232055d4d8a97267517c5e50074c2c819941and 組み合わせています。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and &lt;Directory /www/docs/private&gt;<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthName "Private"<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthType Basic<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthBasicProvider file ldap<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthUserFile /usr/local/apache/passwd/passwords<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthLDAPURL ldap://ldaphost/o=yourorg<br />
6ae232055d4d8a97267517c5e50074c2c819941and Require valid-user
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>この例では、まず file プロバイダがユーザ認証を試みます。
6ae232055d4d8a97267517c5e50074c2c819941and 認証できなかった場合には、ldap プロバイダが呼び出されます。
6ae232055d4d8a97267517c5e50074c2c819941and 組織で複数の認証格納方法を使っている際などに、
6ae232055d4d8a97267517c5e50074c2c819941and この方法を使って認証のスコープを拡大できます。
6ae232055d4d8a97267517c5e50074c2c819941and もうひとつのシナリオは、ひとつの認証タイプと異なる承認を
6ae232055d4d8a97267517c5e50074c2c819941and 組み合わせる方法でしょう。たとえば、パスワードファイルで認証して、
6ae232055d4d8a97267517c5e50074c2c819941and ldap ディレクトリで承認を行うといった場合です。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>認証プロバイダを複数実装できるように、承認方法も複数使用できます。
6ae232055d4d8a97267517c5e50074c2c819941and この例では file グループ承認と ldap グループ承認を使っています。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and &lt;Directory /www/docs/private&gt;<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthName "Private"<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthType Basic<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthBasicProvider file<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthUserFile /usr/local/apache/passwd/passwords<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthLDAPURL ldap://ldaphost/o=yourorg
6ae232055d4d8a97267517c5e50074c2c819941and AuthGroupFile /usr/local/apache/passwd/groups<br />
6ae232055d4d8a97267517c5e50074c2c819941and Require group GroupName<br />
6ae232055d4d8a97267517c5e50074c2c819941and Require ldap-group cn=mygroup,o=yourorg
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>承認をより細かく制御したい場合は、
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_core.html#&lt;satisfyall&gt;">&lt;SatisfyAll&gt;</a></code> と
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_core.html#&lt;satisfyone&gt;">&lt;SatisfyOne&gt;</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブを使って AND/OR ロジックで指定し、設定ファイルで
6ae232055d4d8a97267517c5e50074c2c819941and 承認の処理順番の制御ができるようになっています。
6ae232055d4d8a97267517c5e50074c2c819941and これらのディレクティブをどのように使えるか、網羅した例をご覧ください。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="beyond" id="beyond">単純な承認のその先</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>承認の方法は、ひとつのデータソースを見て一回だけチェックするのと比べて、
6ae232055d4d8a97267517c5e50074c2c819941and ずっと多彩な適用方法ができます。
6ae232055d4d8a97267517c5e50074c2c819941and 承認処理の適用順序や制御、選択ができるようになりました。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <h3><a name="authandororder" id="authandororder">AND/OR ロジックの適用と順序付け</a></h3>
6ae232055d4d8a97267517c5e50074c2c819941and <p>承認がどのような順序で適用されているか、また、それをどのように制御するかは、
6ae232055d4d8a97267517c5e50074c2c819941and これまで混乱を招いていました。
6ae232055d4d8a97267517c5e50074c2c819941and Apache 2.2 ではプロバイダベースの認証メカニズムが導入され、
6ae232055d4d8a97267517c5e50074c2c819941and 承認処理から認証処理とサポート機能とが切り分けられました。
6ae232055d4d8a97267517c5e50074c2c819941and これによるひとつの効果として、
6ae232055d4d8a97267517c5e50074c2c819941and 認証モジュールのロード順やモジュール自体の順序に依存することなく、
6ae232055d4d8a97267517c5e50074c2c819941and 指定した順番で認証プロバイダが呼び出せるよう、
6ae232055d4d8a97267517c5e50074c2c819941and 設定できるようになりました。
6ae232055d4d8a97267517c5e50074c2c819941and このプロバイダメカニズムは承認処理でも導入されています。
6ae232055d4d8a97267517c5e50074c2c819941and つまり、<code class="directive"><a href="/mod/mod_authz_core.html#require">Require</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブは単にどの承認手法が使われるかを指定するだけではなく、
6ae232055d4d8a97267517c5e50074c2c819941and それらの呼び出し順序も指定できるようになりました。
6ae232055d4d8a97267517c5e50074c2c819941and 複数の承認手法があるとき、その呼び出し順は、設定ファイルの
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_core.html#require">Require</a></code> ディレクティブ中で
6ae232055d4d8a97267517c5e50074c2c819941and 現れた順序と同じになります。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>追加で導入された
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_core.html#&lt;satisfyall&gt;">&lt;SatisfyAll&gt;</a></code>,
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_core.html#&lt;satisfyone&gt;">&lt;SatisfyOne&gt;</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブを使って、承認手法がいつ呼び出され、アクセスが許可された際に
6ae232055d4d8a97267517c5e50074c2c819941and どの手続きが適用されるか指定することができます。
6ae232055d4d8a97267517c5e50074c2c819941and たとえば、次の承認ブロックのロジックを見てみましょう:</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and # if ((user == "John") ||<br />
6ae232055d4d8a97267517c5e50074c2c819941and # &nbsp;&nbsp; ((Group == "admin")<br />
6ae232055d4d8a97267517c5e50074c2c819941and # &nbsp; &nbsp; &amp;&amp; (ldap-group &lt;ldap-object&gt; contains auth'ed_user)<br />
6ae232055d4d8a97267517c5e50074c2c819941and # &nbsp; &nbsp; &amp;&amp; ((ldap-attribute dept == "sales")<br />
6ae232055d4d8a97267517c5e50074c2c819941and # &nbsp; &nbsp; &nbsp; &nbsp; || (file-group contains auth'ed_user))))<br />
6ae232055d4d8a97267517c5e50074c2c819941and # then<br />
6ae232055d4d8a97267517c5e50074c2c819941and # &nbsp; auth_granted<br />
6ae232055d4d8a97267517c5e50074c2c819941and # else<br />
6ae232055d4d8a97267517c5e50074c2c819941and # &nbsp; auth_denied<br />
6ae232055d4d8a97267517c5e50074c2c819941and #<br />
6ae232055d4d8a97267517c5e50074c2c819941and &lt;Directory /www/mydocs&gt;<br />
6ae232055d4d8a97267517c5e50074c2c819941and <span class="indent">
6ae232055d4d8a97267517c5e50074c2c819941and Authname ...<br />
6ae232055d4d8a97267517c5e50074c2c819941and AuthBasicProvider ...<br />
6ae232055d4d8a97267517c5e50074c2c819941and ...<br />
6ae232055d4d8a97267517c5e50074c2c819941and Require user John<br />
6ae232055d4d8a97267517c5e50074c2c819941and &lt;SatisfyAll&gt;<br />
6ae232055d4d8a97267517c5e50074c2c819941and <span class="indent">
6ae232055d4d8a97267517c5e50074c2c819941and Require Group admins<br />
6ae232055d4d8a97267517c5e50074c2c819941and Require ldap-group cn=mygroup,o=foo<br />
6ae232055d4d8a97267517c5e50074c2c819941and &lt;SatisfyOne&gt;<br />
6ae232055d4d8a97267517c5e50074c2c819941and <span class="indent">
6ae232055d4d8a97267517c5e50074c2c819941and Require ldap-attribute dept="sales"<br />
6ae232055d4d8a97267517c5e50074c2c819941and Require file-group<br />
6ae232055d4d8a97267517c5e50074c2c819941and </span>
6ae232055d4d8a97267517c5e50074c2c819941and &lt;/SatisfyOne&gt;<br />
6ae232055d4d8a97267517c5e50074c2c819941and </span>
6ae232055d4d8a97267517c5e50074c2c819941and &lt;/SatisfyAll&gt;<br />
6ae232055d4d8a97267517c5e50074c2c819941and </span>
6ae232055d4d8a97267517c5e50074c2c819941and &lt;/Directory&gt;
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>デフォルトでは <code class="directive"><a href="/mod/mod_authz_core.html#require">Require</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブは OR 操作として扱われます。つまり、もし指定した承認手法の
6ae232055d4d8a97267517c5e50074c2c819941and ひとつでも合格すれば、承認されます。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_core.html#require">Require</a></code> ディレクティブのセットを
6ae232055d4d8a97267517c5e50074c2c819941and ひとつの <code class="directive"><a href="/mod/mod_authz_core.html#&lt;satisfyall&gt;">&lt;SatisfyAll&gt;</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ブロックで囲むとAND 操作となり、全ての承認手法で合格しなければ許可されません。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <h3><a name="reqaccessctrl" id="reqaccessctrl">アクセス制御における Require と Reject の使い方</a></h3>
6ae232055d4d8a97267517c5e50074c2c819941and <p>ユーザ名とパスワードによる認証は全体の一部分でしかありません。
6ae232055d4d8a97267517c5e50074c2c819941and 誰がアクセスしてきたかといった情報以外の条件を使いたい、
6ae232055d4d8a97267517c5e50074c2c819941and とよく思うことでしょう。
6ae232055d4d8a97267517c5e50074c2c819941and たとえば、どこからアクセスしてきているか、といった具合です。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>承認プロバイダ <code class="directive"><a href="/mod/mod_authz_host.html#all">all</a></code>,
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_host.html#env">env</a></code>,
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_host.html#host">host</a></code>,
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_host.html#ip">ip</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and を使うと、リクエストを送信してきているマシンのホスト名や IP アドレス
6ae232055d4d8a97267517c5e50074c2c819941and といった、ホストベースでのアクセス制御ができます。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>これらプロバイダの扱いは
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_core.html#require">Require</a></code> や
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_core.html#reject">Reject</a></code> で
6ae232055d4d8a97267517c5e50074c2c819941and 指定されます。これらのディレクティブは承認プロバイダを登録し、
6ae232055d4d8a97267517c5e50074c2c819941and リクエスト処理の承認段階で呼び出されます。たとえば:</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and Require ip <var>address</var>
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>ここで、<var>address</var> は IP アドレス (あるいは IP アドレスの
6ae232055d4d8a97267517c5e50074c2c819941and 一部) か : </p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and Require host <var>domain_name</var>
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>ここで <var>domain_name</var> は FQDN (あるいはドメイン名の一部)
6ae232055d4d8a97267517c5e50074c2c819941and で、必要であれば複数のアドレスやドメイン名を書くことができます。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>たとえば、スパムメッセージを送信してくる誰かを拒否したい場合、
6ae232055d4d8a97267517c5e50074c2c819941and 次のようになります : </p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and Reject ip 10.252.46.165
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>このディレクティブが有効な範囲のコンテンツに対しては、
6ae232055d4d8a97267517c5e50074c2c819941and そのアドレスからアクセスしてきても見ることができません。
6ae232055d4d8a97267517c5e50074c2c819941and もしマシン名がわかっていて IP アドレスよりもそちらで
6ae232055d4d8a97267517c5e50074c2c819941and 指定したいのであれば、そのマシン名が使えます。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and Reject host <var>host.example.com</var>
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>また、特定のドメインからのアクセス全てをブロックしたい場合は、
6ae232055d4d8a97267517c5e50074c2c819941and IP アドレスの一部や、ドメイン名が指定できます :</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <div class="example"><p><code>
6ae232055d4d8a97267517c5e50074c2c819941and &lt;SatisfyAll&gt;<br />
6ae232055d4d8a97267517c5e50074c2c819941and <span class="indent">
6ae232055d4d8a97267517c5e50074c2c819941and Reject ip <var>192.168.205</var><br />
6ae232055d4d8a97267517c5e50074c2c819941and Reject host <var>phishers.example.com</var> <var>moreidiots.example</var><br /> Reject host ke<br />
6ae232055d4d8a97267517c5e50074c2c819941and </span>
6ae232055d4d8a97267517c5e50074c2c819941and &lt;/SatisfyAll&gt;
6ae232055d4d8a97267517c5e50074c2c819941and </code></p></div>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><code class="directive"><a href="/mod/mod_authz_host.html#reject">Reject</a></code> ディレクティブを
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_core.html#&lt;satisfyall&gt;">&lt;SatisfyAll&gt;</a></code> ブロックの中で使うと、
6ae232055d4d8a97267517c5e50074c2c819941and 許可したいグループにのみアクセスができるように確認できます。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>上記の例では <code class="directive"><a href="/mod/mod_authz_core.html#&lt;satisfyall&gt;">&lt;SatisfyAll&gt;</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and を使って、アクセスに合格する前段階で、全ての
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authz_host.html#reject">Reject</a></code> ディレクティブが
6ae232055d4d8a97267517c5e50074c2c819941and 満たされていることを確認しています。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <h3><a name="filesystem" id="filesystem">アクセス制御の後方互換性</a></h3>
6ae232055d4d8a97267517c5e50074c2c819941and <p>認証プロバイダベースの機構があるため、以前使用されていたディレクティブ
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_access_compat.html#order">Order</a></code>,
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_access_compat.html#allow">Allow</a></code>,
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_access_compat.html#deny">Deny</a></code>,
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_access_compat.html#satisfy">Satisfy</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and は必要なくなりました。
6ae232055d4d8a97267517c5e50074c2c819941and とはいうものの、古い設定ファイルでの後方互換性を提供するため、
6ae232055d4d8a97267517c5e50074c2c819941and これらのディレクティブは <code class="module"><a href="/mod/mod_access_compat.html">mod_access_compat</a></code> モジュールに移されました。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p>これらのディレクティブの抱えていた問題のひとつに、承認の設定行とアクセス制御の設定行の
6ae232055d4d8a97267517c5e50074c2c819941and 関係がとてもあいまいだったことが挙げられます。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_access_compat.html#satisfy">Satisfy</a></code> ディレクティブは
6ae232055d4d8a97267517c5e50074c2c819941and リクエスト処理中でそれ自身を呼び出すことによって、これらの 2 つの処理段階を結びつけようとします。
6ae232055d4d8a97267517c5e50074c2c819941and 現在は、これらのディレクティブは <code class="module"><a href="/mod/mod_access_compat.html">mod_access_compat</a></code> に移動し、
6ae232055d4d8a97267517c5e50074c2c819941and 新しい認証ディレクティブと古いアクセス制御ディレクティブを混ぜて使うことは
6ae232055d4d8a97267517c5e50074c2c819941and 難しくなっています。この問題のため、<code class="module"><a href="/mod/mod_authz_default.html">mod_authz_default</a></code> モジュールを
6ae232055d4d8a97267517c5e50074c2c819941and ロードすることがとても重要で、必須になっています。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="module"><a href="/mod/mod_authz_default.html">mod_authz_default</a></code> モジュールの主な目的は、どの承認プロバイダで
6ae232055d4d8a97267517c5e50074c2c819941and 処理されなかった承認リクエストを受けることにあります。
6ae232055d4d8a97267517c5e50074c2c819941and しかし、古いアクセス制御ディレクティブが用いられた場合には、
6ae232055d4d8a97267517c5e50074c2c819941and アクセス制御と承認を結びつけて、すべての処理段階の出力結果を見てアクセスに合格するかを決めています。
6ae232055d4d8a97267517c5e50074c2c819941and ですから、古いディレクティブがうまく動作しない場合は、
6ae232055d4d8a97267517c5e50074c2c819941and <code class="module"><a href="/mod/mod_authz_default.html">mod_authz_default</a></code> がロードされていないからかもしれない、
6ae232055d4d8a97267517c5e50074c2c819941and と疑ってみてください。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="section">
6ae232055d4d8a97267517c5e50074c2c819941and<h2><a name="moreinformation" id="moreinformation">追加情報</a></h2>
6ae232055d4d8a97267517c5e50074c2c819941and <p>これら全てがどのように動作するかについて
6ae232055d4d8a97267517c5e50074c2c819941and もっと多くの情報が書かれている <code class="module"><a href="/mod/mod_auth_basic.html">mod_auth_basic</a></code> と
6ae232055d4d8a97267517c5e50074c2c819941and <code class="module"><a href="/mod/mod_authz_host.html">mod_authz_host</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and の文書も読むとよいでしょう。
6ae232055d4d8a97267517c5e50074c2c819941and <code class="directive"><a href="/mod/mod_authn_core.html#&lt;authnprovideralias&gt;">&lt;AuthnProviderAlias&gt;</a></code>
6ae232055d4d8a97267517c5e50074c2c819941and ディレクティブを使うと、特定の認証設定が簡単に書けるようになります。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and <p><a href="access.html">アクセス制御</a>の方法も、
6ae232055d4d8a97267517c5e50074c2c819941and 関連するトピックがたくさん記載されていますので、ご覧ください。</p>
6ae232055d4d8a97267517c5e50074c2c819941and
6ae232055d4d8a97267517c5e50074c2c819941and</div></div>
6ae232055d4d8a97267517c5e50074c2c819941and<div class="bottomlang">
b43f840409794ed298e8634f6284741f193b6c4ftakashi<p><span>翻訳済み言語: </span><a href="/en/howto/auth.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
c04f76acce77126cf88b09350e56ea8c6b4a064enilgun<a href="/fr/howto/auth.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
6ae232055d4d8a97267517c5e50074c2c819941and<a href="/ja/howto/auth.html" title="Japanese">&nbsp;ja&nbsp;</a> |
91f378b5a10f2d83820902ed10ba7967a3920c18nilgun<a href="/ko/howto/auth.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung<a href="/tr/howto/auth.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
727872d18412fc021f03969b8641810d8896820bhumbedooh</div><div class="top"><a href="#page-header"><img src="/images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">コメント</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
0d0ba3a410038e179b695446bb149cce6264e0abnd<script type="text/javascript"><!--//--><![CDATA[//><!--
727872d18412fc021f03969b8641810d8896820bhumbedoohvar comments_shortname = 'httpd';
cc7e1025de9ac63bd4db6fe7f71c158b2cf09fe4humbedoohvar comments_identifier = 'http://httpd.apache.org/docs/trunk/howto/auth.html';
0d0ba3a410038e179b695446bb149cce6264e0abnd(function(w, d) {
cc7e1025de9ac63bd4db6fe7f71c158b2cf09fe4humbedooh if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
727872d18412fc021f03969b8641810d8896820bhumbedooh d.write('<div id="comments_thread"><\/div>');
0d0ba3a410038e179b695446bb149cce6264e0abnd var s = d.createElement('script');
0d0ba3a410038e179b695446bb149cce6264e0abnd s.type = 'text/javascript';
0d0ba3a410038e179b695446bb149cce6264e0abnd s.async = true;
ac082aefa89416cbdc9a1836eaf3bed9698201c8humbedooh s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
0d0ba3a410038e179b695446bb149cce6264e0abnd (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
0d0ba3a410038e179b695446bb149cce6264e0abnd }
0d0ba3a410038e179b695446bb149cce6264e0abnd else {
727872d18412fc021f03969b8641810d8896820bhumbedooh d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
0d0ba3a410038e179b695446bb149cce6264e0abnd }
0d0ba3a410038e179b695446bb149cce6264e0abnd})(window, document);
30471a4650391f57975f60bbb6e4a90be7b284bfhumbedooh//--><!]]></script></div><div id="footer">
205f749042ed530040a4f0080dbcb47ceae8a374rjung<p class="apache">Copyright 2015 The Apache Software Foundation.<br />この文書は <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> のライセンスで提供されています。.</p>
af33a4994ae2ff15bc67d19ff1a7feb906745bf8rbowen<p class="menu"><a href="/mod/">モジュール</a> | <a href="/mod/quickreference.html">ディレクティブ</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">用語</a> | <a href="/sitemap.html">サイトマップ</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
0d0ba3a410038e179b695446bb149cce6264e0abndif (typeof(prettyPrint) !== 'undefined') {
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd prettyPrint();
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd}
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd//--><!]]></script>
6ae232055d4d8a97267517c5e50074c2c819941and</body></html>