設定 AWS Secrets Manager 存取權杖身分驗證 - AWS Elemental MediaTailor

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定 AWS Secrets Manager 存取權杖身分驗證

當您想要使用 AWS Secrets Manager 存取權杖身分驗證時,請執行下列步驟:

  1. 您可以建立 AWS Key Management Service 客戶受管金鑰

  2. 您可以建立 AWS Secrets Manager 秘密 。機密包含您的存取權杖,該權杖存放在 Secrets Manager 中做為加密的機密值。 MediaTailor 會使用 AWS KMS 客戶受管金鑰來解密機密值。

  3. 您可以將 AWS Elemental MediaTailor 來源位置設定為使用 Secrets Manager 存取權杖身分驗證。

下一節提供 step-by-step如何設定 AWS Secrets Manager 存取權杖身分驗證的指引。

步驟 1:建立 AWS KMS 對稱客戶受管金鑰

您可以使用 AWS Secrets Manager 以SecretString存放在秘密中的 形式儲存您的存取權杖。透過使用您建立、擁有和管理的AWS KMS 對稱客戶受管金鑰SecretString加密 。 MediaTailor 會使用對稱客戶受管金鑰來協助透過授權存取秘密,以及加密和解密秘密值。

客戶受管金鑰可讓您執行下列任務:

  • 建立和維護金鑰政策

  • 建立和維護IAM政策和授予

  • 啟用和停用金鑰政策

  • 輪換密碼編譯金鑰材料

  • 新增標籤

    如需 Secrets Manager 如何使用 AWS KMS 來保護秘密的詳細資訊,請參閱 開發人員指南 AWS Secrets Manager 中的 主題如何使用 AWS KMSAWS Key Management Service

    如需客戶受管金鑰的詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的客戶受管金鑰

注意

AWS KMS 使用客戶受管金鑰需付費如需定價的詳細資訊,請參閱AWS金鑰管理服務定價頁面。

您可以使用 AWS Management Console 或使用 以程式設計方式建立 AWS KMS 對稱客戶受管金鑰 AWS KMS APIs。

建立對稱客戶受管金鑰

請遵循 開發人員指南中建立對稱客戶受管金鑰的步驟。 AWS Key Management Service

記下金鑰 Amazon Resource Name (ARN);您需要在 中加以記錄步驟 2:建立 AWS Secrets Manager 秘密

加密內容

加密內容是一組選用的金鑰值對,包含資料的其他相關內容資訊。

Secrets Manager 在加密和解密 時包含加密內容SecretString。加密內容包含秘密 ARN,將加密限制為該特定秘密。會代表您 MediaTailor 建立 AWS KMS 授予,作為額外的安全性指標。 MediaTailor 套用GrantConstraints的操作只允許我們解密與 Secrets Manager 加密內容中ARN包含的秘密SecretString相關聯的 。

如需 Secrets Manager 如何使用加密內容的詳細資訊,請參閱 AWS Key Management Service 開發人員指南 中的加密內容主題。

設定金鑰政策

金鑰政策會控制客戶受管金鑰的存取權限。每個客戶受管金鑰都必須只有一個金鑰政策,其中包含決定誰可以使用金鑰及其使用方式的陳述式。建立客戶受管金鑰時,您可以使用預設金鑰政策。如需詳細資訊,請參閱 AWS Key Management Service 開發人員指南 中的 的身分驗證和存取控制 AWS KMS

若要將客戶受管金鑰與 MediaTailor 來源位置資源搭配使用,您必須授予呼叫的IAM主體許可UpdateSourceLocationCreateSourceLocation或使用下列API操作:

  • kms:CreateGrant:新增客戶受管金鑰的授權。 MediaTailor 會在您的客戶受管金鑰上建立授予,讓其使用 金鑰來建立或更新以存取權杖身分驗證設定的來源位置。如需在 中使用 AWS 授予KMS的詳細資訊,請參閱 AWS Key Management Service 開發人員指南。

    這允許 MediaTailor 執行下列動作:

    • 呼叫 ,Decrypt讓它可以在呼叫 時成功擷取 Secrets Manager 秘密GetSecretValue

    • 刪除來源位置或撤銷對秘密的存取時,請呼叫 RetireGrant 以淘汰授予。

以下是您可以為 新增的政策陳述式範例 MediaTailor:

{ "Sid": "Enable MediaTailor Channel Assembly access token usage for the MediaTailorManagement IAM role", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account number:role/MediaTailorManagement" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "mediatailor.region.amazonaws.com" } } }

如需在政策中指定許可和疑難排解金鑰存取的詳細資訊,請參閱 AWS Key Management Service 開發人員指南 中的 中的 AWS 授予KMS

步驟 2:建立 AWS Secrets Manager 秘密

使用 Secrets Manager 以 AWS KMS 客戶受管金鑰SecretString加密的 形式存放您的存取權杖。 MediaTailor 使用 金鑰解密 SecretString。如需 Secrets Manager 如何使用 AWS KMS 來保護秘密的詳細資訊,請參閱 開發人員指南 AWS Secrets Manager 中的 主題如何使用 AWS KMSAWS Key Management Service

如果您使用 AWS Elemental MediaPackage 作為來源位置原始伺服器,且想要使用 MediaTailor Secrets Manager 存取權杖身分驗證,請遵循程序 與使用CDN授權的 MediaPackage 端點整合

您可以使用 建立 Secrets Manager 秘密, AWS Management Console 或使用 Secrets Manager 以程式設計方式建立 Secrets Manager 秘密APIs。

若要建立機密

請遵循 AWS Secrets Manager 使用者指南 中的使用 AWS Secrets Manager 建立和管理秘密的步驟。

建立秘密時,請記住下列考量事項:

  • KmsKeyId 必須是您在步驟 1 中建立的客戶受管金鑰的金鑰ARN

  • 您必須提供 SecretStringSecretString 應為有效的JSON物件,其中包含包含存取權杖的金鑰和值。例如,{"MyAccessTokenIdentifier":"112233445566"}。值長度必須介於 8-128 個字元之間。

    當您使用存取權杖身分驗證設定來源位置時,您可以指定 SecretString金鑰。 MediaTailor 使用 金鑰來查詢和擷取存放在 中的存取權杖SecretString

    記下秘密ARN和SecretString金鑰。當您將來源位置設定為使用存取權杖身分驗證時,將使用它們。

連接資源型秘密政策

若要允許 MediaTailor 存取秘密值,您必須將資源型政策連接至秘密。如需詳細資訊,請參閱 AWS Secrets Manager 使用者指南中的將許可政策連接至 AWS Secrets Manager Secret

以下是您可以為 新增的政策陳述式範例 MediaTailor:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "mediatailor.amazonaws.com" }, "Action": "secretsmanager:GetSecretValue", "Resource": "<secret ARN" } ] }

步驟 3:使用存取權杖身分驗證設定 MediaTailor 來源位置

您可以使用 AWS Management Console 或以程式設計方式與 設定 Secrets Manager 存取權杖身分驗證 MediaTailor APIs。

使用 Secrets Manager 存取權杖身分驗證設定來源位置

請遵循 使用者指南 Access configuration中的步驟。 AWS Elemental MediaTailor