このトピックでは、Resource Access Management (RAM) ロールを使用して、自社アカウント内のリソースへのアクセスを、信頼できる第三者の Alibaba Cloud アカウントに委任する方法について説明します。
シナリオ
A 社が、自社の Alibaba Cloud アカウント内のリソースを管理するアクセス権限を B 社に付与したいとします。これらのリソースには、Elastic Compute Service (ECS) インスタンス、ApsaraDB RDS インスタンス、Object Storage Service (OSS) バケットが含まれます。
このシナリオでは、A 社がリソースを所有する「信頼する側のアカウント」であり、B 社がリソースにアクセスする第三者の「信頼される側のアカウント」です。以下の目的を達成したいと考えています。
AccessKey ペアのような長期的な認証情報を共有することなく、リソースの運用保守 (O&M) を B 社に委任する。
B 社が、自社のどの従業員またはアプリケーションがお客様のリソースにアクセスできるかを管理できるようにする。これにより、お客様は B 社の個々のユーザーアクセスを管理する必要がなくなります。
契約終了時など、いつでも B 社のアクセスを取り消す機能を保持する。
ソリューション
お客様のアカウント (A 社アカウント、A@company-a.onaliyun.com) で RAM ロールを作成し、B 社のアカウント (B 社アカウント、B@company-b.onaliyun.com) との信頼関係を確立することで、これを実現できます。このロールは、B 社が持つ特定の権限を定義します。その後、B 社は自社の RAM ユーザーにこのロールを引き受ける権限を付与できます。B 社のユーザーがロールを引き受けると、一時的なセキュリティ認証情報を受け取り、お客様のアカウント内のリソースへのアクセス権が付与されます。
このプロセスは、主に 2 つの部分で構成されています。
クロスアカウントアクセスの設定:まず、お客様のアカウント (A 社) で RAM ロールを作成し、必要な権限を付与します。次に、B 社の管理者が自社の RAM ユーザーにそのロールを引き受ける権限を付与します。
詳細については、「Alibaba Cloud アカウント間での権限付与」をご参照ください。
クロスアカウントアクセスの取り消し:提携が終了した場合、ロールを削除するか、その信頼ポリシーを変更することで、B 社のアクセスを簡単に取り消すことができます。
詳細については、「Alibaba Cloud アカウント間での権限の取り消し」をご参照ください。
Alibaba Cloud アカウント間で権限を付与する
パート 1:信頼する側のアカウント (A 社) での操作手順
B 社アカウントを信頼する RAM ロールを作成します。
A 社アカウントで RAM コンソール にログインします。
[ロール] ページで、RAM ロールを作成します。
[プリンシパルタイプ] を [クラウドアカウント] に、[プリンシパル名] を [他のアカウント] に設定します。 次に、アカウント B の UID を入力します。 詳細については、「信頼できる Alibaba Cloud アカウントの RAM ロールを作成する」および「Alibaba Cloud の UID を表示する」をご参照ください。

RAM ロールにアクセス権限を付与します。
[ロール] ページまたは [権限付与] ページで、1 つ以上のシステムポリシーまたはカスタムポリシーを RAM ロールにアタッチします。最小権限の原則に従い、必要な権限のみを付与します。たとえば、RAM ロールに ECS インスタンスの管理を許可するには、AliyunECSFullAccess システムポリシーをロールにアタッチできます。詳細については、「RAMロールに権限を付与する」をご参照ください。
パート 2:信頼される側のアカウント (B 社) での操作手順
RAM ユーザーを作成します。
B 社アカウントで RAM コンソール にログインします。
[ユーザー] ページで、会社 A のリソースにアクセスする従業員用の RAM ユーザーを作成します。
詳細については、「RAM ユーザーの作成」をご参照ください。
RAM ユーザーにロールを引き受ける権限を付与します。
[ユーザー] ページまたは [許可] ページで、RAM ユーザーに [AliyunSTSAssumeRoleAccess] システムポリシーをアタッチします。 詳細については、「RAM ユーザーに権限を付与する」をご参照ください。
パート 3:リソースへのアクセス
次のいずれかの方法を使用してロールを引き受け、A 社アカウント内の承認済みリソースにアクセスします。
RAM ユーザーは、ユーザー名とパスワードを使用してコンソールにログオンし、コンソールの右上隅にあるプロファイル画像にポインターを合わせ、[ID の切り替え] をクリックします。その後、アカウント A の詳細とロール名を入力して、クロスアカウントロールに切り替えることができます。
RAM ユーザーは AccessKey ペアを使用して、AssumeRole API 操作を呼び出します。この操作は、A 社アカウント内のリソースへの API 呼び出しに使用できる Security Token Service (STS) トークンを返します。
Alibaba Cloud アカウント間で権限を取り消す
A 社アカウントの管理者として、いつでも次のいずれかの方法で B 社のアクセスを取り消すことができます。
RAM ロールの信頼ポリシーの変更
A 社アカウントで RAM コンソール にログインします。
[ロール] ページで、ロールの信頼ポリシーを変更します。
ポリシードキュメントの
Principal要素から B 社アカウントの UID を削除します。これにより、B 社のユーザーがこのロールを引き受けることが即座にできなくなります。詳細については、「RAM ロールの信頼ポリシーを編集する」をご参照ください。
RAM ロールの削除
A 社アカウントで RAM コンソール にログインします。
[ロール] ページで、RAM ロールを削除します。
ロールを削除すると、アタッチされているポリシーも削除され、B 社のアクセスは永久に取り消されます。詳細については、「RAM ロールを削除する」をご参照ください。