控制對 Elastic Transcoder 的訪問 - Amazon Elastic Transcoder

節省成本並獲得更多功能 AWS Elemental MediaConvert

MediaConvert 是一項較新的檔案型視訊轉碼服務,提供全方位的進階轉碼功能,按需費率從每分鐘 $0.0075 起。閱讀更多

已經使用 Amazon Elastic Transcoder? 遷移到 MediaConvert. 如需詳細資訊,請參閱此概觀,其中包含有關移轉程序的重要資訊以及其他資源的連結。

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

控制對 Elastic Transcoder 的訪問

Amazon Elastic Transcoder 允許您使用 AWS Identity and Access Management (IAM)來控制用戶可以使用 Elastic Transcoder 執行的操作,並控制 Elastic Transcoder 對彈性轉碼器需要的其他 AWS 服務的訪問。您可以使用IAM原則來控制存取,原則是可與使用IAM者、IAM群組或角色相關聯的權限集合。

控制對 Elastic Transcoder 的訪問

若要提供存取權,請新增權限至您的使用者、群組或角色:

  • 使用者和群組位於 AWS IAM Identity Center:

    建立權限合集。請按照 AWS IAM Identity Center 使用者指南 中的 建立權限合集 說明進行操作。

  • IAM透過身分識別提供者管理的使用者:

    建立聯合身分的角色。請遵循《使用指南》中的〈為第三方身分識別提供IAM者 (同盟) 建立角色〉中的指示進行。

  • IAM使用者:

    • 建立您的使用者可擔任的角色。請按照《用戶南》中的「為IAM用戶創建角色」中的IAM說明進行操作。

    • (不建議) 將政策直接附加至使用者,或將使用者新增至使用者群組。請遵循《使用指南》中的「向使用者 (主控台) 新增權限」IAM 中的示進行。

若要控制彈性轉碼器對其他 AWS 服務的存取,您可以建立服務角色。這些是您在創建管道時分配的IAM角色,並授予 Elastic Transcoder 本身執行與轉碼相關任務的權限。

若要建立 AWS 服務 (IAM控制台) 的角色
  1. 登入 AWS Management Console 並開啟IAM主控台,位於https://console.aws.amazon.com/iam/

  2. 在IAM主控台的導覽窗格中,選擇 [角色],然後選擇 [建立角色]。

  3. 對於 Trusted entity type (信任的實體類型),請選擇 AWS 服務

  4. 對於服務或使用案例,請選擇服務,然後選擇使用案例。服務會定義使用案例,以包含服務所需的信任政策。

  5. 選擇 Next (下一步)

  6. 對於權限原則,選項取決於您選取的使用案例:

    • 如果服務定義了角色的權限,您就無法選取權限原則。

    • 從一組有限的權限原則中進行選取。

    • 從所有權限原則中選取。

    • 選取 [無權限原則],建立角色後建立原則,然後將原則附加至角色。

  7. (選用) 設定許可界限。這是進階功能,可用於服務角色,而不是服務連結的角色。

    1. 開啟 [設定權限界限] 區段,然後選擇 [使用權限界限] 控制最大角色權限

      IAM包含您帳戶中受 AWS 管理和客戶管理的政策清單。

    2. 選取用於許可界限的政策。

  8. 選擇 Next (下一步)

  9. 對於角色名稱,選項取決於服務:

    • 如果服務定義了角色名稱,您就無法編輯角色名稱。

    • 如果服務定義了角色名稱的前置詞,您可以輸入選擇性的尾碼。

    • 如果服務未定義角色名稱,您可以命名角色。

      重要

      命名角色時,請注意下列事項:

      • 角色名稱在您的內部必須是唯一的 AWS 帳戶,並且不能根據大小寫使用唯一。

        例如,請勿建立同時命名為PRODROLE和的角色prodrole。當角色名稱用於策略中或作為一部分時ARN,角色名稱會區分大小寫,但是當主控台中的客戶 (例如在登入程序期間) 顯示角色名稱時,角色名稱不區分大小寫。

      • 您無法在建立角色之後編輯該角色的名稱,因為其他實體可能會參照該角色。

  10. (選擇性) 在說明中,輸入角色的說明。

  11. (選擇性) 若要編輯角色的使用案例和權限,請在步驟 1:選取信任的實體步驟 2:新增權限區段中,選擇編輯

  12. (選擇性) 若要協助識別、組織或搜尋角色,請將標籤新增為鍵值配對。若要取得有關在中使用標籤的更多資訊IAM,請參閱《使IAM用指南》中的標記IAM資源

  13. 檢閱角色,然後選擇 Create role (建立角色)。

