Ambito della regola della pipeline CDN in un dominio specifico tramite cdn.yml

Una regola CDN non intenzionale può influire su altri domini nello stesso ambiente se non ha un ambito esplicito. Questo articolo spiega come limitare una regola di pipeline CDN in Adobe Experience Manager (AEM) Cloud Service a un dominio specifico aggiungendo una condizione host in cdn.yml.

Descrizione description

Ambiente

Adobe Experience Manager (AEM) Cloud Service

Problema/Sintomi

Si desidera bloccare un endpoint di consegna Dynamic Media legacy in un ambiente (DEV) inferiore utilizzando la pipeline CDN di Cloud Manager tramite il file cdn.yml. La configurazione YAML seguente blocca le richieste corrispondenti al percorso /adobe/dynamicmedia/deliver/ e restituisce una risposta 410 Gone:

rules:
  - name: block-legacy-delivery-endpoint
    when:
      allOf:
        - reqProperty: path
          matches: /adobe/dynamicmedia/deliver(/.*)?$
    actions:
      - type: respond
        status: 410 reason: "Legacy Dynamic Media endpoint is deprecated"

È necessario confermare se questa regola si applica a tutti i domini configurati nell’ambiente e come limitarla in modo che influisca solo sul dominio VCR desiderato.

  • Le richieste all’endpoint legacy di Dynamic Media vengono bloccate come previsto.
  • Le richieste agli URL OpenAPI Dynamic Media sono consentite tramite.
  • Assicurati che la regola si applichi solo a un dominio specifico e non a tutti i domini nell’ambiente.

Causa

Per impostazione predefinita, le regole CDN in cdn.yml si applicano a tutti i domini a meno che non abbiano un ambito esplicito. L’aggiunta di una condizione host assicura che la regola influisca solo sul dominio previsto.

Risoluzione resolution

Per risolvere il problema:

  1. Esaminare la configurazione della regola CDN corrente in cdn.yml.

    • La regola corrisponde alle richieste basate sul percorso /adobe/dynamicmedia/deliver/.
    • Per impostazione predefinita, questa regola si applica a tutti i domini configurati nell’ambiente, a meno che non abbia un ulteriore ambito.
  2. Definisci l’ambito della regola per un dominio specifico.

    • Aggiungere una condizione di dominio alla sezione when della regola.
    • Utilizza la sintassi di esempio seguente:
    code language-none
    - name: block-legacy-delivery-endpoint
                        when:
                        allOf:
                            - reqProperty: host
                            matches: your-vcr-domain\.example\.com$
                            - reqProperty: path
                            matches: /adobe/dynamicmedia/deliver(/.*)?$
                        actions:
                        - type: respond
                            status: 410
                            reason: "Legacy Dynamic Media endpoint is deprecated"
    
    • Sostituisci your-vcr-domain.example.com con il nome di dominio effettivo configurato nelle impostazioni di dominio.
  3. Distribuisci la configurazione cdn.yml aggiornata tramite Cloud Manager.

    • Esegui il commit e invia le modifiche all’archivio.
    • Distribuisci tramite la pipeline di Cloud Manager per applicare la regola.
  4. Convalida la regola nell’ambiente di destinazione.

    • Verifica le richieste all’endpoint legacy nel dominio con ambito per verificarne il blocco.
    • Testa le richieste allo stesso endpoint su altri domini per assicurarti che non siano interessate.
    • Conferma che gli URL OpenAPI Dynamic Media non siano interessati.
recommendation-more-help
experience-cloud-kcs-help-kbarticles