Questa pagina fornisce una panoramica dei cookie firmati e le istruzioni per utilizzarli con Cloud CDN. I cookie firmati forniscono l'accesso alle risorse a tempo limitato a un insieme di file, indipendentemente dal fatto che gli utenti abbiano Account Google.
I cookie firmati sono un'alternativa agli URL firmati. I cookie firmati proteggono l'accesso quando non è possibile firmare separatamente decine o centinaia di URL per ogni utente nella tua applicazione.
I cookie firmati ti consentono di:
Autorizza un utente e fornisci un token a tempo limitato per accedere ai tuoi contenuti protetti (anziché firmare ogni URL).
Limita l'accesso dell'utente a un prefisso URL specifico, ad esempiohttps://media.example.com/videos/, e concedi all'utente autorizzato l'accesso ai contenuti protetti solo all'interno di quel prefisso URL.
Mantieni invariati gli URL e i manifest dei contenuti multimediali, semplifica la pipeline di imballaggio e migliora la memorizzazione nella cache.
Se invece vuoi limitare l'accesso a URL specifici, ti consigliamo di utilizzare URL firmati.
Prima di iniziare
Prima di utilizzare i cookie firmati, segui questi passaggi:
Assicurati che Cloud CDN sia abilitato. Per istruzioni, consulta
Utilizzare Cloud CDN. Puoi configurare
i cookie firmati su un backend prima di attivare Cloud CDN, ma non hanno
effetto finché Cloud CDN non è attivato.
Se necessario, esegui l'aggiornamento alla versione più recente di Google Cloud CLI:
Configurazione delle chiavi per le richieste firmate
La creazione di chiavi per gli URL firmati o i cookie firmati richiede diversi passaggi,
descritti nelle sezioni seguenti.
Considerazioni sulla sicurezza
Cloud CDN non convalida le richieste nelle seguenti circostanze:
La richiesta non è firmata.
Il servizio di backend o il bucket di backend per la richiesta non ha attivato Cloud CDN.
Le richieste firmate devono sempre essere convalidate all'origine prima di inviare la risposta. Questo perché le origini possono essere utilizzate per pubblicare una combinazione di contenuti firmati e non firmati e perché un client potrebbe accedere direttamente all'origine.
Cloud CDN non blocca le richieste senza un parametro di query Signature o un cookie HTTP Cloud-CDN-Cookie. Rifiuta le richieste con parametri non validi
(o con formato non valido).
Quando l'applicazione rileva una firma non valida, assicurati che risponda con un codice di risposta HTTP 403 (Unauthorized).
I codici di risposta HTTP 403 non sono memorizzabili nella cache.
Le risposte alle richieste firmate e non firmate vengono memorizzate nella cache separatamente, pertanto una risposta positiva a una richiesta firmata valida non viene mai utilizzata per soddisfare una richiesta non firmata.
Se la tua applicazione invia un codice di risposta memorizzabile in cache a una richiesta non valida,
le richieste future valide potrebbero essere rifiutate erroneamente.
Per i backend Cloud Storage, assicurati di rimuovere l'accesso pubblico, in modo che Cloud Storage possa rifiutare le richieste per le quali manca una firma valida.
La seguente tabella riassume il comportamento.
La richiesta ha la firma
Hit della cache
Comportamento
No
No
Inoltra all'origine di backend.
No
Sì
Pubblicazione dalla cache.
Sì
No
Convalida la firma. Se valido, inoltra all'origine del backend.
Sì
Sì
Convalida la firma. Se valido, pubblica dalla cache.
Creare chiavi di richiesta firmate
Per attivare il supporto degli URL e dei cookie firmati di Cloud CDN, crea una o più chiavi su un servizio di backend, un bucket di backend o entrambi abilitati per Cloud CDN.
Per ogni servizio di backend o bucket di backend, puoi creare ed eliminare le chiavi in base alle tue esigenze di sicurezza. Ogni backend può avere fino a tre chiavi configurate
contemporaneamente. Ti consigliamo di ruotare periodicamente le chiavi eliminando la più vecchia,
aggiungendo una nuova chiave e utilizzandola per la firma di URL o cookie.
Puoi utilizzare lo stesso nome della chiave in più servizi e bucket di backend
perché ogni insieme di chiavi è indipendente dagli altri. I nomi delle chiavi possono contenere fino a 63 caratteri. Per assegnare un nome alle chiavi, utilizza i caratteri A-Z, a-z, 0-9,
_ (trattino basso) e - (trattino).
Quando crei le chiavi, assicurati di mantenerle al sicuro, perché chiunque abbia una delle tue chiavi può creare URL o cookie firmati accettati da Cloud CDN finché la chiave non viene eliminata da Cloud CDN. Le chiavi vengono archiviate sul computer su cui generi gli URL o i cookie firmati.
Cloud CDN memorizza anche le chiavi per verificare le firme delle richieste.
Per mantenere le chiavi segrete, i valori delle chiavi non sono inclusi nelle risposte alle richieste dell'API. Se perdi una chiave, devi crearne una nuova.
Se utilizzi Cloud Storage e hai limitato chi può leggere gli oggetti, devi concedere a Cloud CDN l'autorizzazione per leggere gli oggetti aggiungendo l'account di servizio Cloud CDN ai criteri ACL di Cloud Storage.
Non è necessario creare l'account di servizio. L'account di servizio viene creato automaticamente la prima volta che aggiungi una chiave a un bucket di backend in un progetto.
Prima di eseguire il comando seguente, aggiungi almeno una chiave a un bucket di backend nel tuo progetto. In caso contrario, il comando non va a buon fine a causa di un errore perché l'account di servizio di compilazione della cache Cloud CDN non viene creato finché non aggiungi una o più chiavi per il progetto.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-03-06 UTC."],[[["Signed cookies provide time-limited access to a set of files, even for users without Google Accounts, as an alternative to signing individual URLs."],["Using signed cookies allows you to authorize a user with a time-limited token for accessing protected content within a specific URL prefix, simplifying the process compared to signing multiple URLs."],["Signed cookies require setting up keys on a Cloud CDN-enabled backend service or bucket, with up to three keys configurable at a time for each, and these keys must be kept secure as they enable the creation of valid signed requests."],["The origin web servers must validate the signatures on every signed request and accept or reject unsigned requests, as Cloud CDN only validates requests if they are signed and have Cloud CDN enabled for the backend."],["A signed cookie policy contains the `URLPrefix`, `Expires`, `KeyName`, and `Signature` fields, and it must be signed using a HMAC-SHA-1 signature that Cloud CDN validates on each request to ensure valid access."]]],[]]