すべてのプロダクト
Search
ドキュメントセンター

Intelligent Media Management:ライブトランスコードのカスタム権限構成

最終更新日:May 01, 2025

システム権限ポリシーが要件を満たせない場合は、カスタムポリシーを作成して最小権限の原則を実装できます。カスタムポリシーは、きめ細かい権限管理を実現し、リソースアクセスセキュリティを効果的に向上させるのに役立ちます。このトピックでは、Intelligent Media Management(IMM)のライブトランスコード機能のカスタムポリシーのシナリオと例について説明します。

サービスロールへのカスタム権限の付与

IMM プロジェクトを作成するときは、プロジェクトのサービスロールを指定して、IMM がそのロールを偽装して Object Storage Service(OSS)などの他の Alibaba Cloud サービスの承認済みリソースにアクセスできるようにする必要があります。

サービスロールの作成

  1. 標準サービスロールを作成します。詳細については、「標準サービスロールを作成する」をご参照ください。

  2. カスタムポリシーを作成します。詳細については、「カスタムポリシーを作成する」をご参照ください。

    IMM のライブトランスコードを使用するには、サービスロールに次の権限を付与する必要があります。

    • OSS バケットの読み取りおよび書き込み権限。ライブトランスコードを使用する場合、システムは OSS バケットからソースファイルを読み取り、トランスコードされたファイルをそこに保存する必要があります。

    • IMM がサービスロールを偽装して OSS などの他の Alibaba Cloud サービスの承認済みリソースにアクセスできるようにするために使用される権限。

  3. サービスロールに権限を付与します。詳細については、「RAM ロールに権限を付与する」をご参照ください。

サンプルポリシー

特定の OSS バケットに対する読み取りおよび書き込み権限を付与する

次の RAM ポリシーは、my-bucket という名前のバケットに対する読み取りおよび書き込み権限をサービスロールに付与するために使用されます。

パラメーターの説明

OSS の Resource フィールドは、acs:oss:*:*:<BucketName>/* 形式です。パラメーターを実際のリソース名に置き換えてください。

パラメーター

説明

BucketName

OSS バケットの名前。OSS コンソール[バケット] ページで名前を確認できます。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "oss:GetObject",
                "oss:PutObject"
            ],
            "Resource": "acs:oss:*:*:my-bucket/*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:PassRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "acs:Service": "imm.aliyuncs.com"
                }
            }
        }
    ]
}

RAM ユーザーへのカスタム権限の付与

RAM は、異なる権限を持つ RAM ユーザーを作成することにより、永続的な権限制御メカニズムを提供します。 RAM ユーザーの AccessKey ペアが漏洩した場合、限られた情報のみが潜在的に公開されます。

RAM ユーザーを作成し、権限を付与する

  1. RAM ユーザーを作成します。詳細については、「RAM ユーザーを作成する」をご参照ください。

  2. カスタムポリシーを作成します。詳細については、「カスタムポリシーを作成する」をご参照ください。

    イメージを処理するには、RAM ユーザーに次の権限を付与する必要があります。

    • ライブトランスコードに関連する API 操作を呼び出す権限。

    • OSS オブジェクトを読み取り、IMM を使用してオブジェクトを処理する権限。

  3. RAM ユーザーに権限を付与します。詳細については、「RAM ユーザーに権限を付与する」をご参照ください。

サンプルポリシー

特定のプロジェクトでライブトランスコードに関連する API 操作を呼び出し、特定のバケット内のオブジェクトを IMM を使用して処理する権限を付与する

次の RAM ポリシーは、中国(上海)リージョンの image-process-project プロジェクトで GenerateVideoPlaylist および LiveTranscoding 操作を呼び出し、my-bucket という名前のバケット内のオブジェクトを IMM を使用して処理する権限を RAM ユーザーに付与するために使用されます。

重要

ライブトランスコードは、OSS バケットにバインドされた IMM プロジェクトを使用して実装されます。したがって、RAM ユーザーにバインドされたプロジェクトに関連する API 操作を呼び出す権限を付与する必要があります。

パラメーターの説明

OSS の Resource フィールドは、acs:oss:*:*:<BucketName>/* 形式です。パラメーターを実際のリソース名に置き換えてください。

パラメーター

説明

BucketName

OSS バケットの名前。OSS コンソール[バケット] ページで名前を確認できます。

IMM の Resource フィールドは、acs:imm:<RegionId>:<UID>:project/<ProjectName> 形式です。パラメーターを実際のリソース名に置き換えてください。

パラメーター

説明

RegionId

リージョン ID。例:cn-shanghaicn-beijing。「エンドポイント」トピックで、各リージョンに対応する ID を確認できます。

UID

アカウント ID。アカウントセンター[概要] ページで ID を確認できます。

ProjectName

プロジェクトの作成時に指定したプロジェクト名。IMM コンソールで名前を確認できます。

Simple Message Queue(SMQ、旧称 MNS)の Resource フィールドは、acs:mns:<RegionId>:<UID>:/queues/<QueueName>/messages 形式です。パラメーターを実際のリソース名に置き換えてください。

パラメーター

説明

RegionId

リージョン ID。例:cn-shanghaicn-beijing。「エンドポイント」トピックで、各リージョンに対応する ID を確認できます。

UID

アカウント ID。アカウントセンター[概要] ページで ID を確認できます。

QueueName

SMQ キューの名前。SMQ コンソール[キュー] ページで名前を確認できます。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "oss:GetObject",
                "oss:PostProcessTask",
                "oss:ProcessImm"
            ],
            "Resource": "acs:oss:*:*:my-bucket/*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "imm:GenerateVideoPlaylist",
                "imm:LiveTranscoding"
            ],
            "Resource": "acs:imm:cn-shanghai:150910xxxxxxxxxx:project/video-process-project",
            "Effect": "Allow"
        }
    ]
}