Escopo da regra de pipeline CDN para um domínio específico usando cdn.yml

Uma regra CDN não intencional pode afetar outros domínios no mesmo ambiente se não tiver escopo explícito. Este artigo explica como limitar uma regra de pipeline CDN no Adobe Experience Manager (AEM) Cloud Service a um domínio específico adicionando uma condição de host em cdn.yml.

Descrição description

Ambiente

Adobe Experience Manager (AEM) Cloud Service

Problema/Sintomas

Você deseja bloquear um ponto de extremidade de entrega herdado do Dynamic Media em um ambiente inferior (DEV) usando o pipeline de CDN da Cloud Manager por meio do arquivo cdn.yml. A configuração YAML a seguir bloqueia solicitações que correspondem ao caminho /adobe/dynamicmedia/deliver/ e retorna uma Resposta desfeita:

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"

É necessário confirmar se essa regra se aplica a todos os domínios configurados no ambiente e como restringi-la para que afete apenas o domínio do VCR pretendido.

  • As solicitações para o endpoint herdado do Dynamic Media são bloqueadas conforme esperado.
  • Solicitações de URLs OpenAPI do Dynamic Media são permitidas por meio de.
  • É necessário garantir que a regra se aplique apenas a um domínio específico e não a todos os domínios no ambiente.

Causa

Por padrão, as regras CDN em cdn.yml se aplicam a todos os domínios, a menos que tenham escopo explícito. Adicionar uma condição de host garante que a regra afete somente o domínio pretendido.

Resolução resolution

Para corrigir o problema:

  1. Revise a configuração atual da regra CDN em cdn.yml.

    • A regra corresponde às solicitações com base no caminho /adobe/dynamicmedia/deliver/.
    • Por padrão, essa regra se aplica a todos os domínios configurados no ambiente, a menos que tenha mais escopo.
  2. Coloque a regra no escopo de um domínio específico.

    • Adicione uma condição de domínio à seção when da regra.
    • Use o exemplo de sintaxe a seguir:
    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"
    
    • Substitua your-vcr-domain.example.com pelo nome de domínio real configurado nas configurações de domínio.
  3. Implante a configuração cdn.yml atualizada por meio do Cloud Manager.

    • Confirme e envie as alterações para seu repositório.
    • Implante por meio do pipeline da Cloud Manager para aplicar a regra.
  4. Valide a regra no ambiente de destino.

    • Teste as solicitações para o endpoint herdado no domínio com escopo para confirmar se elas estão bloqueadas.
    • Teste solicitações para o mesmo endpoint em outros domínios para garantir que elas não sejam afetadas.
    • Confirme se os URLs do OpenAPI Dynamic Media não foram afetados.
recommendation-more-help
experience-cloud-kcs-help-kbarticles