本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
配置 AWS Secrets Manager 访问令牌身份验证
当你想使用时 AWS Secrets Manager 访问令牌身份验证,请执行以下步骤:
-
你创建了一个 AWS Secrets Manager 秘密。该密钥包含您的访问令牌,该令牌作为加密密钥值存储在 Secrets Manager 中。 MediaTailor 使用 AWS KMS 客户管理的密钥用于解密密密钥。
-
你配置一个 AWS Elemental MediaTailor 使用 Secrets Manager 访问令牌身份验证的源位置。
以下部分提供有关如何配置的 step-by-step 指导 AWS Secrets Manager 访问令牌身份验证。
步骤 1:创建一个 AWS KMS 对称客户托管密钥
你用 AWS Secrets Manager 以存储在机密中的形式SecretString
存储您的访问令牌。SecretString
是通过使用加密的 AWS KMS 您创建、拥有和管理的对称客户托管密钥。 MediaTailor 使用对称的客户托管密钥来简化对密钥的访问(通过授权),并加密和解密密密钥值。
客户托管密钥允许您执行以下任务:
-
制定和维护关键策略
-
制定和维护IAM政策及补助金
-
启用和禁用密钥策略
-
轮换加密密钥材料
-
添加标签
有关 Secrets Manager 如何使用的信息 AWS KMS 要保护机密,请参阅主题 “如何” AWS Secrets Manager uses AWS KMS中的 AWS Key Management Service 开发者指南。
有关客户托管密钥的更多信息,请参阅中的客户托管密钥 AWS Key Management Service 开发者指南。
注意
AWS KMS 使用客户托管密钥需要支付费用有关定价的更多信息,请参阅AWS密钥管理服务定价
你可以创建一个 AWS KMS 使用对称的客户托管密钥 AWS Management Console 或者以编程方式使用 AWS KMS APIs.
创建对称的客户托管密钥
按照中创建对称客户托管密钥的步骤进行操作 AWS Key Management Service 开发者指南。
记下关键的 Amazon 资源名称 (ARN);你需要它步骤 2:创建一个 AWS Secrets Manager secret。
加密上下文
加密上下文是一组可选的键值对,包含有关数据的其他上下文信息。
Secrets Manager 在加密和解密时包含加密上下文。SecretString
加密上下文包括密钥ARN,该密钥将加密限制在该特定机密范围内。作为额外的安全衡量标准, MediaTailor 创建了一个 AWS KMS 代表您授予。 MediaTailor 应用的GrantConstraints操作仅允许我们解密与 Sec rets Manager 加密上下ARN文中包含的密钥SecretString
关联的内容。
有关 Secrets Manager 如何使用加密上下文的信息,请参阅中的加密上下文主题 AWS Key Management Service 开发者指南。
设置密钥策略
密钥策略控制对客户托管密钥的访问。每个客户托管式密钥必须只有一个密钥政策,其中包含确定谁可以使用密钥以及如何使用密钥的声明。创建客户托管密钥时,您可以使用默认密钥策略。有关更多信息,请参阅身份验证和访问控制 AWS KMS在 AWS Key Management Service 开发者指南。
要将您的客户托管密钥与您的 MediaTailor 来源位置资源一起使用,您必须向调用CreateSourceLocation或UpdateSourceLocation使用以下API操作的IAM委托人授予权限:
-
kms:CreateGrant
– 添加客户托管密钥授权。 MediaTailor 为您的客户托管密钥创建授权,允许其使用该密钥创建或更新配置了访问令牌身份验证的来源位置。有关使用 Grants 的更多信息,请参阅 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" } } }
有关在策略中指定权限和对密钥访问进行故障排除的更多信息,请参阅中的 Gr ants AWS KMS在 AWS Key Management Service 开发者指南。
步骤 2:创建一个 AWS Secrets Manager secret
使用 Secrets Manager 以由加密SecretString
的形式存储您的访问令牌 AWS KMS 客户管理的密钥。 MediaTailor使用密钥来解密。SecretString
有关 Secrets Manager 如何使用的信息 AWS KMS 要保护机密,请参阅主题 “如何” AWS Secrets Manager uses AWS KMS中的 AWS Key Management Service 开发者指南。
如果你使用 AWS Elemental MediaPackage 作为您的源位置来源,并且想要使用 S MediaTailor ecrets Manager 访问令牌进行身份验证,请按照以下步骤操作与使用CDN授权的 MediaPackage 端点集成。
你可以使用创建 Secrets Manager 密钥 AWS Management Console 或者使用 Secrets Manager APIs 以编程方式使用。
创建密钥
按照创建和管理密钥的步骤进行操作 AWS 里面的 Secret s Manager AWS Secrets Manager 用户指南。
创建密钥时,请记住以下注意事项:
-
您必须提供 SecretString.
SecretString
应该是一个有效的JSON对象,其中包含一个包含访问令牌的键和值。例如,{” MyAccessTokenIdentifier “: “112233445566"}。该值的长度必须介于 8-128 个字符之间。使用访问令牌身份验证配置源位置时,需要指定
SecretString
密钥。 MediaTailor 使用密钥查找和检索存储在中的访问令牌SecretString
。记下秘密ARN和
SecretString
钥匙。当您将来源位置配置为使用访问令牌身份验证时,您将使用它们。
附加基于资源的密钥策略
要允许 MediaTailor 访问密钥值,您必须将基于资源的策略附加到该密钥。有关更多信息,请参阅将权限策略附加到 AWS Secrets Manager 中的秘密 AWS Secrets Manager 用户指南。
以下是您可以为其添加的策略声明示例 MediaTailor:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "mediatailor.amazonaws.com" }, "Action": "secretsmanager:GetSecretValue", "Resource": "<
secret ARN
" } ] }
步骤 3:使用访问令牌身份验证配置 MediaTailor 源位置
你可以使用 Secrets Manager 访问令牌身份验证 AWS Management Console 或者以编程方式使用. MediaTailor APIs
使用 Secrets Manager 访问令牌身份验证配置源位置
按照Access configuration中的步骤操作 AWS Elemental MediaTailor 用户指南。