支援終止通知:2025 年 11 月 13 日, AWS 將停止對 Amazon Elastic Transcoder 的支援。2025 年 11 月 13 日之後,您將無法再存取 Elastic Transcoder 主控台或 Elastic Transcoder 資源。
如需轉換至 的詳細資訊 AWS Elemental MediaConvert,請造訪此部落格文章
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
HLS 內容保護
HTTP Live Streaming (HLS) 是一種通訊協定,可在串流時將媒體檔案進行分割以最佳化。HLS 讓媒體播放器以最高品質解析度播放片段,其網路連線在播放期間支援此解析度。
您可以使用 Elastic Transcoder 來加密串流媒體檔案的區段、透過網際網路傳送加密的區段,並在播放時解密。這樣可保護您的媒體內容,並可確保只有授權使用者可以檢視媒體檔案的加密片段。
以下是有 HLS 內容保護的媒體檔案之播放程序摘要:
 
                
                
             
             
        - 瀏覽網頁的使用者會與 Web 伺服器來進行驗證,此伺服器會設定使用者瀏覽器中的工作階段 Cookie。 
- 使用者會透過 Web 伺服器載入播放器。 
- 播放器會從內容交付網路 (CDN) 擷取主播放清單。主播放清單會為媒體檔案提供可用的位元速率和解析度。 
- 播放器會呼叫 Web 伺服器,這可驗證工作階段 Cookie、檢查使用者是否獲得檢視內容的授權,並傳回資料解密金鑰。 
- 播放器會選擇變體播放清單並從 CDN 擷取關聯的媒體片段。 
- 播放器會使用資料金鑰來解密區段並開始播放媒體。 
注意
您可以使用 HLS 內容保護來加密串流檔案的區段,或者您可以加密整個檔案。您無法同時這麼做,因此請勿同時選取 HLS 內容保護和個別檔案保護。
HLS 內容保護的金鑰
若要搭配 Elastic Transcoder 使用 HLS 內容保護,您需要兩種類型的金鑰:
- AWS KMS key — 與 Elastic Transcoder 管道相關聯的金鑰 
- 資料金鑰 — 與您的 Elastic Transcoder 任務相關聯的金鑰 
您必須擁有 AWS KMS key 才能使用 HLS 內容保護。KMS 金鑰用於在透過網際網路傳送資料金鑰之前加密資料金鑰。建議您建立一個 KMS 金鑰,以搭配所有轉碼任務使用。如需建立和設定 KMS 金鑰的詳細資訊,請參閱 AWS KMS 搭配 Elastic Transcoder 使用。
加密媒體檔案所用的資料金鑰。相同內容的所有變化和分段都使用相同的資料金鑰來加密。如果您未指定資料金鑰,Elastic Transcoder 會為您產生一個金鑰。
串流受 HLS 保護的內容
若要提供受 HLS 保護的內容,您必須具有下列項目:
- 存放加密媒體檔案和資料金鑰的位置。我們建議您將檔案存放在 Amazon S3 中,並將金鑰安全地存放在資料庫中,例如 DynamoDB。如需 DynamoDB 的詳細資訊,請參閱《Amazon DynamoDB 開發人員指南》中的什麼是 Amazon DynamoDB?。 DynamoDB 
- (選用) 可串流檔案的內容分發網路 (CDN)。如需 CDNs的詳細資訊,請參閱《Amazon CloudFront 開發人員指南》中的 CloudFront 入門。 Amazon CloudFront 
- 能夠驗證和授權使用者並安全地提供資料加密金鑰的應用程式。您可以使用 Amazon EC2 來執行此應用程式。如需詳細資訊,請參閱《Amazon EC2 使用者指南》中的使用 Amazon EC2 設定 (適用於 Windows 使用者) 或》Amazon EC2 使用者指南》中的使用 Amazon EC2 設定 (適用於 Linux 使用者)。 Amazon EC2 
- 能夠對加密 HLS 檔案進行解密的播放器。如需詳細資訊,請前往 Http Live Streaming - 。 
建立加密的串流內容
若要準備檔案以進行 HLS 內容保護,您必須將 KMS 金鑰與新的或現有的管道建立關聯。
若要使用您指定的 KMS 金鑰設定管道,請參閱 AWS KMS 搭配 Elastic Transcoder 使用。
下列步驟說明如何使用 Elastic Transcoder 主控台來加密檔案,以保護 HLS 內容:
若要將 HLS 內容保護用於您的檔案
- 開啟 Elastic Transcoder 主控台,網址為 https://https://console.aws.amazon.com/elastictranscoder/ - 。 
- 在導覽窗格中,按一下 Jobs (任務),然後建立新任務。如需詳細資訊,請參閱在 Elastic Transcoder 中建立任務。 
- 在 Output Details (輸出詳細資訊) 的 Preset (預設集) 下拉式清單中,選取 - HLS預設集。
- 將 Encryption Parameters (加密參數) 的設定保持為 - None。
- 在 Playlists (播放清單) 中,按一下 Add Playlist (新增播放清單) 並選取 - HLSv3或- HLSv4做為播放清單類型。
- 在 Content Protection (內容保護) 中,選取 - Enter Information。- a. 若要管理自己的金鑰,請在 Key Storage Policy (金鑰儲存政策) 中,選取 - No Store。在 License Acquisition Url (取得授權 URL),輸入您將存放資料金鑰之位置的絕對路徑。例如:- https://www.example.com/datakey- 我們建議您選取 - No Store金鑰並將其存放在安全的 Amazon S3 儲存貯體或資料庫,例如 DynamoDB。- b. 若要將金鑰存放在公有 Amazon S3 儲存貯體中,請在金鑰儲存政策中,選取 - With Variant Playlists。Elastic Transcoder 會將您的資料金鑰寫入與播放清單檔案相同的儲存貯體。- 重要- 使用 - With Variant Playlists存放的金鑰會寫入公有儲存貯體。將- No Store用於實際金鑰。
注意
如果您選擇 No Store,Elastic Transcoder 會傳回資料金鑰,做為任務物件的一部分,但不會存放它。您需負責資料金鑰的存放。