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

Resource Access Management:RAMロールの概要

最終更新日:Oct 31, 2024

このトピックでは、Resource Access Management (RAM) ロールの定義、分類、シナリオ、および基本概念について説明します。 このトピックでは、RAMロールを使用するプロセスと制限についても説明します。

RAMロールとは何ですか?

RAMロールは、ポリシーをアタッチできる仮想IDです。 RAMロールには、ログインパスワードやAccessKeyペアなどの永続的なID資格情報はありません。 RAMロールは、信頼できるエンティティによってロールが引き受けられた後にのみ使用できます。 RAMロールが信頼できるエンティティによって引き受けられると、信頼できるエンティティはSecurity Token Service (STS) トークンを取得できます。 次に、信頼できるエンティティはSTSトークンを使用して、RAMロールとしてAlibaba Cloudリソースにアクセスできます。

RAMロールタイプ

RAMロールは、信頼できるエンティティに基づいて次のタイプに分類されます。

  • 信頼できるエンティティがAlibaba CloudアカウントであるRAMロール: Alibaba Cloudアカウント内のRAMユーザーは、このタイプのRAMロールを引き受けることができます。 このタイプのRAMロールを引き受けるRAMユーザーは、所有者のAlibaba Cloudアカウントまたは他のAlibaba Cloudアカウントに所属できます。 このタイプのRAMロールは、クロスアカウントアクセスと一時的な権限付与に使用されます。

  • 信頼できるエンティティがAlibaba CloudサービスであるRAMロール: Alibaba Cloudサービスは、このタイプのRAMロールを引き受けることができます。 信頼できるAlibaba Cloudサービスが引き受けることができるRAMロールは、通常のサービスロールとサービスにリンクされたロールの2種類に分類されます。 サービスにリンクされたロールの詳細については、「サービスにリンクされたロール」をご参照ください。 このタイプのRAMロールは、Alibaba Cloudサービス全体のアクセスを許可するために使用されます。

  • 信頼できるエンティティがIDプロバイダー (IdP) であるRAMロール: 信頼できるIdPのユーザーは、このタイプのRAMロールを引き受けることができます。 このタイプのRAMロールは、Alibaba Cloudと信頼できるIdP間でロールベースのシングルサインオン (SSO) を実装するために使用されます。

シナリオ

  • 一時アクセスの許可

    ほとんどの場合、AccessKeyペアのリークを防ぐために、サーバーでAPI操作を呼び出すことをお勧めします。 ただし、一部のシナリオでは、サーバーを使用したリソース転送によるオーバーヘッドを防ぐために、クライアントからファイルを直接アップロードすることをお勧めします。 この場合、サーバーはSTSトークンを発行でき、クライアントはSTSトークンを使用してリソースを直接転送できます。

    詳細については、「STSトークンを使用してモバイルアプリにAlibaba Cloudリソースへのアクセスを許可する」をご参照ください。

  • Alibaba Cloudアカウント全体に権限を付与

    たとえば、Alibaba CloudアカウントのアカウントAとアカウントBを所有しており、アカウントAにアカウントBの特定のリソースにアクセスさせたいとします。アカウントB内で信頼エンティティがアカウントaであるRAMロールを作成し、アカウントAに属するRAMユーザーまたはRAMロールに、信頼エンティティがアカウントaであるRAMロールを引き受ける権限を付与できます。信頼できるエンティティがアカウントAであるRAMロールを使用して、アカウントBの特定のリソースにアクセスできます。

    詳細については、「RAMロールを使用してAlibaba Cloudアカウント全体に権限を付与する」をご参照ください。

  • Alibaba Cloudサービス全体で権限を付与

    一部のシナリオでは、Alibaba Cloudサービスが他のサービスにアクセスし、特定の機能を使用する権限を取得する必要があります。 たとえば、ECS (Elastic Compute Service) およびApsaraDB RDSからリソースリストとログデータを取得するには、Cloud ConfigにECSおよびApsaraDB RDSのアクセス権限が必要です。 この場合、信頼できるエンティティがAlibaba CloudサービスであるRAMロールを作成できます。 サービスにリンクされたロールを使用することを推奨します。 サービスにリンクされたロールをサポートしていないAlibaba Cloudサービスの場合は、通常のサービスロールを使用します。

    詳細については、「サービスにリンクされたロールで動作するサービス」をご参照ください。

  • ロールベースSSOの実装

    Alibaba Cloudと企業のID管理システムが連携してロールベースSSOを実装する場合、Alibaba Cloudはサービスプロバイダー (SP) であり、ID管理システムはIdPです。 ロールベースSSOを使用すると、IdPからAlibaba Cloudにユーザーを同期する必要なく、ローカルIdPでユーザーを管理できます。 さらに、企業の従業員は、特定のRAMロールを使用してAlibaba Cloudにアクセスできます。 この場合、信頼できるエンティティがIdPであるRAMロールを作成できます。

    詳細については、「SAMLベースSSOの概要」および「OIDCベースSSOの概要」をご参照ください。

