$ssl_client_serial
$ssl_client_serial 变量包含在安全连接中使用的客户端 SSL 证书的序列号。 — NGINX Core (HTTP)
$ssl_client_serial
NGINX Core (HTTP)
说明
当 NGINX 配置为处理需要客户端证书进行身份验证的 SSL/TLS 连接时,会设置 $ssl_client_serial 变量。如果启用客户端验证,它会检索客户端 SSL 证书的序列号,这通常发生在配置了 "ssl_verify_client" 指令并将其设置为 "on" 或 "optional" 的 server 配置块中。在 TLS 握手期间当提供了有效的客户端证书时,NGINX 可以访问证书的各种属性,包括序列号,而序列号是证书实例的唯一标识符。 $ssl_client_serial 的值通常格式为十六进制字符串,表示证书的序列号。如果未启用客户端验证,或客户端未提供证书,则不会设置该变量,返回空字符串。该变量对于基于所使用的客户端证书身份来实现访问控制、日志记录或审计机制特别有用。
配置示例
server {
listen 443 ssl;
ssl_certificate /path/to/your/server.crt;
ssl_certificate_key /path/to/your/server.key;
ssl_verify_client on;
location / {
if ($ssl_client_serial) {
add_header X-Client-Serial $ssl_client_serial;
}
}
}子系统
http可缓存
是上下文
http, server, location, if⚠
确保 SSL 已正确配置;否则,该变量不会被设置。
⚠
如果未提供客户端证书或禁用验证,该变量将返回空值。