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

Enterprise Distributed Application Service:RAM ポリシー

最終更新日:Jan 07, 2025

このトピックでは、Enterprise Distributed Application Service (EDAS) に関連する Resource Access Management (RAM) ポリシーについて説明します。

ポリシーのリソース変数

ポリシーでは、次の変数を使用してリソースを定義します。

  • $regionid: リソースがデプロイされているリージョンの ID。例: cn-shanghai。詳細については、「リージョンとゾーン」をご参照ください。

  • $namespace: マイクロサービス名前空間の ID。次の図は、マイクロサービス名前空間の ID を示しています。

    マイクロサービス名前空間 ID を表示するには、EDAS コンソール にログインします。左側のナビゲーションペインで、[リソース管理] > [マイクロサービス名前空間] を選択します。[マイクロサービス名前空間] ページで、各マイクロサービス名前空間の ID を表示できます。

    查看命名空间租户ID

  • $clusterId: クラスタの ID。例: 8c349f69-505c-436f-8dc7-**********。次の図は、クラスタの ID を示しています。

    クラスタ ID を表示するには、EDAS コンソール にログインします。左側のナビゲーションペインで、[リソース管理] > [ECS クラスタ] を選択します。[ECS クラスタ] ページで、[クラスタ ID/名前] 列にある目的のクラスタ ID をクリックして [クラスタの詳細] ページに移動し、クラスタの ID を表示します。

    查看集群ID

  • $applicationId: アプリケーションの ID。例: ec8e38a3-3dca-47a7-b6f9-5**********。次の図は、アプリケーションの ID を示しています。

    アプリケーション ID を表示するには、EDAS コンソール にログインします。左側のナビゲーションペインで、[アプリケーション管理] > [アプリケーション] を選択します。[アプリケーション] ページで、[アプリケーション名] 列にある目的のアプリケーションの名前をクリックして、アプリケーション詳細ページに移動します。アプリケーション詳細ページの [基本情報] タブで、アプリケーションの ID を表示できます。

    应用详情

ポリシーの詳細

このセクションでは、EDAS で定義された権限が RAM ポリシーにどのように対応しているかについて説明します。

マイクロサービス名前空間管理

表 1. マイクロサービス名前空間管理

コード

説明

依存アクション

リソース

1.1

マイクロサービス名前空間を作成します。

edas:CreateNamespace

