Authentifizierung des privaten Ursprungs konfigurieren

Diese Seite bietet einen Überblick über die Authentifizierung des privaten Ursprungs sowie eine Anleitung für die Verwendung mit Cloud CDN.

Durch die Authentifizierung des privaten Ursprungs erhält Cloud CDN langfristigen Zugriff auf Ressourcen auf private Amazon S3-Buckets oder andere kompatible Objektspeicher zugreifen. Mit private Ursprünge verhindern, dass Clients Cloud CDN und der direkte Zugriff auf Ihren Ursprung.

Diese Funktion wird für Cloud CDN mit einem einen globalen externen oder klassischen Application Load Balancer.

Die Authentifizierung des privaten Ursprungs ist ursprünglich gerichtet, während signierte URLs und signierte Cookies clientseitig sind. Ich können beide für denselben Inhalt aktivieren. Die Authentifizierung des privaten Ursprungs schränkt den Zugriff auf Ihre Ursprünge und Inhalte ein, der nicht über das CDN erfolgt. Einstellungen für signierte URLs und Cookies die Nutzer auf Cloud CDN zugreifen können.

Hinweise

Authentifizierung für private Ursprünge konfigurieren

So konfigurieren Sie die Authentifizierung des privaten Ursprungs:

gcloud

  1. Exportieren Sie die Back-End-Konfiguration für Ihren privaten Ursprung in eine YAML-Datei mithilfe der gcloud compute backend-services export Befehl:

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

    Ersetzen Sie DESTINATION durch den Namen der YAML-Datei. Datei, z. B. my-private-origin.yaml.

  2. So authentifizieren Sie Ihre Back-End-Anfragen mithilfe des HMAC-Schlüssels: diese zusätzlichen Konfigurationsoptionen im Abschnitt securitySettings von backendServices:

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

    Ersetzen Sie Folgendes:

    • ACCESS_KEY_ID: die HMAC-Zugriffsschlüssel-ID
    • ACCESS_KEY: HMAC-Zugriffsschlüssel
    • ACCESS_KEY_VERSION (optional): ein eindeutiger Name die Sie als Schlüsselversion festlegen können,
    • REGION: eine gültige Region für Ihren Speicheranbieter. Bei Amazon S3 ist der Wert kein Google Cloud- Region

    Das folgende Snippet zeigt den Inhalt eines Beispiels my-private-origin.yaml-Datei:

     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. Importieren Sie zum Aktualisieren Ihres privaten Ursprungs die Konfiguration in Ihren Back-End-Dienst mithilfe der Methode Befehl gcloud compute backend-services import:

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

    Ersetzen Sie SOURCE durch den Namen der YAML-Datei.

API

Zum Authentifizieren Ihrer Back-End-Anfragen mit dem HMAC-Schlüssel geben Sie Folgendes an: zusätzliche Konfigurationsoptionen im Abschnitt securitySettings von backendServices.

Verwenden Sie den API-Aufruf Method: backendServices.insert oder Method: backendServices.update.

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

Fügen Sie dem JSON-Anfragetext folgendes Snippet hinzu:

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

Ersetzen Sie Folgendes:

  • ACCESS_KEY_ID: die HMAC-Zugriffsschlüssel-ID
  • ACCESS_KEY: HMAC-Zugriffsschlüssel
  • ACCESS_KEY_VERSION (optional): ein eindeutiger Name, der können Sie festlegen, dass die Schlüsselversion
  • REGION: eine gültige Region für Ihren Speicher Dienstanbieter. Bei Amazon S3 ist der Wert kein Google Cloud- Region

Das folgende Snippet zeigt den Inhalt eines Beispiels JSON-Anfragetext:

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

Der Dienstname wird zum Erstellen der Signatur automatisch auf s3 festgelegt. Nachdem diese Konfigurationen eingerichtet sind, generiert Cloud CDN einen HTTP-Autorisierungsheader für alle Anfragen an Ihren Ursprung.

Antworten mit privater Authentifizierung im Cache speichern

Sie können sicherstellen, dass privat authentifizierte Inhalte durch Cloud CDN

Stellen Sie dazu den Cache-Modus ein. um den gesamten Inhalt im Cache zu speichern und eine TTL anzugeben, damit alle Inhalte der Ursprung im Cache gespeichert wird.

Wenn Sie nicht erzwingen möchten, dass alle Inhalte im Cache gespeichert werden, Ändern Sie den Cache-Modus in Ursprüngliche Einstellung basierend auf Cache-Control-Headern verwenden. oder Statische Inhalte im Cache speichern und achten Sie darauf, dass der Cache-Control-Header bei Inhalten, die von Ihrem Ursprung bereitgestellt werden, korrekt festgelegt sind.

Nächste Schritte