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

AnalyticDB:RAMユーザーと権限の管理

最終更新日:Jun 07, 2024

Resource Access Management (RAM) は、Alibaba Cloudが提供する権限管理システムです。 RAMを使用して、Alibaba Cloudアカウントの権限内でRAMユーザーを作成できます。 RAMユーザーごとに、特定のクラウドリソースへのアクセスを許可または拒否する権限を付与できます。

背景情報

説明
  • Alibaba Cloudアカウントは、特定の機能を実行するRAMユーザーを作成できます。 RAMユーザーはリソースを所有または保持できません。 すべてのリソースはAlibaba Cloudアカウントにのみ属します。
  • RAMユーザーを使用してAnalyticDB for MySQLクラスターを作成する場合、RAMユーザーと対応するAlibaba Cloudアカウントのみを使用してクラスターにアクセスできます。 他のRAMユーザーがこのクラスターにアクセスする場合は、必要な権限を付与する必要があります。

シナリオ

Alibaba Cloudアカウントを使用してAnalyticDB for MySQLクラスターを作成し、AnalyticDB for MySQLクラスターを使用する組織のメンバーとAccessKeyペアを共有するとします。
警告 Alibaba CloudアカウントのAccessKeyペアが複数のユーザーによって共有されている場合、次のリスクがあります。
  • AccessKeyペアはリークが発生しやすいです。
  • 特定のユーザーがクラスターで実行できる操作を制御することはできません。 例えば、ユーザは、クラスタをスケールアップまたは再起動することができる。

上記の問題を回避するには、RAMユーザーを作成し、各RAMユーザーに必要な権限のみを付与します。 これらのRAMユーザーは、Alibaba Cloudアカウントではなく、AnalyticDB for MySQLクラスターへのアクセスまたは管理に使用できます。

実装

RAMユーザーがAnalyticDB for MySQLクラスターにアクセスまたは管理できるようにするには、次の操作を実行する必要があります。
  1. RAMユーザーの作成
  2. RAMユーザーに権限を付与します。

RAM ユーザーの作成

  1. RAMコンソールにログインします。
  2. 左側のナビゲーションウィンドウで、[ID] > [ユーザー] を選択します。
  3. [ユーザー] ページで、[ユーザーの作成] をクリックします。 [ユーザーの作成] ページで、[ログイン名] および [表示名] パラメーターを設定します。
    説明 ユーザーの追加をクリックして、一度に複数の RAM ユーザーを作成できます。
  4. [アクセスモード] セクションで、[コンソールアクセス] または [OpenAPIアクセス] を選択します。
    • コンソールアクセス: このアクセスモードを選択した場合、ログオンセキュリティ設定を完了する必要があります。 これらの設定では、システム生成またはカスタムのログインパスワードを使用するかどうか、次回のログイン時にパスワードをリセットする必要があるかどうか、および多要素認証 (MFA) を有効にするかどうかを指定します。
    • OpenAPIアクセス: このアクセスモードを選択すると、RAMユーザーに対してAccessKeyペアが生成されます。 その後、RAMユーザーは他の開発ツールを使用してAnalyticDB for MySQLクラスターにアクセスできます。

    アカウントのセキュリティを確保するため、RAMユーザーにはシングルアクセスモードのみを選択することを推奨します。 これにより、RAMユーザーが組織を離れた後、AccessKeyペアを使用してAnalyticDB for MySQLクラスターにアクセスできなくなります。

  5. [OK] をクリックします。

