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

ApsaraMQ for RabbitMQ:RAM users

最終更新日:Jul 10, 2026

Resource Access Management (RAM) を使用すると、RAM ユーザーを使用して権限を委任できます。ビジネスニーズに基づいて、RAM ユーザーにさまざまな権限を付与できます。これにより、Alibaba Cloud アカウントの AccessKey が漏洩することによって生じる可能性のあるセキュリティリスクを回避できます。

背景情報

A 社は ApsaraMQ for RabbitMQ サービスを有効にしました。同社では、従業員がインスタンス、Vhost、キュー、Exchange などの ApsaraMQ for RabbitMQ サービスのリソースを管理する必要があります。従業員は職務内容が異なるため、必要となる権限も異なります。A 社の要件は次のとおりです。

  • セキュリティや信頼性の理由から、同社は Alibaba Cloud アカウントの AccessKey を従業員と直接共有したくありません。代わりに、従業員ごとに個別のユーザーアカウントを作成したいと考えています。

  • ユーザーは、付与された権限の範囲内でのみリソースを管理できます。すべてのリソース使用量は、個々のユーザーアカウントではなく、同社の Alibaba Cloud アカウントに請求されます。

  • 同社は、いつでもユーザーの権限を取り消したり、ユーザーアカウントを削除したりできます。

ステップ 1: RAM ユーザーの作成

従業員用の RAM ユーザーを作成するには、A 社の Alibaba Cloud アカウントで RAM コンソールにログインします。

操作手順

コンソール

  1. Alibaba Cloud アカウント (root ユーザー) または管理者権限を持つ RAM ユーザー (AliyunRAMFullAccess ポリシーがアタッチされているユーザー) を使用して、RAM コンソールにサインインします。

  2. 左側のナビゲーションウィンドウで、アイデンティティ > ユーザー を選択します。

  3. ユーザー ページで、ユーザーの作成 をクリックします。

  4. ユーザーの作成 ページの ユーザーアカウント情報 セクションで、ユーザーの基本情報を設定します。

    • ログイン名 (必須):最大 64 文字です。英字、数字、ピリオド (.)、ハイフン (-)、アンダースコア (_) を使用できます。

    • 表示名 (オプション):名前は最大 128 文字です。

    • Tag (オプション)edit をクリックし、タグキーとタグ値を入力してユーザーを分類・管理します。

    説明

    ユーザーの追加 をクリックすると、複数の RAM ユーザーを一括で作成できます。

  5. アクセスモード セクションで、ユーザータイプに基づいてアクセスモードを選択します。

    重要
    • セキュリティのベストプラクティスとして、人間のコンソールアクセスとアプリケーションのプログラムによるアクセスを分離するために、ユーザーごとに 1 つのアクセスモードのみを選択してください。

    • AccessKey ペアが漏洩すると、アカウントが危険にさらされます。リスクを軽減するために、代わりに Security Token Service (STS) トークン (一時的な認証情報) を使用してください。Alibaba Cloud API を呼び出すためのアクセス認証情報の使用に関するベストプラクティスをご参照ください。

    コンソールアクセス

    コンソールへのアクセス を選択します。

    • ログインパスワードの設定:自動生成またはカスタムパスワードを設定します。カスタムパスワードは、設定された複雑性の要件を満たす必要があります。RAM ユーザーのパスワードポリシーを設定するをご参照ください。

    • パスワードのリセット:次回のサインイン時にユーザーがパスワードをリセットする必要があるかどうかを指定します。

    • MFA の有効化:デフォルトでは、すべてのユーザーに多要素認証 (MFA) が要求されます。この設定を変更するには、RAM ユーザーのセキュリティ設定を管理するをご参照ください。ユーザーは最初のサインイン時に MFA デバイスをバインドする必要があります。MFA デバイスをバインドするをご参照ください。

    プログラムによるアクセス

    永続的な AccessKey を使用してアクセス を選択します。

    システムは、RAM ユーザーの AccessKey IDAccessKey Secret を自動的に作成します。

    重要

    AccessKey Secret は作成時にのみ表示され、後から取得することはできません。AccessKey Secret を直ちにダウンロードまたはコピーして保存する必要がありますAccessKey ペアが漏洩すると、アカウント配下のすべてのリソースが危険にさらされます。AccessKey ペアの作成をご参照ください。

OpenAPI

コンソールアクセス用の RAM ユーザーの作成

  1. GetDefaultDomain を呼び出して、アカウントのデフォルト ログイン サフィックスを取得します。フォーマットは <AccountAlias>.onaliyun.com です。

  2. CreateUser 操作を呼び出して RAM ユーザーを作成します。次のパラメーターが必要です:

    1. UserPrincipalName: RAM ユーザーのログイン名です。フォーマットは <username>@<AccountAlias>.onaliyun.com で、<username> は RAM ユーザー名、<AccountAlias>.onaliyun.com はデフォルトのログインサフィックスを示します。

    2. DisplayName: RAM ユーザーの表示名。上記の <username> とは異なる場合があります。

  3. CreateLoginProfile 操作を呼び出してログインプロファイルを作成し、アクセスモードと MFA を設定します。推奨設定:

    1. UserPrincipalName:前のステップで作成されたユーザー。

    2. パスワード: アカウントのパスワード強度要件に従って設定します。GetPasswordPolicy を呼び出して、現在のパスワードポリシーを照会します。

    3. MFABindRequired: RAM ユーザーに多要素認証 (MFA) を要求するには、true に設定します。

    4. Status: コンソールへのパスワードログインを有効または無効にします。デフォルト値: Active