作為在轉碼過程中使用者和服務角色如何重要的範例,Elastic Transcoder 需要一個服務角色,才能從 Amazon S3 儲存貯體取得檔案,並將轉碼檔案存放在另一個 Amazon S3 儲存貯體中,而使用者則需要一個可讓他們在 Elastic Transcoder 中建立任務的IAM角色。

若要取得有關的更多資訊IAM,請參閱IAM使用者指南。如需服務角色的詳細資訊,請參閱建立 AWS 服務的角色。

Elastic Transcoder 的示例策略

若要允許使用者執行 EElastic Transcoder 管理功能,例如建立管線和執行中的工作,您必須具有可與使用者建立關聯的原則。本節說明如何建立原則,並顯示三個原則,用於控制 Elastic 轉碼器作業的存取,以及 Elastic Transcoder 所依賴之相關服務作業的存取。您可以將 AWS 帳戶的用戶授予所有 Elastic Transcoder 操作的訪問權限,也可以僅授予其中一個子集的訪問權限。

如需有關管理原則的詳細資訊,請參閱IAM使用指南中的管理IAM原則

使用JSON策略編輯器建立策略
  1. 登入 AWS Management Console 並開啟IAM主控台,位於https://console.aws.amazon.com/iam/

  2. 在左側的導覽窗格中,選擇 Policies (政策)

    如果這是您第一次選擇 Policies (政策),將會顯示 Welcome to Managed Policies (歡迎使用受管政策) 頁面。選擇 Get Started (開始使用)

  3. 在頁面頂端,選擇 Create policy (建立政策)

  4. 在 [原則編輯器] 區段中,選擇JSON選項。

  5. 輸入或貼上JSON策略文件。如需有關IAM策略語言的詳細資訊,請參閱IAMJSON政策參考

  6. 解決政策驗證期間產生的任何安全性警告、錯誤或一般性警告,然後選擇 Next (下一步)。

    注意

    您可以隨時在視覺JSON編輯器選項之間切換。不過,如果您在視覺化編輯器中進行變更或選擇 [下一步],IAM可能會重新架構您的原則,以針對視覺化編輯器最佳化原則。如需詳細資訊,請參閱《IAM使用指南》中的「策略重新架構」。

  7. (選擇性) 在中建立或編輯策略時 AWS Management Console,您可以產生可在 AWS CloudFormation 範本中使用的JSON或YAML原則範本。

    若要這麼做,請在 [原則編輯器] 中選擇 [動作],然後選擇 [產生 CloudFormation範本]。若要進一步了解 AWS CloudFormation,請參閱《AWS CloudFormation 使用指南》中的AWS Identity and Access Management 資源類型參考

  8. 將許可新增至政策後,請選擇下一步

  9. 檢視與建立頁面上,為您在建立的政策輸入政策名稱描述 (選用)。檢視此政策中定義的許可,來查看您的政策所授予的許可。

  10. (選用) 藉由連接標籤作為鍵值組,將中繼資料新增至政策。若要取得有關在中使用標籤的更多資訊IAM,請參閱《使IAM用指南》中的標記IAM資源

  11. 選擇 Create policy (建立政策) 儲存您的新政策。

