auth_totp_length

指定用于身份验证的 TOTP (基于时间的一次性密码) 的长度。

语法auth_totp_length ;
默认值6
上下文http, server, location, limit_except
参数1

说明

NGINX 的 TOTP 身份验证模块中的 auth_totp_length 指令设置用于身份验证的一次性密码 (OTPs) 的位数。该指令允许管理员根据安全需求自定义 OTP 的长度,从而增强 TOTP 实现的灵活性。设置此值会决定 OTP 的强度;例如,较长的 OTP(如 8 位)相比较短的 OTP(如 6 位)具有更大的密钥空间,在抵御暴力破解攻击时更为安全。

该指令可以在多种上下文中配置,包括 httpserverlocationlimit_except,从而可针对特定应用需求进行定制。例如,某个特定的 location 可能比应用的其他部分需要不同的 OTP 长度,以在敏感路径上采取更高的安全措施。配置该指令后,NGINX 会根据定义的位数生成 TOTP 值,客户端在身份验证过程中必须提供这些值以进行验证。

配置示例

location /protected {
    auth_totp_realm "Protected";
    auth_totp_length 8;
    auth_totp_file /etc/nginx/totp.conf;
}

确保 OTP 的长度与生成 TOTP 代码的客户端兼容;长度不匹配可能导致身份验证失败。

在增加 OTP 长度时要考虑用户体验,因为更长的密码可能会使输入变得繁琐。

在生产环境中测试所指定的长度,以确保实现可用性和安全性目标。

← 返回所有指令