RAM ユーザーへの権限付与

  1. RAMコンソールにログインします。
  2. 左側のナビゲーションウィンドウで、[ID] > [ユーザー] を選択します。
  3. [ユーザー] ページで、権限を付与するRAMユーザーを見つけます。 次に、[操作] 列の [権限の追加] をクリックします。
  4. [権限の追加] パネルで、[システムポリシー] を選択し、ポリシー名を入力してポリシーを検索します。 ポリシーをクリックして、右側の [選択済み] セクションに追加します。
    警告 セキュリティリスクやビジネスの損失を防ぐために、ユーザーに過度の権限を付与しないでください。
    次のポリシーをRAMユーザーにアタッチできます。
    • Data Warehouse Edition (V3.0) クラスターの場合:
      • AliyunADBReadOnlyAccess: RAMユーザーがData Warehouse Edition (V3.0) クラスターに読み取り専用モードでアクセスできるようにします。
      • AliyunADBFullAccess: RAMユーザーがData Warehouse Edition (V3.0) クラスターを管理できるようにします。
    • Data Lakehouse Edition (V3.0) クラスターの場合:
      • AliyunADBReadOnlyAccess: RAMユーザーがData Lakehouse Edition (V3.0) クラスターに読み取り専用モードでアクセスできるようにします。
      • AliyunADBFullAccess: RAMユーザーがData Lakehouse Edition (V3.0) クラスターを管理できるようにします。
      • AliyunADBDeveloperAccess: RAMユーザーがData Lakehouse Edition (V3.0) クラスターを開発できるようにします。 AliyunADBFullAccessポリシーと比較して、AliyunADBDeveloperAccessには、クラスターの作成と削除、クラスター設定の変更、RAMユーザーとの関連付けの権限が含まれていません。
  5. [OK] をクリックします。

    RAMユーザーに権限を付与すると、RAMユーザーを使用して、AnalyticDB for MySQLクラスターにアクセスまたは管理できます。

ポリシーを作成します。

特定のAnalyticDB for MySQLクラスターに対する操作をRAMユーザーに許可する必要がある場合は、RAMコンソールでカスタムポリシーを作成する必要があります。

  1. RAMコンソールにログインします。
  2. 左側のナビゲーションウィンドウで、[権限] > [ポリシー] を選択します。
  3. [ポリシー] ページで、[ポリシーの作成] をクリックします。 この例では、AnalyticDB for MySQL Data Warehouse Edition (V3.0) クラスターの管理に使用されるポリシーが作成されます。
  4. [ポリシーの作成] ページで、[JSON] タブをクリックします。
  5. コードエディターで、次のスクリプトを入力します。

    次の例では、RAMユーザーがam-xxxクラスターを管理できるようにするポリシーが作成されています。

    {
        "Version": "1",
        "Statement": [
            {
                "Action": ["adb:DescribeDBClusters" 、"adb:ListTagResources"] 、
                "Resource": "acs:adb:*:*:dbcluster/*" 、
                "Effect": "Allow"
            },
            {
                "アクション": "adb:*" 、
                "Resource": ["acs:adb:*:*:dbcluster/am-xxx"] 、
                "Effect": "Allow"
            }
        ]
    }

    次の例では、RAMユーザーがam-xxxクラスターに読み取り専用モードでアクセスできるようにするポリシーが作成されています。

    {
        "Version": "1",
        "Statement": [
            {
                "Action": ["adb:DescribeDBClusters" 、"adb:ListTagResources"] 、
                "Resource": "acs:adb:*:*:dbcluster/*" 、
                "Effect": "Allow"
            },
            {
                "Action": "adb:Describe *" 、
                "Resource": ["acs:adb:*:*:dbcluster/am-xxx"] 、
                "Effect": "Allow"
            }
        ]
    }

    RAMユーザーが複数のクラスターを管理するか、読み取り専用モードで複数のクラスターにアクセスする必要がある場合は、スクリプトの "Resource": ["acs:adb:*:*:*:dbcluster/am-xxx"] セクションに対応するクラスターIDを追加します。 例: "Resource": ["acs:adb:*:*:dbcluster/am-xxx", "acs:adb:*:*:dbcluster/am-yyy"]

    ポリシーを作成したら、特定のRAMユーザーにポリシーをアタッチする必要があります。

  6. [次へ] をクリックしてポリシー情報を編集します。
  7. ポリシー名を入力し、[OK] をクリックします。

関連ドキュメント