key_id
'key' 指令指定用于签名由 NGINX Secure Token Module 为 CDN 集成生成的安全令牌的加密密钥。
Secure token module for NGINX
语法key hex_string;
默认值none
上下文
参数1
说明
NGINX Secure Token Module 中的 'key' 指令对于在诸如 Akamai 和 Amazon CloudFront 等 CDN 环境中生成用于内容交付的安全令牌至关重要。该指令接受单个参数,该参数应为表示加密密钥的十六进制字符串。所生成令牌的安全性和有效性在很大程度上取决于此密钥,因为它与令牌参数结合,使用 SHA-256 哈希算法生成带 HMAC 的哈希签名。将此密钥包含在配置中使 NGINX 能够创建独特的令牌,对要交付的 URL 或数据进行加密,从而限制对由生成的令牌定义的内容的未经授权访问。在运行时,该指令通常与其他相关指令一起使用,例如 'acl'(为令牌验证指定访问控制列表)和 'param_name'(决定将包含生成令牌的查询字符串参数的名称)。在适当配置时,NGINX 将动态管理令牌的生成,确保通过 CDN 交付的商业内容保持受保护,并满足配置中设定的访问策略。这不仅实现了访问管理,还增强了针对令牌篡改或内容未经授权使用的安全防护。
配置示例
secure_token_akamai {
key 1234567890abcdef1234567890abcdef; // Example key as a hex string
acl "allow all";
param_name "token";
start 0;
end 3600;
}⚠
确保该密钥为有效的十六进制字符串;否则,令牌生成将失败。
⚠
谨防密钥泄露;将其视为密码并避免将其记录到日志中。
⚠
定期重新生成并管理密钥以提升安全性。