本指南演示了如何为 Media CDN 创建非对称密钥对。
生成密钥
命令行
您可以使用 Python 3 和 OpenSSL 1.1.1 或更高版本(早期版本的 OpenSSL 不支持 Ed25519)生成私钥和公钥。
生成私钥。
openssl genpkey -algorithm ed25519 -outform PEM -out test.private.key
这会输出一个 PEM 编码的私钥。请务必确保此密钥的安全,最好使用密钥管理系统或 Secret Manager。
以 网址 安全的 Base64 格式从私钥生成公钥。
openssl pkey -outform DER -pubout -in test.private.key | tail -c +13 | python3 -c "import base64, sys; print(('%s' % base64.urlsafe_b64encode(sys.stdin.buffer.read()))[2:-1])"
此命令会从私钥生成公钥,并从原始公钥中剥离 ASN.1 标头信息。
Python
有了这种格式的密钥,您现在可以将其添加到密钥集。
当密钥集作为 cdnPolicy.signedRequestKeyset
与路由关联时,媒体 CDN 会先验证请求是否已签名,然后再提供任何内容。