

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Kustomisasi CloudFormation templat untuk CDN dan integrasi MediaTailor
<a name="customize-cloudformation-template"></a>

AWS Elemental MediaTailor kustomisasi template memungkinkan profesional siaran untuk menyesuaikan AWS CloudFormation template agar sesuai dengan persyaratan alur kerja tertentu. Meskipun template dasar berfungsi untuk banyak skenario, penyesuaian ini dapat membantu Anda mengatasi kebutuhan yang lebih kompleks.

Contoh di bawah ini menunjukkan cuplikan kode YAMB yang dapat Anda tambahkan ke template. Jika Anda tidak terbiasa dengan YAMB atau CloudFormation sintaks, pertimbangkan untuk bekerja dengan pengembang atau arsitek AWS solusi untuk membuat perubahan ini.

Anda dapat menyesuaikan CloudFormation template untuk memenuhi persyaratan alur kerja spesifik Anda.

## Menambahkan atau memodifikasi asal
<a name="add-modify-origins"></a>

Untuk alur kerja siaran yang menggunakan beberapa sumber konten (seperti sumber primer dan cadangan, atau pustaka konten yang berbeda), Anda dapat menambahkan asal tambahan ke distribusi Anda CloudFront :

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

Kemudian tambahkan perilaku cache yang sesuai untuk merutekan pola tertentu ke asal ini:

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

## Buat kebijakan cache khusus
<a name="create-custom-cache-policies"></a>

Untuk alur kerja siaran dengan persyaratan caching tertentu (seperti parameter pemilihan kualitas atau otentikasi penampil), Anda dapat membuat kebijakan cache khusus alih-alih menggunakan yang dikelola. Untuk panduan terperinci tentang nilai TTL dan strategi caching, lihat. [Optimasi caching untuk CDN dan integrasi 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
```

## Tingkatkan MediaTailor konfigurasi
<a name="enhance-mediatailor-config"></a>

Untuk alur kerja siaran yang memerlukan fitur penyisipan iklan tingkat lanjut, Anda dapat menyempurnakan MediaTailor konfigurasi dengan opsi seperti prefetching iklan (untuk mengurangi latensi), ambang personalisasi, dan iklan 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...
```

Untuk informasi selengkapnya tentang opsi MediaTailor konfigurasi, lihat[Menggunakan AWS Elemental MediaTailor untuk menyisipkan iklan](configurations.md).

## Tambahkan fitur keamanan
<a name="add-security-features"></a>

Untuk alur kerja siaran dengan persyaratan keamanan tertentu (seperti pembatasan geografis atau perlindungan terhadap serangan DDo S), Anda dapat menambahkan AWS WAF integrasi dan pembatasan geografis:

```
# 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...
```

Untuk informasi selengkapnya tentang CloudFormation templat, lihat [Panduan AWS CloudFormation Pengguna](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html).

Untuk CloudFormation templat dan contoh khusus siaran, lihat repositori [AWS Media Services Tools](https://github.com/aws-samples/aws-media-services-tools). GitHub 