auth_jwt_keyfile_path
指令 `auth_jwt_keyfile_path` 设置在 NGINX 中用于 JWT 验证的密钥文件路径。
Secure your NGINX locations with JWT
·
httpserverlocation
语法auth_jwt_keyfile_path path;
默认值none
上下文http, server, location
参数1
说明
指令 auth_jwt_keyfile_path 指定 NGINX 用于验证 JWT 的公钥文件路径。当设置此指令时,NGINX 会在处理请求之前尝试从指定文件加载公钥以进行身份验证。该密钥文件在使用像 RS256 这样的非对称签名算法时至关重要,因为签名必须使用与用于签署 JWT 的私钥相配对的公钥来验证。在这种情况下,如果 JWT 是用私钥签名的,则必须成功加载对应的公钥,NGINX 才能验证 JWT 的完整性和真实性。
该指令与其他相关指令一起工作,例如用于指定签名算法的 auth_jwt_algorithm,以及用于对称验证设置共享密钥的 auth_jwt_key。另外,如果密钥文件无法加载或路径不正确,NGINX 将返回错误,可能导致身份验证失败。值得注意的是,为了确保正确的作用域和功能,应在 http、server 或 location 块级别指定此指令。如果您的应用依赖 JWT 进行身份验证,正确配置此指令对于保护应用的访问路径至关重要。
配置示例
http {
server {
location /api {
auth_jwt_enabled on;
auth_jwt_keyfile_path /etc/nginx/keys/publickey.pem;
auth_jwt_algorithm RS256;
}
}
}⚠
确保 keyfile 路径正确,以避免 JWT 验证时出现错误。
⚠
keyfile 的权限必须允许 NGINX 读取,否则验证将失败。
⚠
使用与 keyfile 格式不匹配的 signing algorithm 会导致认证问题。