$ssl_client_s_dn

$ssl_client_s_dn 变量包含客户端 SSL 证书的主题可分辨名称。 — NGINX Core (HTTP)

$ssl_client_s_dn NGINX Core (HTTP)

说明

$ssl_client_s_dn 变量会在客户端在 SSL 握手过程中出示有效的 SSL/TLS 证书时被填充,它包含该证书中指定的客户端的可分辨名称 (DN)。该变量源自客户端证书,并通过展示可分辨名称的属性来识别证书持有者,通常包括诸如通用名称、组织、国家等信息以及其他相关字段。该变量的存在与内容取决于 `ssl_verify_client` 指令被设置为 "on" 或 "optional",从而确保 NGINX 要求或请求客户端证书。仅当有效的客户端证书被成功验证后,该变量才会在 NGINX 环境中可用。

配置示例

server {
    listen 443 ssl;
    ssl_certificate /path/to/server.crt;
    ssl_certificate_key /path/to/server.key;
    ssl_verify_client on;

    location / {
        if ($ssl_client_s_dn) {
            add_header X-Client-DN $ssl_client_s_dn;
        }
    }
}

子系统

http

可缓存

上下文

http, server, location, if

确保将 `ssl_verify_client` 设置为 `on` 或 `optional`,以便此变量有值。

如果未提供客户端证书,`$ssl_client_s_dn` 将为空。

请记住,此变量仅在启用 SSL 的上下文中可访问。