本指南演示了如何为 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
与路由相关联时,Media CDN 会在传送任何内容之前验证请求是否已签名。