ngx_http_auth_basic_module 模块

ngx_http_auth_basic_module 模块允许通过使用 “HTTP Basic Authentication” 协议验证用户名和密码来限制对资源的访问。

访问还可以根据地址、子请求的结果或 JWT 进行限制,同时通过地址和密码限制访问由 satisfy 指令控制。

示例配置

location / {
    auth_basic           "closed site";
    auth_basic_user_file conf/htpasswd;
}

指令

auth_basic 指令

语 法:auth_basic string | off;
默认值:auth_basic off;
上下文:http, server, location, limit_except

启用使用 “HTTP Basic Authentication” 协议的用户名和密码验证。指定的参数用作领域。指定的参数用作领域,参数值可以包含变量(1.3.10、1.2.7),特殊值 off 取消了从先前配置级别继承的 auth_basic 指令的配置。

auth_basic_user_file 指令

语 法:auth_basic_user_file file;
默认值:—
上下文:http, server, location, limit_except

指定保存用户名和密码的文件,格式如下:

# comment
name1:password1
name2:password2:comment
name3:password3

文件名可以包含变量。

支持以下密码类型:

  • 使用 crypt() 函数加密;可以使用 Apache HTTP Server 发行版中的“htpasswd”实用程序或“openssl passwd”命令生成;

  • 使用基于 MD5 的密码算法 (apr1) 的 Apache 变体进行散列;可以使用相同的工具生成;

  • 由 RFC 2307 中描述的“{scheme}data”语法(1.0.3+)指定; 当前实现的方案包括 PLAIN(一个示例,不应使用)、SHA(1.3.13)(不应使用纯 SHA-1 散列)和 SSHA(一些软件包使用的加盐 SHA-1 散列,特别是 OpenLDAP 和 Dovecot)。

注意:添加对 SHA 方案的支持只是为了帮助从其他 Web 服务器迁移。 它不应该用于新密码,因为它使用的未加盐 SHA-1 散列容易受到彩虹表攻击。

说说我的看法
全部评论(
没有评论
关于
本网站属于个人的非赢利性网站,转载的文章遵循原作者的版权声明,如果原文没有版权声明,请来信告知:hxstrive@outlook.com
公众号