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:
-
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.
- A regra corresponde às solicitações com base no caminho
-
Coloque a regra no escopo de um domínio específico.
- Adicione uma condição de domínio à seção
whenda 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.compelo nome de domínio real configurado nas configurações de domínio.
- Adicione uma condição de domínio à seção
-
Implante a configuração
cdn.ymlatualizada 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.
-
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.