プログラムによるアクセス用の RAM ユーザーの作成

  1. GetDefaultDomain を呼び出して、アカウントのデフォルト ログイン サフィックスを取得します。サフィックスは <AccountAlias>.onaliyun.com のフォーマットです。

  2. CreateUser 操作を呼び出して RAM ユーザーを作成します。次のパラメーターが必要です:

    1. UserPrincipalName: <username>@<AccountAlias>.onaliyun.com フォーマットの RAM ユーザーのログイン名です。ここで、<username> は RAM ユーザー名、<AccountAlias>.onaliyun.com はデフォルトのログインサフィックスです。

    2. DisplayName: RAM ユーザーの表示名。上記の <username> とは異なる場合があります。

  3. AccessKey ペア (AccessKey) を作成するには、CreateAccessKey 操作を呼び出し、前のステップで作成したユーザーの UserPrincipalName のみを渡します。

    重要

    CreateAccessKey の応答には、AccessKeyIdAccessKeySecret が含まれています。AccessKeySecret は一度しか表示されず、後で取得することはできません。すぐに保存してください。漏洩した AccessKey は、アカウント内のすべてのリソースを危険にさらします。詳細については、「AccessKey を作成する」をご参照ください。

ステップ 2: RAM ユーザーへの権限付与

RAM ユーザーごとに異なる権限を付与します。

  1. RAM 管理者として RAM コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、アイデンティティ管理 > ユーザー を選択します。

  3. 目的の RAM ユーザーを見つけ、操作 列の ポリシーのアタッチ をクリックします。

  4. 権限の付与 パネルで、RAM ユーザーに権限を付与します。

    1. リソース範囲 を選択します。

      • Account:権限は現在の Alibaba Cloud アカウントに適用されます。

      • ResourceGroup:権限は指定されたリソースグループに適用されます。

        説明

        リソースグループの権限付与は、クラウドサービスがリソースグループをサポートしている場合にのみ有効です。詳細については、「リソースグループをサポートするクラウドサービス」をご参照ください。

    2. プリンシパル を指定します。

      プリンシパルは、権限を付与する RAM ユーザーです。

    3. ポリシー を選択します。

      ポリシーは権限のコレクションです。ポリシーには 2 種類あります:

      • システムポリシー:Alibaba Cloud によって作成および保守されます。これらのポリシーは使用できますが、変更はできません。詳細については、「RAM と連携するサービス」をご参照ください。

      • カスタムポリシー:これらのポリシーは作成、更新、削除が可能です。詳細については、「カスタムポリシーの作成」をご参照ください。

      インスタンス、Vhost、キューなどの ApsaraMQ for RabbitMQ リソースにきめ細かな権限を設定するには、カスタムポリシーを作成します。以下にカスタムポリシーの JSON の例を示します:

      {
        "Version": "1",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": "amqp:*",
            "Resource": "acs:amqp:*:*:instance/<InstanceID>/vhost/<VhostName>"
          }
        ]
      }

      <InstanceID> を実際のインスタンス ID に、<VhostName> を実際の Vhost 名に置き換えます。Resource フィールドは、次の粒度レベルをサポートしています。

      • インスタンスレベルacs:amqp:*:*:instance/<InstanceID>

      • Vhost レベルacs:amqp:*:*:instance/<InstanceID>/vhost/<VhostName>

      • キューレベル: acs:amqp:*:*:instance/<InstanceID>/vhost/<VhostName>/queue/<QueueName>

      説明

      システムは、AdministratorAccess や AliyunRAMFullAccess などのリスクの高いシステムポリシーを自動的に識別します。権限を付与する際は、不要なリスクの高いポリシーを付与しないようにしてください。

      トラブルシューティング:RAM 権限の不足

      ApsaraMQ for RabbitMQ への接続またはメッセージの消費時に権限関連のエラーが発生した場合は、以下を確認してください:

      • BrokerUnreachableException または InstanceNotServing (.NET SDK): .NET SDK クライアントから BrokerUnreachableException または InstanceNotServing が報告され、ネットワーク接続が正常であることが確認された場合は、RAM ユーザーにターゲットインスタンスと Vhost に対する操作権限があるかどうかを確認してください。カスタムポリシーを更新して、関連リソースに amqp:* 権限を付与してください。

      • AccessDeniedByRamPolicy (遅延キューの消費): 遅延キューの消費が中断されたり、メッセージが蓄積されたりしてエラー AccessDeniedByRamPolicy が報告された場合は、RAM ユーザーがターゲットインスタンス、 Vhost、および特定のキュー (たとえば、event_task_result_queryevent_task_status) に対する操作権限を持っているかどうかを確認してください。カスタムポリシーの Resource フィールドを更新して、該当するキューを含めてください。

    4. 権限の付与 をクリックします。

  5. 無効にする をクリックします。

次のステップ

RAM ユーザーは、次の方法で ApsaraMQ for RabbitMQ にアクセスできます。

  • コンソール

    1. ブラウザで RAM ユーザーログインページ を開きます。

    2. RAM ユーザーログイン ページで、RAM ユーザー名を入力し、次へ をクリックし、パスワードを入力してから ログイン をクリックします。

      説明

      RAM ユーザー名は <$username>@<$AccountAlias> または <$username>@<$AccountAlias>.onaliyun.com の形式である必要があります。<$AccountAlias> はアカウントエイリアスです。アカウントエイリアスが設定されていない場合、デフォルトで Alibaba Cloud アカウントの ID が使用されます。

  • API

    コード内で RAM ユーザーの AccessKey ID と AccessKey Secret を使用して API を呼び出し、ApsaraMQ for RabbitMQ にアクセスします。