Esta página descreve brevemente as opções que o Media CDN oferece para ajudam a impedir a distribuição não autorizada do seu conteúdo.
O Media CDN oferece suporte a várias opções de solicitação assinadas para ajudar a proteger seu conteúdo contra distribuição não autorizada. Um token é um meio de troca solicitações assinadas, como um cookie assinado, um URI com parâmetros de consulta ou um caminho componente. Os tokens válidos apresentados pelos leitores são usados para autenticar o acesso aos seu conteúdo. Um leitor com um token inválido ou ausente é impedido acessem seu conteúdo.
O Media CDN oferece as seguintes opções de solicitação assinada para o cliente autenticação:
Assinaturas: o Media CDN usa uma única assinatura para ajudar proteger o conteúdo.
Tokens: o Media CDN usa tokens para proteger o conteúdo. Você pode optar por autenticação de token único ou de dois tokens.
Quando a autenticação de dois tokens é usada, o Media CDN usa dois de curta e longa duração, para ajudar a proteger o conteúdo.
As assinaturas permitem assinar URLs completos, incluindo o host e o protocolo.
Os tokens oferecem os seguintes recursos:
- Compatibilidade com CDNs que não são do Google
- Assinatura somente de caminho
- Capacidade de assinar mais de um cabeçalho
- Capacidade de incorporar dados arbitrários e IDs de sessão
Recomendamos tokens para novas integrações. Os tokens são obrigatórios para tokens duplos autenticação.
É possível usar solicitações assinadas e solicitações de autenticação de dois tokens juntas para ajudar a proteger seu conteúdo.
Como funcionam as solicitações assinadas
Uma solicitação assinada usa assinaturas ou tokens para verificar se cada espectador está autenticados para acessar o conteúdo. É possível configurar o Media CDN para que o acesso tem escopo para qualquer um destes itens:
- Um URI exato ou um prefixo URI por tempo limitado
- Um cliente específico
- Para solicitações assinadas usando tokens, até cinco caminhos com caracteres curinga
Para usar solicitações assinadas, gere chaves para assinar e verificar assinaturas. Você Depois, configure rotas, que permitem otimizar o comportamento com base no tipo de conteúdo, atributos do cliente e requisitos de atualização. As solicitações assinadas podem ser aplicadas por rota, o que ajuda a proteger endpoints específicos.
Cada serviço do Media CDN pode usar uma coleção de várias chaves. A coleção de chaves também é conhecida como conjunto de chaves. Os conjuntos de chaves permitem alternar as chaves e distribuir as chaves privadas na sua própria infraestrutura sem sem interrupção.
É possível configurar o Media CDN para usar solicitações assinadas ou para ajudar a proteger o conteúdo.
Para solicitações assinadas usando assinaturas, é possível usar qualquer um dos seguintes formatos:
- Um URI exato com parâmetros de consulta: você especifica um
URLPrefix
com o URI exato e anexar os mesmos parâmetros de consulta a vários URIs. - Um prefixo URI com parâmetros de consulta: você especifica um
URLPrefix
com um URI e anexar os mesmos parâmetros de consulta a vários URIs. - Um componente de caminho: você especifica um componente de caminho, que permite que os os URIs do manifesto herdam o componente de URI assinado.
- Um cookie assinado: você especifica um prefixo URI em um cookie, o que permite acesso a qualquer URI com o prefixo especificado.
Para mais informações, consulte Gerar assinaturas.
Para solicitações assinadas usando tokens, você pode colocar o token em um dos seguintes:
- Em um parâmetro de consulta de sua escolha
- Em um cookie
Para mais informações, consulte Gerar tokens.
Como funciona a autenticação de token duplo
A autenticação de dois tokens usa dois tokens para autenticar solicitações ao seu conteúdo: um token de curta duração para iniciar a reprodução e um de longa duração token para o restante da sessão de reprodução.
Para usar a autenticação de dois tokens, configure seu servidor de aplicativos para emitir tokens de curta duração para user agents. Depois, configure Media CDN para responder aos tokens de curta duração. Você pode colocar o token em um parâmetro de consulta de sua escolha ou colocar o token em um cookie. Para mais informações, consulte Use a autenticação de token duplo.
Tokens de curta duração gerados pelo servidor do aplicativo ajudam a proteger (às vezes chamadas de playlists multivariantes). O a expiração da solicitação assinada for curta o suficiente para solicitar um manifesto principal; mas não observar todo o conteúdo contido em um manifesto.
Quando o Media CDN recebe uma solicitação com um período curto autorizado
é gerado um token de longa duração assinado. É possível usar o token
um parâmetro de consulta de nome único ou em um cookie. O token de longa duração
suporta a visualização de um programa completo. Os tokens assinados de longa duração
geradas pelo Media CDN usam assinaturas Ed25519 assinadas com
as chaves gerenciadas pelo Google associadas a uma
Recurso EdgeCacheKeyset
.
É possível personalizar o prazo de validade de tokens de curta e longa duração. Como prática recomendada, configure o prazo de validade de curta duração gerados no servidor do aplicativo para um minuto. Você precisa definir o prazo de validade dos tokens de longa duração que o Media CDN é gerada com uma duração maior que a do conteúdo, até um máximo de um dia.
Fluxo de solicitação para autenticação de token duplo
Confira a seguir a descrição do fluxo de solicitações:
Um leitor solicita metadados do servidor de aplicativos para a mídia desejada para visualizar. O servidor de aplicativos retorna o URI do manifesto principal assinado com um token de curta duração.
O aplicativo do seu player solicita o manifesto principal de Media CDN do Google Cloud. A solicitação inclui o token de curta duração como um valor de um parâmetro de consulta URI no formato de parâmetro de consulta de nome único.
O Media CDN verifica o token de curta duração e o parâmetros com sinal.
- Se o token for válido, o Media CDN criará um token de assinatura. O Media CDN retorna o token em uma cabeçalho Set-Cookie ou modificando o manifesto e os URIs do segmento na manifesto principal para incluir o token.
- Se o token não for válido, o Media CDN responderá com uma
Resposta
HTTP 403 Forbidden
.
O aplicativo do jogador recebe o manifesto principal do Media CDN e, em seguida, solicita a playlist de mídia ou o referenciados no manifesto principal. A solicitação deve incluir o token de longa duração, seja como um cookie assinado ou um parâmetro de URI.
O Media CDN verifica o token de assinatura de longa duração:
- Se o token de longa duração for válido para a solicitação específica, O Media CDN exibe o conteúdo solicitado.
- Se o token de longa duração não for válido (devido a um token expirado ou
ou inválido), o Media CDN responderá com uma
Resposta
HTTP 403 Forbidden
.
O processo se repete até que a reprodução da mídia termine ou até a assinatura de longa duração. expira.
Formatos de token compatíveis com solicitações assinadas com token duplo
As solicitações assinadas com token duplo do Media CDN são compatíveis com vários formatos, dependendo do tipo de token.
Solicitações assinadas de curta duração
Para solicitações assinadas de curta duração, o Media CDN oferece suporte a tokens assinados com assinaturas Ed25519 por padrão. Você também pode usar códigos de autenticação de mensagens com base em hash de chave simétrica (HMACs) para compatibilidade com o código do aplicativo e outras CDNs.
Para usar HMACs, utilize o Secret Manager para armazenar o secret HMAC. Em seguida, você concede acesso ao Media CDN para acessar o secret armazenado. Como prática recomendada, sugerimos usando assinatura assimétrica com assinaturas Ed25519 para segurança e desempenho.
A conta de serviço do Media CDN pertence ao do Media CDN e não será exibido na lista de e contas de serviço. A conta de serviço concede acesso apenas Recursos do Media CDN nos projetos que você permitir explicitamente.
A conta de serviço tem o seguinte formato:
service-PROJECT_NUMBER@gcp-sa-mediaedgefill.iam.gserviceaccount.com
Em que PROJECT_NUMBER é o número do projeto.
Para ativar a conta de serviço do Media CDN de serviço, crie pelo menos
um recurso do Media CDN, como EdgeCacheOrigin
.
Solicitações assinadas de longa duração
Para solicitações assinadas de longa duração, o Media CDN usa Ed25519
assinaturas que são assinadas com chaves gerenciadas pelo Google associadas a uma
Recurso EdgeCacheKeyset
.
O Media CDN oferece suporte a um formato de token único para tokens de longa duração, que pode ser usado em um parâmetro de consulta de nome único para fluxos HLS ou em um cookie.
Considerações
As seções a seguir discutem itens como:
Limites de URI
A maioria dos clientes HTTP modernos é compatível com URIs com até 8.000 caracteres. No entanto, alguns os dispositivos legados ou de nicho podem ter limites mais rigorosos. Em geral, um URI assinado adiciona cerca de 125 caracteres para o URI de solicitação, que inclui o seguinte:
- Se todos os nomes de campo forem usados, aproximadamente 67 caracteres para cada campo
(como
Expires=
eKeyName=
). - Para o carimbo de data/hora Unix, 10 caracteres
- Para a
KeyName
, cinco caracteres - Para o valor
Signature
codificado em base64, 43 caracteres
Como prática recomendada, mantenha URIs com menos de 2.000 caracteres usando consultas parâmetros como tokens. URIs mais curtos impedem que os dispositivos enviem URIs truncados ao Media CDN.
Dispositivos de streaming de vídeo legados
Alguns dispositivos de streaming de vídeo legados podem não suportar totalmente a anexação de cookies a solicitações de manifesto ou segmento de mídia. Se você tem dispositivos com problemas conhecidos gerenciar cookies HTTP, configure o Media CDN para usar parâmetros de consulta para solicitações assinadas e troca de token duplo.
Conformidade e consentimento com a privacidade
Você é a única pessoa responsável por qualquer consentimento e conformidade de privacidade necessários ao usando cookies para trocar tokens de curta duração. Quando o Media CDN é configurada para usar solicitações assinadas com dois tokens, o Google emite e gerencia a cookies usados para tokens de longa duração.
Faturamento
Saiba como o Secret Manager é cobrado, consulte Preços.
As buscas do Media CDN de secrets são armazenadas em cache internamente, significativamente reduzindo a taxa de buscas de secrets do Secret Manager. A menor buscas também reduzem significativamente as taxas de acessos O Secret Manager observa e cobra você.
Para mais informações sobre o armazenamento em cache de secrets no Media CDN, consulte Visão geral das chaves.