auth_digest

auth_digest 指令为 NGINX 启用摘要认证,允许对凭证进行安全传输。

语法auth_digest realm;
默认值none
上下文http, server, location, limit_except
参数1

说明

'auth_digest' 指令是 NGINX 中摘要认证模块的一部分,为在 HTTP 上保护用户凭证提供了一种方法。该指令至少需要一个参数来指定认证领域(authentication realm),这是认证过程中的关键。配置后,它负责管理和验证摘要认证流程,包括生成 nonce 值和处理客户端响应,以确保凭证不会以明文发送。

在使用 'auth_digest' 时,NGINX 会创建一个共享内存区来存储用户凭证、nonces 和相关数据,以便在多个 worker 进程之间协调认证。这对于在运行多个进程的环境中实现可扩展性至关重要。该指令可在多种上下文中使用(http、server、location、limit_except)来控制对应用不同区域的访问,通常放在 'location' 块中以保护特定资源。还可以设置附加参数,例如超时值和最大重试次数,以进一步自定义认证行为。

正确使用该指令需要理解摘要认证作为质询-响应(challenge-response)机制的工作原理,与基本认证相比能提高安全性。必须确保包含哈希凭证的用户文件存在,否则将导致认证失败。

配置示例

location /protected {
    auth_digest "Restricted Area";
    auth_digest_user_file /etc/nginx/.htdigest;
}

确保包含哈希凭证的用户文件存在;否则,认证将失败。

注意 realm 字符串;它必须在客户端和服务器之间完全匹配,以确保正确的认证。

请注意共享内存设置;内存不足可能导致认证问题。

← 返回所有指令