Configura l'autenticazione dell'origine privata

Questa pagina fornisce una panoramica dell'autenticazione dell'origine privata e le relative istruzioni. per utilizzarlo con Cloud CDN.

L'autenticazione dell'origine privata fornisce a Cloud CDN l'accesso a lungo termine alle risorse in bucket Amazon S3 privati o altri archivi di oggetti compatibili. Utilizzo le origini private impediscono ai client di bypassare Cloud CDN e accesso diretto alla tua origine.

Questa funzionalità è supportata per Cloud CDN con un un bilanciatore del carico delle applicazioni esterno globale o un bilanciatore del carico delle applicazioni classico.

L'autenticazione dell'origine privata riguarda l'origine, mentre URL firmati mentre i cookie firmati sono rivolti al client. Tu possono essere attivate entrambe per gli stessi contenuti. Limiti di autenticazione per l'origine privata l'accesso non CDN alle tue origini e ai tuoi contenuti. Controllo dei cookie e degli URL firmati quali utenti possono accedere a Cloud CDN.

Prima di iniziare

Configura l'autenticazione per origini private

Per configurare l'autenticazione dell'origine privata, segui queste istruzioni:

gcloud

  1. Esporta la configurazione del backend per la tua origine privata in un YAML utilizzando l'gcloud compute backend-services export :

    gcloud compute backend-services export BACKEND_SERVICE_NAME \
       [--destination=DESTINATION]
    

    Sostituisci DESTINATION con il nome del file YAML ad esempio my-private-origin.yaml.

  2. Per autenticare le richieste di backend utilizzando la chiave HMAC, specificare queste opzioni di configurazione aggiuntive Sezione securitySettings di backendServices:

    securitySettings:
      awsV4Authentication:
        accessKeyId: ACCESS_KEY_ID
        accessKey: ACCESS_KEY
        [accessKeyVersion: ACCESS_KEY_VERSION]
        originRegion: REGION
    …]
    

    Sostituisci quanto segue:

    • ACCESS_KEY_ID: ID chiave di accesso HMAC
    • ACCESS_KEY: la chiave di accesso HMAC
    • ACCESS_KEY_VERSION (facoltativo): un nome univoco che puoi impostare per rappresentare la versione della chiave
    • REGION: una regione valida per il tuo spazio di archiviazione o il provider di servizi di terze parti. Per Amazon S3, il valore non è Google Cloud regione.

    Lo snippet seguente mostra i contenuti di un esempio File my-private-origin.yaml:

     name: shopping-cart-services
     backends:
       - description: cart-backend-1
         group: 'https://www.googleapis.com/compute/v1/projects/my-project-id/global/networkEndpointGroups/my-network-origin-group'
     securitySettings:
       awsV4Authentication:
         accessKeyId: AKIDEXAMPLE
         accessKey: c4afb1cc5771d871763a393e44b703571b55cc28424d1a5e86da6ed3c154a4b9
         accessKeyVersion: prod-access-key-v1.2
         originRegion: us-east-2
    
  3. Per aggiornare l'origine privata, importa la configurazione nel tuo di servizio di backend utilizzando Comando gcloud compute backend-services import:

    gcloud compute backend-services import BACKEND_SERVICE_NAME \
       [--source=SOURCE]
    

    Sostituisci SOURCE con il nome del file YAML.

API

Per autenticare le richieste di backend utilizzando la chiave HMAC, specifica questi altre opzioni di configurazione nella sezione securitySettings di backendServices.

Utilizza la Method: backendServices.insert oppure Method: backendServices.update chiamata API.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE

Aggiungi il seguente snippet al corpo della richiesta JSON:

securitySettings: {
  awsV4Authentication: {
    accessKeyId: ACCESS_KEY_ID,
    accessKey: ACCESS_KEY,
    [accessKeyVersion: ACCESS_KEY_VERSION],
    originRegion: REGION
  }
}

Sostituisci quanto segue:

  • ACCESS_KEY_ID: ID chiave di accesso HMAC
  • ACCESS_KEY: la chiave di accesso HMAC
  • ACCESS_KEY_VERSION (facoltativo): un nome univoco che che puoi impostare per rappresentare la versione della chiave
  • REGION: una regione valida per il tuo spazio di archiviazione o il provider di servizi di terze parti. Per Amazon S3, il valore non è Google Cloud regione.

Lo snippet seguente mostra i contenuti di un esempio Corpo della richiesta JSON:

securitySettings: {
  awsV4Authentication: {
    accessKeyId: "AKIDEXAMPLE",
    accessKey: "c4afb1cc5771d871763a393e44b703571b55cc28424d1a5e86da6ed3c154a4b9",
    accessKeyVersion: "prod-access-key-v1.2",
    originRegion: "us-east-2"
  }
}

Il nome del servizio viene impostato automaticamente su s3 per la creazione della firma. Una volta applicate queste configurazioni, Cloud CDN genera Intestazione di autorizzazione HTTP per tutte le richieste alla tua origine.

Memorizza nella cache le risposte autenticate

Ti consigliamo di assicurarti che i contenuti con autenticazione privata vengano memorizzati nella cache con Cloud CDN.

A questo scopo, imposta la modalità cache su Forza la cache di tutti i contenuti e specifica un TTL, in modo che tutti i contenuti pubblicati l'origine viene memorizzata nella cache.

In alternativa, se non vuoi forzare la memorizzazione nella cache allo stesso modo di tutti i contenuti, cambia la modalità cache in Utilizza l'impostazione dell'origine in base alle intestazioni Cache-Control. o Memorizza nella cache i contenuti statici e assicurati che l'intestazione Cache-Control sia correttamente sui contenuti pubblicati dalla tua origine.

Passaggi successivi