用語

期間

説明

信頼できるエンティティ

信頼できるエンティティは、ロールを引き受けることができるエンティティユーザーです。 ロールを作成するときは、信頼できるエンティティを指定する必要があります。 RAMロールは、信頼できるエンティティによってのみ引き受けることができます。 信頼できるエンティティは、Alibaba Cloudアカウント、Alibaba Cloudサービス、またはIdPです。

RAMロールのAlibaba Cloudリソース名 (ARN)

RAMロールのARNは、RAMロールのグローバルに一意のリソース識別子です。 ARNは、Alibaba CloudのARN命名規則に従います。 ARNは、acs:ram ::< account-id>:role/<role-name> 形式です。 <role-name> はRAMロールの名前を小文字で示します。 RAMロールのARNを表示する方法の詳細については、「RAMロールに関する情報の表示」をご参照ください。

policy

ポリシー構造と構文に基づいて記述される一連の権限。 ポリシーを使用して、権限が付与されたリソースセット、権限が付与された操作セット、および権限付与の条件を記述できます。 ポリシーは、一連の権限を記述する単純な言語仕様の一種です。 1つ以上のポリシーをRAMロールにアタッチできます。 ポリシーのないRAMロールは、Alibaba Cloudリソースにアクセスできません。

ロールの引き受け

RAMロールのSTSトークンを取得するためにエンティティによって使用されるメソッド。

RAM角色基本概念

  • Alibaba Cloud管理コンソールでRAMロールを想定する: エンティティユーザーがAlibaba Cloud管理コンソールにログインした後、エンティティユーザーはログインIDをRAMロールに切り替えることができます。

  • API操作を呼び出してRAMロールを想定する: エンティティユーザーは、AssumeRole操作を呼び出して、RAMロールのSTSトークンを取得できます。 その後、エンティティユーザーはSTSトークンを使用してAlibaba CloudサービスのAPI操作を呼び出すことができます。

IDの切り替えidentity switching

IDの切り替えは、エンティティユーザーがRAMコンソールでログオンIDからロールIDに切り替える方法です。 エンティティユーザーがRAMコンソールにログオンした後、エンティティユーザーは、エンティティユーザーが引き受けることができるRAMロールに切り替えることができます。 これにより、エンティティユーザーはRAMロールを使用してAlibaba Cloudリソースを管理できます。 エンティティユーザーがロールIDを必要としなくなった場合、RAMユーザーはログオンIDに切り替えることができます。

STSトークン

STSトークンは、RAMロールの一時的なAccessKeyペアです。 RAMロールには、特定のログインパスワードまたはAccessKeyペアはありません。 エンティティユーザーがRAMロールを使用する場合、エンティティユーザーはRAMロールを引き受けてロールトークンを取得する必要があります。 その後、エンティティユーザーはロールトークンを使用してAlibaba CloudサービスのAPI操作を呼び出すことができます。

手順

  1. Alibaba Cloudアカウントまたは管理者権限を持つRAMユーザーを使用して、RAMコンソールにログインします。

  2. RAM ロールを作成します。 詳細については、以下のトピックをご参照ください。

  3. RAMロールに権限を付与します。

    詳細については、「RAMロールへの権限の付与」をご参照ください。

  4. 信頼できるエンティティは、Alibaba Cloud管理コンソールで、または操作を呼び出すことによって、RAMロールのSTSトークンを取得できます。 詳細については、以下のトピックをご参照ください。

  5. 信頼できるエンティティは、RAMロールを引き受けて、特定のAlibaba Cloudリソースにアクセスします。

制限事項

RAMロールの使用制限の詳細については、「制限」をご参照ください。