Este guia demonstra como criar pares de chaves assimétricas para Media CDN do Google Cloud.
Gerar chaves
Linha de comando
É possível gerar uma chave privada e pública usando o Python 3 e o OpenSSL 1.1.1 ou mais recente (versões anteriores do OpenSSL não oferecem suporte ao Ed25519).
Gere a chave privada.
openssl genpkey -algorithm ed25519 -outform PEM -out test.private.key
Isso gera uma chave privada codificada em PEM. Mantenha essa chave segura, de preferência usando um sistema de gerenciamento de chaves ou o Secret Manager.
Gere a chave pública a partir da chave privada no formato base64 seguro para URL.
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])"
Esse comando gera a chave pública a partir da chave privada, removendo as informações do cabeçalho ASN.1 da chave pública bruta.
Python
Com a chave nesse formato, agora é possível adicionar a um conjunto de chaves.
Quando o conjunto de chaves é associado a uma rota como cdnPolicy.signedRequestKeyset
,
o Media CDN valida se as solicitações foram assinadas antes
de exibir qualquer conteúdo.