モバイルクライアントまたは Web クライアントで Intelligent Media Services (IMS) にアクセスする場合、Security Token Service (STS) を使用して一時的なアクセス権限を付与できます。これにより、Resource Access Management (RAM) ユーザーの AccessKey ペアの漏洩によるセキュリティリスクを効果的に防止できます。このトピックでは、STS を使用して IMS への一時的なアクセス権限を付与する方法について説明します。
背景情報
RAM ユーザーの AccessKey ペアは、有効化されると永続的に有効です。AccessKey ペアが漏洩すると、セキュリティリスクが発生する可能性があります。STS を使用して一時的なアクセス権限を付与することを推奨します。一時的な AccessKey ペアの有効期間をカスタマイズし、比較的複雑なポリシーを指定して異なる RAM ロールの権限を制限し、最小権限の原則 (PoLP) を遵守することで、サービスアクセスのセキュリティを向上させることができます。
ステップ 1:RAM ユーザーを作成し、AssumeRole 操作の呼び出し権限を付与する
Alibaba Cloud アカウントまたは RAM 管理者として、RAM コンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。
[ユーザー] ページで、[ユーザーの作成] をクリックします。

[ユーザーの作成] ページの [ユーザーアカウント情報] セクションで、ユーザーの基本情報を設定します。
[ログイン名]:英字、数字、ピリオド (.)、ハイフン (-)、アンダースコア (_) を含む名前を入力します。名前の長さは 64 文字までです。
[表示名]:最大 128 文字の名前を入力します。
[タグ]:鉛筆アイコンをクリックし、タグキーと値を入力します。RAM ユーザーにタグをアタッチして、タグでユーザーを管理します。
説明[ユーザーの追加] をクリックすると、複数の RAM ユーザーをバッチで作成できます。
[アクセスモード] を選択し、対応するパラメーターを設定します。
[OK] をクリックし、セキュリティ検証を完了します。RAM ユーザーの AccessKey ペアが自動的に生成されます。

[操作] 列の [コピー] をクリックし、コピーした AccessKey ID と AccessKey Secret を含むユーザー情報を保存します。
重要AccessKey ペアは安全に保管してください。AccessKey Secret は RAM ユーザーの作成時にのみ表示されます。作成ページを閉じると、AccessKey Secret を表示することはできません。
[ユーザー] ページで、作成した RAM ユーザーを見つけ、[操作] 列の [権限の追加] をクリックします。
[権限の付与] パネルで、RAM ユーザーに権限を付与します。
権限付与の範囲を選択します。
[リソース範囲] パラメーターを [アカウント] に設定します。IMS はリソースグループ範囲をサポートしていません。詳細については、「リソースディレクトリ、リソースグループ、タグサービスの相違点と関係」をご参照ください。
プリンシパルを指定します。
プリンシパルは、権限を付与する RAM ユーザーです。
アクセスポリシーを選択します。
[システムポリシー] を選択し、AliyunSTS と入力してから、[AliyunSTSAssumeRoleAccess] ポリシーを選択します。
[OK] をクリックして権限付与を完了します。
ステップ 2:RAM ロールを作成し、IMS リソースの操作権限を付与する
管理権限を持つ RAM ユーザーとして RAM コンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。
[ロール] ページで、[ロールの作成] をクリックします。

[ロールの作成] ページで、[プリンシパルタイプ] パラメーターを [クラウドアカウント] に設定し、Alibaba Cloud アカウントを指定してから [OK] をクリックします。

[現在のアカウント]:ご自身の Alibaba Cloud アカウントに属する RAM ユーザーまたは RAM ロールにこの RAM ロールを引き受けさせる場合は、[現在のアカウント] を選択します。
他のアカウント: 別の Alibaba Cloud アカウントに属する RAM ユーザーまたは RAM ロールが RAM ロールを偽装する場合は、[他のアカウント] を選択し、Alibaba Cloud アカウントの ID を入力します。このオプションは、異なる Alibaba Cloud アカウントに属するリソースに権限を付与するために提供されています。詳細については、「RAM ロールを使用して Alibaba Cloud アカウント間でアクセスを委任する」をご参照ください。Alibaba Cloud アカウントの ID は、[セキュリティ設定] ページで確認できます。
任意。信頼された Alibaba Cloud アカウントに属する特定の RAM ユーザーまたは RAM ロールのみにこの RAM ロールを引き受けさせる場合は、[ポリシーエディターに切り替え] をクリックし、エディターで RAM ロールの信頼ポリシーを変更します。
エディターは、ビジュアルエディターと JSON モードをサポートしています。以下の例では、ID が 100******0719 の Alibaba Cloud アカウント内の RAM ユーザー
Aliceのみがこの RAM ロールを引き受けることができます。ビジュアルエディター
[プリンシパル] 要素に RAM ユーザーを指定します。


JSON
PrincipalパラメーターのRAMフィールドに RAM ユーザーを指定します。{ "Version": "1", "Statement": [ { "Effect": "Allow", "Principal": { "RAM": "acs:ram::100******0719:user/Alice" }, "Action": "sts:AssumeRole" } ] }
[権限の付与] パネルで、RAM ロールに権限を付与します。
権限付与の範囲を設定します。
[リソース範囲] パラメーターを [アカウント] に設定します。IMS では、[リソース範囲] パラメーターを [リソースグループ] に設定することはできません。リソースグループの詳細については、「リソースディレクトリ、リソースグループ、タグサービスの相違点と関係」をご参照ください。
プリンシパルを指定します。
プリンシパルは、権限が付与される RAM ロールです。デフォルトでは、現在の RAM ロールが指定されます。別の RAM ロールを指定することもできます。
[ポリシー] セクションでポリシーを選択します。
システムポリシーの使用
ドロップダウンリストから [システムポリシー] を選択し、検索ボックスに AliyunICE と入力してから、ビジネス要件に基づいてシステムポリシーを選択します。
ポリシー
説明
API 操作
AliyunICEFullAccess
すべての IMS リソースを管理および操作する権限
このポリシーは、IMS のすべての操作に対する権限を付与します。
AliyunICEReadOnlyAccess
すべての IMS リソースに対する読み取り専用権限
このポリシーは、Get、Describe、Search、List 操作など、IMS のすべての読み取り専用操作に対する権限を付与します。
カスタムポリシーの使用
ドロップダウンリストから [カスタムポリシー] を選択し、ビジネス要件に基づいてカスタムポリシーを選択します。利用可能なカスタムポリシーがない場合は、作成できます。詳細については、「カスタムポリシーの作成」またはこのトピックの「カスタムポリシーのサンプル」セクションをご参照ください。
説明一度に最大 5 つのポリシーを RAM ユーザーにアタッチできます。5 つ以上のポリシーを RAM ユーザーにアタッチする場合は、操作を繰り返してください。
リスクを管理するために、最小権限の原則を遵守することを推奨します。
IMS SDK for iOS または Android を使用する場合、ビジネス要件に応じて
AliyunOSSFullAccessポリシーまたはカスタムの Object Storage Service (OSS) ポリシーを指定する必要があります。これは、SDK がファイルを OSS にアップロードする必要があるためです。
[OK] をクリックして権限付与を完了します。
ステップ 3:RAM ユーザーを使用して AssumeRole を呼び出し、一時的な AccessKey ペアを取得する
STS SDK をダウンロードして統合します。詳細については、「STS SDK の概要」をご参照ください。
AssumeRole API を呼び出して、ロールの一時的な ID 認証情報を取得します。
このトピックでは、Java コードの例を示します。他の言語のサンプルコードについては、「SDK サンプルコード」をご参照ください。