acs:edas:$regionid:$accountid:namespace/*

1.2

マイクロサービス名前空間を削除します。

edas:ReadNamespace

acs:edas:$regionid:$accountid:namespace/$namespace

edas:DeleteNamespace

1.4

マイクロサービス名前空間を変更します。

edas:ManageNamespace

acs:edas:$regionid:$accountid:namespace/$namespace

edas:ReadNamespace

1.5

マイクロサービス名前空間を表示します。

edas:ReadNamespace

acs:edas:$regionid:$accountid:namespace/$namespace

表 2. クラスタ管理

コード

説明

依存アクション

リソース

2.1

クラスタを作成します。

edas:CreateCluster

acs:edas:$regionid:$accountid:namespace/$namespace/cluster/*

2.2

クラスタを削除します。

edas:ReadCluster

acs:edas:$regionid:$accountid:namespace/$namespace/cluster/$clusterId

edas:DeleteCluster

2.4

クラスタを管理します。

edas:ReadCluster

acs:edas:$regionid:$accountid:namespace/$namespace/cluster/$clusterId

edas:ManageCluster

2.3

クラスタを表示します。

edas:ReadCluster

acs:edas:$regionid:$accountid:namespace/$namespace/cluster/$clusterId

表 3. アプリケーション管理

コード

説明

依存アクション

リソース

3.1

アプリケーションを作成します。

edas:CreateApplication

acs:edas:$regionid:$accountid:namespace/$namespace/application/*

3.2

アプリケーションを削除します。

edas:ReadApplication

acs:edas:$regionid:$accountid:namespace/$namespace/application/$applicationId

edas:DeleteApplication

3.3

アプリケーションを表示します。

edas:ReadApplication

acs:edas:$regionid:$accountid:namespace/$namespace/application/$applicationId

3.4

アプリケーションを管理します。

edas:ManageApplication

acs:edas:$regionid:$accountid:namespace/$namespace/application/$applicationId

edas:ReadApplication

3.5

アプリケーションを設定します。

edas:ConfigApplication

acs:edas:$regionid:$accountid:namespace/$namespace/application/$applicationId

edas:ReadApplication

3.6

ログを管理します。

edas:ReadApplication

acs:edas:$regionid:$accountid:namespace/$namespace/application/$applicationId

edas:ManageAppLog

表 4. マイクロサービス管理

コード

説明

依存アクション

リソース

4.1

マイクロサービスを表示します。

edas:ReadService

acs:edas:$regionid:$accountid:namespace/$namespace/application/$applicationId

4.2

マイクロサービスをテストします。

edas:TestService

acs:edas:$regionid:$accountid:namespace/$namespace/application/$applicationId

4.3

マイクロサービスを管理します。

edas:ReadService

acs:edas:$regionid:$accountid:namespace/$namespace/application/$applicationId

edas:ManageService

表 5. 構成管理

コード

説明

依存アクション

リソース

5.1

構成を表示します。

acms:R

acs:acms:$regionid:$accountid:cfg/$namespace/$groupId/$configId

5.2

構成を管理します。

acms:*

acs:acms:$regionid:$accountid:cfg/$namespace/$groupId/$configId

表 6. システム管理

コード

説明

依存アクション

リソース

6.1

EDAS システムを管理します。

edas:ManageSystem

acs:edas:$regionid:$accountid:*

6.2

操作ログを表示します。

edas:ReadOperationLog

acs:edas:$regionid:$accountid:*

6.3

システム O&M 操作を実行します。

edas:ManageOperation

acs:edas:$regionid:$accountid:*

6.4

Elastic Compute Service (ECS) インスタンスを購入します。

edas:ECSPurchase

acs:edas:*:*:*

6.5

Server Load Balancer (SLB) インスタンスを購入します。

edas:SLBPurchase

acs:edas:*:*:*

6.6

Simple Log Service プロジェクトを購入します。

edas:SLSPurchase

acs:edas:*:*:*

表 7. 商用利用可能な EDAS 機能の管理

コード

説明

依存アクション

リソース

7

商用利用可能な EDAS 機能を管理します。

edas:ManageCommercialization

acs:edas:$regionid:$accountid:*

クラスタ管理

以下のシナリオでは、クラスタの管理に必要な権限について説明します。

クラスタの作成

重要

RAM ユーザーにクラスタを作成するために必要な権限を付与するには、Resource パラメータの値の cluster/ の後にアスタリスク (*) が続くことを確認してください。

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:CreateCluster"],
       "Resource": ["acs:edas:$regionid:*:namespace/$namespace/cluster/*"],
       "Effect": "Allow"
      }
   ]
 }
// クラスタを作成するためのポリシー

クラスタの詳細の表示

クラスタに対する読み取り専用権限が必要です。たとえば、クラスタ内のインスタンスやアプリケーションなど、クラスタに関する詳細を表示するために必要な権限です。

説明

RAM ユーザーにリソースグループに対する権限を付与して、RAM ユーザーがリソースグループ内のクラスタの詳細を表示できるようにすることができます。

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:ReadCluster"],
       "Resource": ["acs:edas:$regionid:*:namespace/$namespace/cluster/$clusterId"],
       "Effect": "Allow"
      }
   ]
 }
// クラスタの詳細を表示するためのポリシー

クラスタの管理

RAM ユーザーがクラスタを作成、クラスタにインスタンスを追加、クラスタを変更、およびクラスタを削除することを許可します。

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:ManageCluster"],
       "Resource": ["acs:edas:$regionid:*:namespace/$namespace/cluster/$clusterId"],
       "Effect": "Allow"
      }
   ]
 }
// クラスタを管理するためのポリシー

次の例は、RAM ユーザーにクラスタ管理権限を付与する方法を示しています。

  • [例 1]: RAM ユーザーにクラスタ管理権限を付与しますが、RAM ユーザーがクラスタを作成することは禁止します。

    {
       "Version": "1",
       "Statement": [
         {
           "Action": ["edas:ManageCluster"],
           "Resource": ["acs:edas:$regionid:*:namespace/$namespace/cluster/$clusterId"],
           "Effect": "Allow"
         },
         {
           "Action": ["edas:CreateCluster"],
           "Resource": ["acs:edas:$regionid:*:namespace/$namespace/cluster/*"],
           "Effect": "Deny"
          }
       ]
     }
    // クラスタ管理権限を付与し、クラスタの作成を禁止するポリシー
    説明

    $clusterId 変数が特定のクラスタ ID に設定されている場合、RAM ユーザーは指定されたクラスタのみを管理できます。 $clusterId 変数がアスタリスク (*) に設定されている場合、RAM ユーザーは指定されたマイクロサービス名前空間内のすべてのクラスタを管理できます。

  • [例 2]: RAM ユーザーにクラスタ管理権限を付与しますが、RAM ユーザーがクラスタを作成または削除することは禁止します。

    {
       "Version": "1",
       "Statement": [
         {
           "Action": ["edas:ManageCluster"],
           "Resource": ["acs:edas:$regionid:*:namespace/$namespace/cluster/$clusterId"],
           "Effect": "Allow"
         },
         {
           "Action": ["edas:CreateCluster","edas:DeleteCluster"],
           "Resource": ["acs:edas:$regionid:*:namespace/$namespace/cluster/*"],
           "Effect": "Deny"
          }
       ]
     }
    // クラスタ管理権限を付与し、クラスタの作成と削除を禁止するポリシー

クラスタの削除

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:ReadCluster","edas:DeleteCluster"],
       "Resource": ["acs:edas:$regionid:*:namespace/$namespace/cluster/$clusterId"],
       "Effect": "Allow"
      }
   ]
 }
// クラスタを削除するためのポリシー

マイクロサービス名前空間管理

以下のシナリオでは、マイクロサービス名前空間の管理に必要な権限について説明します。

マイクロサービス名前空間の作成

重要

RAM ユーザーにマイクロサービス名前空間を作成するために必要な権限を付与するには、Resource パラメータの値の namespace/ の後にアスタリスク (*) が続くことを確認してください。

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:CreateNamespace"],
       "Resource": ["acs:edas:$regionid:*:namespace/*"],
       "Effect": "Allow"
      }
   ]
 }
// マイクロサービス名前空間を作成するためのポリシー

マイクロサービス名前空間の表示

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:ReadNamespace"],
       "Resource": ["acs:edas:$regionid:*:namespace/$namespace"],
       "Effect": "Allow"
      }
   ]
 }
// マイクロサービス名前空間を表示するためのポリシー

マイクロサービス名前空間の管理

RAM ユーザーがマイクロサービス名前空間を変更または名前変更できるようにするには、RAM ユーザーにマイクロサービス名前空間を管理する権限を付与する必要があります。

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:ManageNamespace"],
       "Resource": ["acs:edas:$regionid:*:namespace/$namespace"],
       "Effect": "Allow"
      }
   ]
 }
// マイクロサービス名前空間を管理するためのポリシー

マイクロサービス名前空間の削除

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:ReadNamespace","edas:DeleteNamespace"],
       "Resource": ["acs:edas:$regionid:*:namespace/$namespace"],
       "Effect": "Allow"
      }
   ]
 }
// マイクロサービス名前空間を削除するためのポリシー

リソースの購入

企業ユーザーの権限管理機能を強化するため、EDAS では企業ユーザーがリソースを購入するための権限を付与することができます。リソースには、ECS、SLB、および Log Service リソースが含まれます。

以下のシナリオでは、リソースの購入に必要な権限について説明します。

重要
  • すべてのリソース購入ポリシーで、Resource パラメータの値は acs:edas:*:*:* である必要があります。よりきめ細かい構成はサポートされていません。

  • リソース購入ポリシーは RAM ユーザーにのみ適用されます。

ECS リソースの購入

  • 適用範囲:

    • ECS クラスタ内の ECS リソースを購入します。

    • ECS クラスタにアプリケーションを作成するときに ECS リソースを購入します。

    • ECS クラスタでアプリケーションをスケールアウトするときに ECS リソースを購入します。

  • ポリシーの例:

    {
      "Version": "1",
      "Statement": [    
        {
          "Effect": "Allow",
          "Action": [
            "edas:ECSPurchase"
          ],
          "Resource": [
            "acs:edas:*:*:*"
          ]
        }
      ]
    }
    // ECS リソースを購入するためのポリシー
    

SLB リソースの購入

  • 適用範囲: SLB インスタンスをアプリケーションにバインドするときに SLB リソースを購入します。

  • ポリシーの例:

    {
      "Version": "1",
      "Statement": [    
        {
          "Effect": "Allow",
          "Action": [
            "edas:SLBPurchase"
          ],
          "Resource": [
            "acs:edas:*:*:*"
          ]
        }
      ]
    }
    // SLB リソースを購入するためのポリシー
    

Simple Log Service リソースの購入

  • 適用範囲: アプリケーションの Log Service リソースを購入します。

  • ポリシーの例:

    {
      "Version": "1",
      "Statement": [    
        {
          "Effect": "Allow",
          "Action": [
            "edas:SLSPurchase"
          ],
          "Resource": [
            "acs:edas:*:*:*"
          ]
        }
      ]
    }
    // Simple Log Service リソースを購入するためのポリシー
    

アプリケーション管理

以下のシナリオでは、アプリケーションの管理に必要な権限について説明します。

個々のアプリケーションに対する権限

  • [アプリケーションの管理]: RAM ユーザーがアプリケーションに関する情報を表示し、アプリケーションの構成とログを管理することを許可しますが、RAM ユーザーがアプリケーションを作成または削除することは許可しません。

    {
        "Statement": [
          {
            "Action": [
              "edas:*Application"
            ],
            "Effect": "Allow",
            "Resource": ["acs:edas:$regionid:*:namespace/$namespace/application/$applicationId"]
          },
          {
            "Action": [
              "edas:DeleteApplication"
            ],
            "Resource":["acs:edas:$regionid:*:namespace/$namespace/application/$applicationId"],
            "Effect": "Deny"
          },
          {
            "Action": [
              "edas:CreateApplication"
            ],
            "Resource":["acs:edas:$regionid:*:namespace/$namespace/application/*"],
            "Effect": "Deny"
          }
        ],
        "Version": "1"
    }
    // アプリケーションを管理するためのポリシー。ただし、アプリケーションの作成と削除は禁止されています。
    
  • [アプリケーションの作成]

    重要

    アプリケーションを作成するには、ユーザーはクラスタ内のインスタンスを使用する必要があります。したがって、RAM ユーザーにクラスタを表示する権限を付与する必要があります。

    {
      "Statement": [
        {
          "Action": [
            "edas:CreateApplication",
            "edas:ReadCluster"
          ],
          "Effect": "Allow",
          "Resource": [
                  "acs:edas:$regionid:*:namespace/$namespace/application/*",
              "acs:edas:$regionid:*:namespace/$namespace/cluster/$clusterId"
          ]
        }
      ],
      "Version": "1"
    }
    // アプリケーションを作成するためのポリシー
    
  • [アプリケーションの削除]

    重要

    RAM ユーザーがアプリケーションを削除できるようにするには、RAM ユーザーにアプリケーションを表示する権限を付与する必要があります。そうでない場合、RAM ユーザーはアプリケーションを見つけることができません。

    {
      "Statement": [
        {
          "Action": [
            "edas:DeleteApplication",
            "edas:ReadApplication"
          ],
          "Effect": "Allow",
          "Resource": ["acs:edas:$regionid:*:namespace/$namespace/application/$applicationId"]
        }
      ],
      "Version": "1"
    }
    // アプリケーションを削除するためのポリシー
    
  • [ログの管理]

    重要

    RAM ユーザーがアプリケーションのログを管理できるようにするには、RAM ユーザーにアプリケーションを表示する権限を付与する必要があります。そうでない場合、RAM ユーザーはアプリケーションを見つけることができません。

    {
      "Statement": [
        {
          "Action": [
            "edas:ReadApplication",
            "edas:ManageAppLog"
          ],
          "Effect": "Allow",
          "Resource": ["acs:edas:$regionid:*:namespace/$namespace/application/$applicationId"]
        }
      ],
      "Version": "1"
    }
    // アプリケーションのログを管理するためのポリシー
    
  • [アプリケーションの構成]: RAM ユーザーがアプリケーションポート、Tomcat コンテキスト、負荷分散パラメータ、ヘルスチェックパラメータ、Java 仮想マシン (JVM) パラメータ、およびゾーン内プロバイダー優先機能を設定することを許可します。

    重要

    RAM ユーザーがアプリケーションを構成できるようにするには、RAM ユーザーにアプリケーションを表示する権限を付与する必要があります。

    {
      "Statement": [
        {
          "Action": [
            "edas:ReadApplication",
            "edas:ConfigApplication"
          ],
          "Effect": "Allow",
          "Resource": ["acs:edas:$regionid:*:namespace/$namespace/application/$applicationId"]
        },
      ],
      "Version": "1"
    }
    // アプリケーションを構成するためのポリシー
    

複数のアプリケーションに対する権限

  • [アプリケーションのクエリ]: RAM ユーザーが指定されたリージョン内のアプリケーションをクエリすることを許可します。

    説明

    1 つのリージョンに複数のマイクロサービス名前空間が含まれている場合があります。この権限により、RAM ユーザーは指定されたリージョン内のすべてのマイクロサービス名前空間のアプリケーションをクエリできます。

    {
        "Statement": [
          {
            "Action": [
              "edas:ReadApplication"
            ],
            "Effect": "Allow",
            "Resource": ["acs:edas:$regionid:*:namespace/*/application/*"]
          }
        ],
        "Version": "1"
    }
    // アプリケーションをクエリするためのポリシー
    
  • [アプリケーションの表示]: RAM ユーザーが指定されたマイクロサービス名前空間内のアプリケーションを表示することを許可します。

    {
        "Statement": [
          {
            "Action": [
              "edas:*Application",
              "edas:ReadCluster"
            ],
            "Effect": "Allow",
            "Resource": [
                "acs:edas:$regionid:*:namespace/$namespace/application/*",
              "acs:edas:$regionid:*:namespace/$namespace/cluster/*"
             ]
          }
        ],
        "Version": "1"
    }
    // アプリケーションを表示するためのポリシー
    

マイクロサービス管理

以下のシナリオでは、マイクロサービスの管理に必要な権限について説明します。

マイクロサービスの表示

説明

RAM ユーザーにすべてのマイクロサービスを表示するために必要な権限を付与するには、次のポリシーの $applicationId 変数をアスタリスク (*) に設定します。

{
    "Statement": [
      {
        "Action": [
          "edas:ReadService"
        ],
        "Effect": "Allow",
        "Resource": [    
            "acs:edas:$regionid:*:namespace/$namespace/application/$applicationId"
            ]
      }
    ],
    "Version": "1"
}
// マイクロサービスを表示するためのポリシー

マイクロサービスのテスト

説明

RAM ユーザーにマイクロサービス名前空間全体で全てのマイクロサービスをテストするために必要な権限を付与するには、次のポリシーの $namespace 変数と $applicationId 変数をアスタリスク (*) に設定します。

{
    "Statement": [
      {
        "Action": [
          "edas:TestService"
        ],
        "Effect": "Allow",
        "Resource": [
            "acs:edas:$regionid:*:namespace/$namespace/application/$applicationId"
            ]
      }
    ],
    "Version": "1"
}
// マイクロサービスをテストするためのポリシー

マイクロサービスの管理

説明

RAM ユーザーにすべてのマイクロサービスを管理するために必要な権限を付与するには、次のポリシーの $applicationId 変数をアスタリスク (*) に設定します。

{
    "Statement": [
      {
        "Action": [
          "edas:ManageService"
        ],
        "Effect": "Allow",
        "Resource": [
            "acs:edas:$regionid:*:namespace/$namespace/application/$applicationId"
        ]
      }
    ],
    "Version": "1"
}
// マイクロサービスを管理するためのポリシー

外れ値インスタンスの削除

重要

外れ値インスタンスの削除は、マイクロサービス名前空間内のアプリケーションに影響します。 RAM ユーザーに、指定されたマイクロサービス名前空間内でのみ外れ値インスタンスを削除する権限を付与できます。

{
    "Statement": [
      {
        "Action": [
          "edas:ManageService"
        ],
        "Effect": "Allow",
        "Resource": [
            "acs:edas:$regionid:*:namespace/$namespace"
        ]
      }
    ],
    "Version": "1"
}
// 外れ値インスタンスを削除するためのポリシー

システム管理

RAM ユーザーの管理、リソース使用量の表示、操作ログの表示などの権限が含まれます。

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:ManageSystem"],
       "Resource": ["acs:edas:*:*:*"],
       "Effect": "Allow"
      }
   ]
 }
// システムを管理するためのポリシー
説明

システムポリシーは特定のリソースによって定義されていません。これらのポリシーの Resource 変数を acs:edas:*:*:* に設定します。

システム O&M 操作の実行

RAM ユーザーが操作ログを表示し、一度に 1 つ以上の O&M タスクを実行し、リソースグループを管理することを許可します。

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:ManageOperation"],
       "Resource": ["acs:edas:*:*:*"],
       "Effect": "Allow"
      }
   ]
 }
// システム O&M 操作を実行するためのポリシー

操作ログの表示

{
   "Version": "1",
   "Statement": [
     {
       "Action": ["edas:ReadOperationLog"],
       "Resource": ["acs:edas:*:*:*"],
       "Effect": "Allow"
      }
   ]
 }
// 操作ログを表示するためのポリシー