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:
-
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.
- La regola corrisponde alle richieste basate sul percorso
-
Definisci l’ambito della regola per un dominio specifico.
- Aggiungere una condizione di dominio alla sezione
whendella 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.comcon il nome di dominio effettivo configurato nelle impostazioni di dominio.
- Aggiungere una condizione di dominio alla sezione
-
Distribuisci la configurazione
cdn.ymlaggiornata tramite Cloud Manager.- Esegui il commit e invia le modifiche all’archivio.
- Distribuisci tramite la pipeline di Cloud Manager per applicare la regola.
-
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.