授予 Elastic Transcoder 和 Amazon S3 的只讀訪問權限

下列政策授予 Elastic Transcoder 資源的唯讀存取權,以及 Amazon S3 清單操作的存取權。此政策對於尋找和監看已轉碼檔案的權限,以及查看IAM帳戶可用的值區,但不需要更新、建立或刪除資源或檔案的權限非常有用。此原則也允許列出IAM帳戶的所有可用管道、預設集和工作。若要限制對特定儲存貯體的存取,請參閱 限制對某些資源的訪問

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "elastictranscoder:Read*", "elastictranscoder:List*", "s3:List*" ], "Resource": "*" } ] }

授予建立工作的權限

下列政策授予列出和取得與帳戶相關聯的所有 Elastic Transcoder 資源、建立或修改任務和預設,以及使用 Amazon S3 和 Amazon 清單操作的許可。SNS

此原則對於修改轉碼設定以及建立或刪除預設集或工作的功能非常有用。它不允許建立、更新或刪除管道、Amazon S3 儲存貯體或 Amazon SNS 通知。

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "elastictranscoder:Read*", "elastictranscoder:List*", "elastictranscoder:*Job", "elastictranscoder:*Preset", "s3:List*", "sns:List*" ], "Resource": "*" } ] }

具有可控訪問的 Elastic Transcoder 操作

以下是 Elastic Transcoder 操作的完整列表。

elastictranscoder:CancelJob elastictranscoder:CreateJob elastictranscoder:CreatePipeline elastictranscoder:CreatePreset elastictranscoder:DeletePipeline elastictranscoder:DeletePreset elastictranscoder:ListJobsByPipeline elastictranscoder:ListJobsByStatus elastictranscoder:ListPipelines elastictranscoder:ListPresets elastictranscoder:ReadJob elastictranscoder:ReadPipeline elastictranscoder:ReadPreset elastictranscoder:TestRole elastictranscoder:UpdatePipeline elastictranscoder:UpdatePipelineNotifications elastictranscoder:UpdatePipelineStatus

限制對某些資源的訪問

除了限制對操作 (動作) 的存取,您可以進一步限制對特定任務、管道和預設集的存取 (這稱為授予資源層級許可)。

若要限制或授與 Elastic Transcoder 資源子集的存取權,請將資源ARN的資源放在策略的資源元素中。Elastic Transcoder ARNs 具有以下通用格式:

arn:aws:elastictranscoder:region:account:resource/ID

更換 region, account, resourceID 具有有效值的變量。有效值如下:

  • region:區域的名稱。可在此處取得區域清單。若要指示所有區域,請使用萬用字元 (*)。您必須指定一個數值。

  • account:帳戶的識別 AWS 碼。您必須指定一個數值。

  • resource:Elastic Transcoder 資源的類型;presetpipeline、或。job

  • ID:特定預設集、管線或工作的 ID,或 * 表示與目前 AWS 帳戶相關聯之指定類型的所有資源。

例如,下列ARN指定帳號us-east-2區域中的所有預設資源111122223333

