ngx_http_auth_basic_module モジュール
設定例 ディレクティブ auth_basic auth_basic_user_file |
ngx_http_auth_basic_module
モジュールは"HTTP Basic 認証"プロトコルを使ってユーザ名とパスワードを検証してリソースへのアクセスを制限することができます。
アクセスは、address、サブリクエストの結果、あるいはJWTによっても制限することができます。アドレスとパスワードによる同時のアクセス制限は、satisfy ディレクティブによって制御されます。
設定例
location / { auth_basic "closed site"; auth_basic_user_file conf/htpasswd; }
ディレクティブ
構文: |
auth_basic |
---|---|
デフォルト: |
auth_basic off; |
コンテキスト: |
http , server , location , limit_except |
"HTTP Basic認証"プロトコルを使ってユーザ名とパスワードを検証することができます。指定されたパラメータはrealm
として使われます。パラメータの値には変数を含めることができます (1.3.10, 1.2.7)。特別な値off
は上の設定レベルのauth_basic
ディレクティブの継承の影響をキャンセルします
構文: |
auth_basic_user_file |
---|---|
デフォルト: | - |
コンテキスト: |
http , server , location , limit_except |
ユーザ名とパスワードを保持するファイルを次のフォーマットで指定します:
# comment name1:password1 name2:password2:comment name3:password3
file
名には変数を含めることができます。
次のパスワードタイプがサポートされます:
-
crypt()
で暗号化; Apache HTTPサーバ配布の"htpasswd
"ユーティリティまたは"openssl passwd
"コマンドで生成することができます。 - MD5ベースのパスワードアルゴリズムのApache変種(apr1)でハッシュ化; 同じツールで生成することができます;
-
RFC 2307で説明される"
{
scheme
}
data
"構文で指定; 現在実装されているスキーマはPLAIN
(例, 使うべきではありません)、SHA
(1.3.13) (plain SHA-1 ハッシュ, 使うべきではありません) とSSHA
(salted SHA-1 hashing, 幾つかのソフトウェアパッケージ、特にOpenLDAP とDovecotで使われます)他のwebサーバからの移設を助けるためだけに
SHA
スキーマのサポートが追加されました。採用されているunsalted SHA-1 hashingにはrainbow tableアタックの脆弱性があるため、新しいパスワードのために使われるべきではありません。