Intelligent Media Management (IMM) でプロジェクトを作成する際は、プロジェクトのサービスロールを指定する必要があります。サービスロールにより、IMM はオブジェクトストレージサービス (OSS) などの他のクラウドサービスのリソースにアクセスできます。このトピックでは、サービスロールを作成し、IMM にサービスロールを引き受ける権限を付与する方法について説明します。
サービスロールを作成する場合、プロジェクトを作成する場合、またはプロジェクトのサービスロールを変更する場合は、サービスロールのすべての権限を持っている必要があります。そうでない場合、権限が不十分なため操作は失敗します。
サービスロールを作成して承認を完了する
サービスロールをアタッチする
IMM にデフォルトのサービスロールを引き受ける権限を付与します。
クラウドリソースアクセス承認 ページで、AliyunIMMDefaultRole サービスロールの詳細を表示し、承認ポリシーの確認 をクリックします。
サービスロールを作成した後、RAM コンソール でサービスロールに権限を付与できます。
AliyunIMMDefaultRole サービスロールは、OSS に対する高レベルの権限を持っています。Alibaba Cloud アカウント内の RAM ユーザーが IMM プロジェクトを作成または更新する権限を持っている場合、AliyunIMMDefaultRole ロールを RAM ユーザーに関連付け、メタデータインデックスを使用して、RAM ユーザーとして OSS バケット内のオブジェクトを一覧表示または分析できます。よりきめ細かい権限制御については、カスタムサービスロールを作成する を参照してください。
カスタムサービスロールを作成する
RAM コンソール でサービスロールを作成し、サービスロールに権限を付与できます。詳細については、サービスにリンクされたロールを作成する を参照してください。
ロールの作成ウィザードのロールタイプの選択ステップで、信頼できるエンティティタイプとして Alibaba Cloud サービス を選択します。
RAM ロール名 フィールドに名前を入力し、標準サービスロール を ロールタイプ に選択し、Intelligent Media Management を 信頼できるサービスの選択 ドロップダウンリストから選択します。
OK をクリックします。サービスロールが作成されます。
サービスロールに権限を付与します。この時点では、サービスロールには権限がありません。少なくとも OSS およびメッセージサービスに関連する権限を付与する必要があります。
ポリシーを作成し、ポリシーに JSON 権限データを指定できます。
次のサンプルポリシーは、my-bucket という名前の OSS バケットへのアクセスのみを許可します。サンプルポリシーを使用する場合は、「my-bucket」をバケット名に置き換えてください。
{ "Version": "1", "Statement": [ { // OSSバケットへのアクセスを許可するアクション "Action": [ "oss:Get*", "oss:List*", "oss:PutBucketLifecycle", "oss:PutBucketNotification", "oss:DeleteBucketNotification", "oss:PutBucketAcl", "oss:PutObjectAcl", "oss:CopyObject", "oss:AppendObject", "oss:PutSymlink", "oss:PutObject", "oss:StartEventRecord", "oss:StopEventRecord", "oss:GetEventRecordStatus" ], // アクセスを許可するリソース "Resource": "acs:oss:*:*:my-bucket/*", "Effect": "Allow" }, { // メッセージサービスへのアクセスを許可するアクション "Action":"mns:*", "Resource": "*", "Effect": "Allow" }, { // ロールを引き受けることを許可するアクション "Action": "ram:PassRole", "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { // IMMサービスからのロール引き受けのみを許可する条件 "acs:Service": "imm.aliyuncs.com" } } } ] }
ポリシーをサービスロールにアタッチします。詳細については、RAM ロールに権限を付与する を参照してください。
サービスロールを使用する
プロジェクトの作成パネルの [サービスロール] フィールドの横にある更新アイコンをクリックします。作成したサービスロールを選択します。
(オプション)サービスロールの権限を変更する
RAM コンソール でサービスロールの権限を変更できます。詳細については、RAM ロールに権限を付与する を参照してください。
権限不足による IMM 操作の失敗を防ぐため、サービスロールが少なくとも OSS および MNS に対する権限を持っていることを確認してください。