arn:aws:elastictranscoder:us-east-2:111122223333:preset/*

您可以按一下ARN管線、預設集或工作主控台頁面中資源名稱旁邊的放大鏡圖示 ( Magnifying glass icon with a plus sign, representing a search or zoom function. ) 來尋找資源的資源。

如需詳細資訊,請參閱IAM使用指南中的資源

限制資源的範例政策

下列政策授予 Amazon S3 amzn-s3-demo-bucket 中指定的儲存貯體的許可、列出和讀取 Elastic Transcoder 中所有項目的許可,以及在名為的管道中建立任務的權限。example_pipeline

對於需要能夠查看哪些檔案SDK和資源,以及使CLI用這些資源建立自己的轉碼工作的使用者,此原則非常有用。它不允許更新或刪除資源、建立任務以外的資源,或使用在這裡指定之資源以外的資源,且不適用於主控台使用者。

{ "Version":"2012-10-17", "Statement":[ { "Sid":"1", "Effect":"Allow", "Action":[ "s3:ListAllMyBuckets", "s3:GetBucketLocation", "s3:ListBucket", "s3:GetObject", "s3:PutObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Sid":"2", "Effect":"Allow", "Action":[ "elastictranscoder:List*", "elastictranscoder:Read*", "elastictranscoder:CreateJob" ], "Resource":[ "arn:aws:elastictranscoder:region:account:pipeline/example_pipeline", "arn:aws:elastictranscoder:region:account:job/*" ] } ] }

Elastic Transcoder 管線的服務角色

當您建立管理轉碼工作的管道時,必須指定IAM服務角色。IAM服務角色有一個策略,指定該管道用於轉碼的權限。

當您指定管道的角色時有兩個選項:

  • 使用預設角色,其中僅包含 Elastic Transcoder 轉碼所需的權限。如果您使用 EElastic Transcoder 控制台創建管道,則在創建第一個管道時,控制台將為您提供自動創建默認角色的選項。您必須具有管理權限才能建立IAM服務角色,包括預設角色。

  • 選擇現有角色。在這種情況下,您必須先前在中建立角色,IAM並將原則附加至角色,以便為 EElastic Transcoder 授予對檔案進行轉碼的足夠權限。如果您想要將角色用於其他 AWS 服務,這也很有用。

管道的預設IAM角色

Elastic Transcoder 創建的默認角色讓 Elastic Transcoder 執行以下操作:

  • 從 Amazon S3 儲存貯體取得檔案以進行轉碼。

  • 列出任何 Amazon S3 存儲桶的內容。

  • 將已轉碼的檔案儲存至 Amazon S3 儲存貯體。

  • 建立一個 Amazon S3 多部分上傳。

  • 將通知發佈到任何SNS主題。

此原則會防止 Elastic Transcoder 執行下列任何作業:

  • 執行任何 Amazon SNS 刪除操作,或在主題中新增或移除政策聲明。

  • 執行任何 Amazon S3 儲存貯體或項目刪除操作,或新增、移除或修改儲存貯體政策。

適用於預設角色的存取 (許可) 政策定義看起來如下:

{ "Version":"2012-10-17", "Statement":[ { "Sid":"1", "Effect":"Allow", "Action":[ "s3:Get*", "s3:ListBucket", "s3:Put*", "s3:*MultipartUpload*" ], "Resource":"*" }, { "Sid":"2", "Effect":"Allow", "Action":"sns:Publish", "Resource":"*" }, { "Sid":"3", "Effect":"Deny", "Action":[ "sns:*Permission*", "sns:*Delete*", "sns:*Remove*", "s3:*Policy*", "s3:*Delete*" ], "Resource":"*" } ] }

Elastic Transcoder 服務連結角色的支援區域

Elastic Transcoder 支援在下列地區使用服務連結角色。

區域名稱 區域身分 Elastic Transcoder 的 Support
美國東部 (維吉尼亞北部) us-east-1
美國東部 (俄亥俄) us-east-2
美國西部 (加利佛尼亞北部) us-west-1
美國西部 (奧勒岡) us-west-2
亞太區域 (孟買) ap-south-1
亞太區域 (大阪) ap-northeast-3
亞太區域 (首爾) ap-northeast-2
亞太區域 (新加坡) ap-southeast-1
亞太區域 (雪梨) ap-southeast-2
亞太區域 (東京) ap-northeast-1
加拿大 (中部) ca-central-1
歐洲 (法蘭克福) eu-central-1
歐洲 (愛爾蘭) eu-west-1
歐洲 (倫敦) eu-west-2
歐洲 (巴黎) eu-west-3
南美洲 (聖保羅) sa-east-1