

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Personalize o CloudFormation modelo para CDN e integrações MediaTailor
<a name="customize-cloudformation-template"></a>

AWS Elemental MediaTailor a personalização do modelo permite que os profissionais de radiodifusão adaptem o AWS CloudFormation modelo para atender aos requisitos específicos do fluxo de trabalho. Embora o modelo básico funcione para muitos cenários, essas personalizações podem ajudá-lo a atender a necessidades mais complexas.

Os exemplos abaixo mostram trechos de código YAML que você pode adicionar ao modelo. Se você não estiver familiarizado com o YAML ou a CloudFormation sintaxe, considere trabalhar com um desenvolvedor ou arquiteto de AWS soluções para fazer essas alterações.

Você pode personalizar o CloudFormation modelo para atender aos requisitos específicos do fluxo de trabalho.

## Adicionar ou modificar origens
<a name="add-modify-origins"></a>

Para fluxos de trabalho de transmissão que usam várias fontes de conteúdo (como fontes primárias e de backup, ou bibliotecas de conteúdo diferentes), você pode adicionar outras origens à sua CloudFront distribuição:

```
Origins:
  # Add a new origin for additional content
  - Id: SecondaryContentOrigin
    DomainName: secondary-content.example.com
    CustomOriginConfig:
      OriginProtocolPolicy: 'https-only'
      OriginSSLProtocols: 
        - TLSv1.2
```

Em seguida, adicione um comportamento de cache correspondente para rotear padrões específicos para essa origem:

```
CacheBehaviors:
  - PathPattern: '/secondary-content/*'
    TargetOriginId: SecondaryContentOrigin
    ViewerProtocolPolicy: 'https-only'
    CachePolicyId: 658327ea-f89d-4fab-a63d-7e88639e58f6  # Managed-CachingOptimized
```

## Crie políticas de cache personalizadas
<a name="create-custom-cache-policies"></a>

Para fluxos de trabalho de transmissão com requisitos específicos de armazenamento em cache (como parâmetros de seleção de qualidade ou autenticação do visualizador), você pode criar políticas de cache personalizadas em vez de usar as gerenciadas. Para obter orientação detalhada sobre valores de TTL e estratégias de armazenamento em cache, consulte. [Otimização de cache para CDN e integrações MediaTailor](cdn-optimize-caching.md)

```
# Define a custom cache policy
CustomCachePolicy:
  Type: AWS::CloudFront::CachePolicy
  Properties:
    CachePolicyConfig:
      Name: !Sub '${AWS::StackName}-CustomCachePolicy'
      DefaultTTL: 86400  # 24 hours
      MaxTTL: 31536000   # 1 year
      MinTTL: 1          # 1 second
      ParametersInCacheKeyAndForwardedToOrigin:
        CookiesConfig:
          CookieBehavior: none
        HeadersConfig:
          HeaderBehavior: none
        QueryStringsConfig:
          QueryStringBehavior: whitelist
          QueryStrings:
            - quality
            - format

# Reference the custom policy in a cache behavior
CacheBehaviors:
  - PathPattern: '/custom-path/*'
    TargetOriginId: ContentOrigin
    ViewerProtocolPolicy: 'https-only'
    CachePolicyId: !Ref CustomCachePolicy
```

## Aprimorar a MediaTailor configuração
<a name="enhance-mediatailor-config"></a>

Para fluxos de trabalho de transmissão que precisam de recursos avançados de inserção de anúncios, você pode aprimorar a MediaTailor configuração com opções como busca prévia de anúncios (para reduzir a latência), limites de personalização e anúncios bumper.

```
MediaTailorPlaybackConfig:
  Type: AWS::MediaTailor::PlaybackConfiguration
  Properties:
    # Add ad prefetching for improved performance
    AvailSuppression:
      Mode: BEHIND_LIVE_EDGE
      Value: 00:00:00
    # Add personalization parameters
    PersonalizationThresholdSeconds: 2
    # Add bumper ads
    Bumper:
      StartUrl: https://example.com/bumper-start.mp4
      EndUrl: https://example.com/bumper-end.mp4
    # Other existing properties...
```

Para obter mais informações sobre MediaTailor as opções de configuração, consulte[Usando AWS Elemental MediaTailor para inserir anúncios](configurations.md).

## Adicione recursos de segurança
<a name="add-security-features"></a>

Para fluxos de trabalho de transmissão com requisitos de segurança específicos (como restrições geográficas ou proteção contra ataques DDo S), você pode adicionar AWS WAF integração e restrições geográficas:

```
# Create a AWS WAF Web ACL
WebACL:
  Type: AWS::WAFv2::WebACL
  Properties:
    Name: !Sub '${AWS::StackName}-WebACL'
    Scope: CloudFront
    DefaultAction:
      Allow: {}
    VisibilityConfig:
      SampledRequestsEnabled: true
      CloudWatchMetricsEnabled: true
      MetricName: !Sub '${AWS::StackName}-WebACL'
    Rules:
      - Name: RateLimitRule
        Priority: 0
        Action:
          Block: {}
        VisibilityConfig:
          SampledRequestsEnabled: true
          CloudWatchMetricsEnabled: true
          MetricName: RateLimitRule
        Statement:
          RateBasedStatement:
            Limit: 1000
            AggregateKeyType: IP

# Reference the AWS WAF Web ACL in the CloudFront distribution
CloudFrontDistribution:
  Type: AWS::CloudFront::Distribution
  Properties:
    DistributionConfig:
      WebACLId: !GetAtt WebACL.Arn
      # Add geo-restriction
      Restrictions:
        GeoRestriction:
          RestrictionType: whitelist
          Locations:
            - US
            - CA
            - GB
      # Other existing properties...
```

Para obter mais informações sobre CloudFormation modelos, consulte o [Guia AWS CloudFormation do usuário](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html).

Para CloudFormation modelos e exemplos específicos de transmissão, consulte o repositório de ferramentas de [serviços de mídia da AWS](https://github.com/aws-samples/aws-media-services-tools). GitHub 