本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
允許 AWS Elemental MediaPackage 存取其他 AWS 服務
某些功能需要您允許 MediaPackage 存取其他 AWS 服務,例如 Amazon S3 和 AWS Secrets Manager (Secrets Manager)。若要允許此存取,請建立具有適當許可的 IAM 角色和政策。下列步驟說明如何為 MediaPackage 功能建立角色和政策。
步驟 1:建立政策
IAM 政策定義 AWS Elemental MediaPackage (MediaPackage) 存取其他 服務所需的許可。
對於隨選視訊 (VOD) 工作流程,請建立允許 MediaPackage 從 Amazon S3 儲存貯體讀取、驗證帳單方法和擷取內容的政策。對於 計費方法,MediaPackage 必須驗證儲存貯體不需要請求者支付請求費用。如果儲存貯體已啟用 requestPayment,MediaPackage 便無法從該儲存貯體擷取內容。
-
對於live-to-VOD實播串流工作流程,請建立允許 MediaPackage 從 Amazon S3 儲存貯體中讀取,並將live-to-VOD實況實況實況實況實況實播串流串流串流串流串流串流串流串流的工作流程。
-
針對內容交付網路 (CDN) 授權,建立允許 MediaPackage 從 Secrets Manager 中的秘密讀取的政策。
下列各節說明如何建立這些政策。
如果您使用 MediaPackage 從 Amazon S3 儲存貯體擷取 VOD 資產,以及封裝和交付該資產,則需要可讓您在 Amazon S3 中執行這些動作的政策:
-
GetObject
- MediaPackage 可以從儲存貯體擷取 VOD 資產。 -
GetBucketLocation
- MediaPackage 可以擷取儲存貯體的區域。儲存貯體必須與 MediaPackage VOD 資源位於相同的區域。 -
GetBucketRequestPayment
- MediaPackage 可以擷取付款請求資訊。MediaPackage 會使用此資訊來驗證儲存貯體不需要請求者支付內容請求的費用。
如果您也使用 MediaPackage live-to-VOD資產收集,請將 PutObject
動作新增至政策。如需實況錄音影像隨選播送工作流程所需政策的詳細資訊,請參閱live-to-VOD實播工作流程的政策。
若要使用 JSON 政策編輯器來建立政策
登入 AWS Management Console ,並在 https://https://console.aws.amazon.com/iam/
開啟 IAM 主控台。 -
在左側的導覽窗格中,選擇 Policies (政策)。
如果這是您第一次選擇 Policies (政策),將會顯示 Welcome to Managed Policies (歡迎使用受管政策) 頁面。選擇 Get Started (開始使用)。
-
在頁面頂端,選擇 Create policy (建立政策)。
-
在政策編輯器中,選擇 JSON 選項。
-
輸入下列 JSON 政策文件:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetObject", "s3:GetBucketLocation", "s3:GetBucketRequestPayment", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::
bucket_name
/*", "arn:aws:s3:::bucket_name
" ], "Effect": "Allow" } ] } -
選擇 Next (下一步)。
注意
您可以隨時切換視覺化與 JSON 編輯器選項。不過,如果您進行變更或在視覺化編輯器中選擇下一步,IAM 就可能會調整您的政策結構,以便針對視覺化編輯器進行最佳化。如需詳細資訊,請參閱 IAM 使用者指南中的調整政策結構。
-
在檢視與建立頁面上,為您正在建立的政策輸入政策名稱與描述 (選用)。檢視此政策中定義的許可,來查看您的政策所授予的許可。
-
選擇 Create policy (建立政策) 儲存您的新政策。
如果您使用 MediaPackage 從live-to-VOD況實播資產,則需要可讓您在 Amazon S3 中執行這些動作的政策:
-
PutObject
:MediaPackage 可以將 VOD 資產儲存在儲存貯體中。 -
GetBucketLocation
:MediaPackage 可以擷取儲存貯體的區域。儲存貯體必須與 MediaPackage VOD 資源位於相同的 AWS 區域。
如果您也使用 MediaPackage 進行 VOD 資產交付,請將這些動作新增至政策: GetObject
和 GetBucketRequestPayment
。如需 VOD 工作流程所需政策的詳細資訊,請參閱VOD 工作流程的 Amazon S3 存取政策。
若要使用 JSON 政策編輯器來建立政策
登入 AWS Management Console ,並在 https://https://console.aws.amazon.com/iam/
開啟 IAM 主控台。 -
在左側的導覽窗格中,選擇 Policies (政策)。
如果這是您第一次選擇 Policies (政策),將會顯示 Welcome to Managed Policies (歡迎使用受管政策) 頁面。選擇 Get Started (開始使用)。
-
在頁面頂端,選擇 Create policy (建立政策)。
-
在政策編輯器中,選擇 JSON 選項。
-
輸入下列 JSON 政策文件:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:PutObject", "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::
bucket_name
/*", "arn:aws:s3:::bucket_name
" ], "Effect": "Allow" } ] } -
選擇 Next (下一步)。
注意
您可以隨時切換視覺化與 JSON 編輯器選項。不過,如果您進行變更或在視覺化編輯器中選擇下一步,IAM 就可能會調整您的政策結構,以便針對視覺化編輯器進行最佳化。如需詳細資訊,請參閱 IAM 使用者指南中的調整政策結構。
-
在檢視與建立頁面上,為您正在建立的政策輸入政策名稱與描述 (選用)。檢視此政策中定義的許可,來查看您的政策所授予的許可。
-
選擇 Create policy (建立政策) 儲存您的新政策。
如果您使用內容交付網路 (CDN) 授權標頭來限制對 MediaPackage 中端點的存取,則需要可讓您在 Secrets Manager 中執行這些動作的政策:
-
GetSecretValue
- MediaPackage 可以從秘密版本擷取加密的授權碼。 -
DescribeSecret
- MediaPackage 可以擷取秘密的詳細資訊,不包括加密的欄位。 -
ListSecrets
- MediaPackage 可以擷取帳戶中的 AWS 秘密清單。 -
ListSecretVersionIds
:MediaPackage 可以擷取連接至指定秘密的所有版本。
注意
對於存放在 Secrets Manager 中的每個秘密,您不需要單獨的政策。如果您建立的政策與下列程序中描述的政策類似,MediaPackage 可以存取您帳戶中在此區域的所有秘密。
若要使用 JSON 政策編輯器來建立政策
登入 AWS Management Console ,並在 https://https://console.aws.amazon.com/iam/
開啟 IAM 主控台。 -
在左側的導覽窗格中,選擇 Policies (政策)。
如果這是您第一次選擇 Policies (政策),將會顯示 Welcome to Managed Policies (歡迎使用受管政策) 頁面。選擇 Get Started (開始使用)。
-
在頁面頂端,選擇 Create policy (建立政策)。
-
在政策編輯器中,選擇 JSON 選項。
-
輸入下列 JSON 政策文件:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecrets", "secretsmanager:ListSecretVersionIds" ], "Resource": [ "arn:aws:secretsmanager:
region
:account-id
:secret:secret-name
" ] }, { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole" ], "Resource": "arn:aws:iam::account-id
:role/role-name
" } ] } -
選擇 Next (下一步)。
注意
您可以隨時切換視覺化與 JSON 編輯器選項。不過,如果您進行變更或在視覺化編輯器中選擇下一步,IAM 就可能會調整您的政策結構,以便針對視覺化編輯器進行最佳化。如需詳細資訊,請參閱 IAM 使用者指南中的調整政策結構。
-
在檢視與建立頁面上,為您正在建立的政策輸入政策名稱與描述 (選用)。檢視此政策中定義的許可,來查看您的政策所授予的許可。
-
選擇 Create policy (建立政策) 儲存您的新政策。
步驟 2:建立角色
IAM 角色是您可以在帳戶中建立的另一種 IAM 身分,具有特定的許可。IAM 角色類似於 IAM 使用者,因為它是具有許可政策的 AWS 身分,可決定身分在其中可以和不可以執行的動作 AWS。但是,角色的目的是讓需要它的任何人可代入,而不是單獨地與某個人員關聯。此外,角色沒有與之關聯的標準長期憑證,例如密碼或存取金鑰。反之,當您擔任角色時,其會為您的角色工作階段提供臨時安全性憑證。建立從 Amazon S3 擷取來源內容時 AWS Elemental MediaPackage 擔任的角色。
當您建立角色時,您可以選擇 Amazon Elastic Compute Cloud (Amazon EC2) 作為可擔任角色的受信任實體,因為 MediaPackage 無法選取。在 中步驟 3:修改信任關係,您將信任的實體變更為 MediaPackage。
如需建立服務角色的相關資訊,請參閱《IAM 使用者指南》中的建立角色以委派許可給 AWS 服務。
步驟 3:修改信任關係
信任關係會定義可擔任您在 步驟 2:建立角色 中建立之角色的實體。當您建立角色並建立信任關係時,您會選擇 Amazon EC2 做為信任實體。修改角色,讓信任的關係位於 AWS 您的帳戶與 之間 AWS Elemental MediaPackage。
變更與 MediaPackage 的信任關係
-
存取您在 步驟 2:建立角色 中建立的角色。
如果您尚未顯示角色,請在 IAM 主控台的導覽窗格中選擇角色。搜尋並選擇您建立的角色。
-
在角色的 Summary (摘要) 頁面上,選擇 Trust relationships (信任關係)。
-
選擇編輯信任關係。
-
在 Edit Trust Relationship (編輯信任關係) 頁面上,於 Policy Document (政策文件) 中,將
ec2.amazonaws.com
變更為mediapackage.amazonaws.com
。政策文件現在看起來應如下:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "mediapackage.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
如果您在選擇加入的區域中使用 MediaPackage 和相關服務,則該區域必須列在政策文件的
Service
區段中。例如,如果您在亞太區域 (墨爾本) 區域使用 服務,政策文件如下所示:{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "mediapackage.amazonaws.com","mediapackage.ap-southeast-4.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
選擇 Update Trust Policy (更新信任政策)。
-
在 Summary (摘要) 頁面上,記下 Role ARN (角色 ARN) 的值。當您為隨選影片 (VOD) 工作流程擷取來源內容時,您會使用此 ARN。ARN 看起來像這樣:
arn:aws:iam::
111122223333
:role/role-name
在此範例中,
111122223333
是 AWS 您的帳戶號碼。