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

Simple Log Service:RAM ユーザーに対するアラート管理の権限付与

最終更新日:Sep 18, 2024

本ドキュメントでは、Resource Access Management (RAM) ユーザーにアラートを管理する権限を与える方法について説明します。 承認が完了したら、アラートルールを作成して、プロジェクト、リージョン、またはAlibaba Cloudアカウント全体のデータを監視できます。

前提条件

RAM ユーザーを作成します。 詳細については、「RAM ユーザーの作成」をご参照ください。

RAMユーザーにアラートに対する読み取り専用権限を付与する

方法1: RAMユーザーにシステムポリシーをアタッチする

Alibaba Cloud アカウントを使用して RAM コンソールにログインします。 次に、AliyunLogReadOnlyAccessポリシーをRAMユーザーにアタッチします。 このポリシーは、アラートに対する読み取り専用権限を付与します。 詳細については、「RAMユーザーへの権限付与」をご参照ください。

方法2: カスタムポリシーを作成し、カスタムポリシーをRAMユーザーにアタッチします

  1. RAMコンソールAlibaba Cloudアカウントを使用します。

  2. カスタムポリシーを作成します。

    1. 左側のナビゲーションウィンドウから、 [権限] > [ポリシー] を選択します。

    2. [ポリシー] ページで [ポリシーの作成] をクリックします。

    3. 表示されるページで、[JSON] タブをクリックし、コードエディターの既存のスクリプトを次の内容に置き換え、[次へ] をクリックしてポリシー情報を編集します。

      説明
      • プロジェクト名は、読み取り専用権限を付与するアラートを持つプロジェクトを指定します。 変数を実際のプロジェクト名に置き換えます。

      • sls-alert-* は、Alibaba Cloudアカウント内のグローバルアラートセンターが属するすべてのプロジェクトを指定します。 プロジェクトは、Alibaba Cloudアカウント内にアラートのデータを保存します。 データには、各アラートルールの評価データ、保存されたログ、およびアラートに関連するグローバルレポートが含まれます。 グローバルレポートを表示する必要がない場合は、リソースリストからacs:log:*:*:project/sls-alert-*/* を削除できます。

      {
        "Version": "1",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "log:GetLogStore"
            ],
            "Resource": [
              "acs:log:*:*:project/Project name/logstore/internal-alert-history",
              "acs:log:*:*:project/sls-alert-*/logstore/internal-alert-center-log"
            ]
          },
          {
            "Effect": "Allow",
            "Action": [
              "log:GetJob",
              "log:ListJobs"
            ],
            "Resource": "acs:log:*:*:project/Project name/job/*"
          },
          {
            "Effect": "Allow",
            "Action": [
              "log:GetProject"
            ],
            "Resource": [
              "acs:log:*:*:project/sls-alert-*"
            ]
          },
          {
            "Effect": "Allow",
            "Action": [
              "log:GetLogStoreLogs",
              "log:ListLogStores",
              "log:GetIndex",
              "log:GetDashboard",
              "log:ListDashboard"
            ],
            "Resource": [
              "acs:log:*:*:project/Project name/*",
              "acs:log:*:*:project/sls-alert-*/*"
            ]
          },
          {
            "Effect": "Allow",
            "Action": [
              "log:GetResource",
              "log:ListResources",
              "log:GetResourceRecord",
              "log:ListResourceRecords"
            ],
            "Resource": [
              "acs:log:*:*:resource/*"
            ]
          }
        ]
      }
    4. [ポリシーの作成] ページで、[名前] パラメーターを設定し、[OK] をクリックします。

  3. RAMユーザーに権限を付与します。

    1. 左側のナビゲーションペインで、[Identities] > [Users] を選択します。

    2. [ユーザー] ページで、カスタムポリシーをアタッチするRAMユーザーを見つけ、[操作] 列の [権限の追加] をクリックします。

    3. [権限の付与] パネルの [ポリシー] セクションで、ドロップダウンリストから [カスタムポリシー] を選択し、手順2で作成したポリシーを選択して、[権限の付与] をクリックします。

RAMユーザーにアラートの管理権限を付与する

方法1: システムポリシーをRAMユーザーにアタッチする

Alibaba Cloud アカウントを使用して RAM コンソールにログインします。 次に、AliyunLogFullAccessポリシーをRAMユーザーにアタッチします。 このポリシーは、Simple Log Serviceの管理権限を付与します。 詳細については、「RAMユーザーへの権限付与」をご参照ください。

方法2: カスタムポリシーを作成し、カスタムポリシーをRAMユーザーにアタッチする

  1. RAMコンソールAlibaba Cloudアカウントを使用します。

  2. カスタムポリシーを作成します。

    1. 左側のナビゲーションウィンドウから、 [権限] > [ポリシー] を選択します。

    2. [ポリシー] ページで [ポリシーの作成] をクリックします。

    3. 表示されるページで、[JSON] タブをクリックし、コードエディターの既存のスクリプトを次の内容に置き換え、[次へ] をクリックしてポリシー情報を編集します。

      説明
      • プロジェクト名は、管理権限を付与するアラートを持つプロジェクトを指定します。 変数を実際のプロジェクト名に置き換えます。

      • sls-alert-* は、Alibaba Cloudアカウント内のグローバルアラートセンターが属するすべてのプロジェクトを指定します。 プロジェクトは、Alibaba Cloudアカウント内にアラートのデータを保存します。 データには、各アラートルールの評価データ、保存されたログ、およびアラートに関連するグローバルレポートが含まれます。 RAMユーザーにグローバルアラートセンターが属する1つのプロジェクトのみを管理する権限を付与する場合は、sls-alert-*sls-alert-${uid}-${region} 形式でプロジェクトの名前に設定する必要があります。 例: sls-alert-148 **** 6461-cn-hangzhou

      • 履歴アラートを保存するLogstoreやグローバルアラートセンターが属するLogstoreなど、RAMユーザーを使用してアラート関連システムのLogstoreを管理する場合は、RAMユーザーにLogstoreの作成、インデックスの作成、インデックスの更新を行う権限を付与する必要があります。 次に、RAMユーザーを使用して、アラート履歴などのアラート関連のレポートを表示できます。

      {
        "Version": "1",
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "log:GetLogStore",
              "log:UpdateLogStore",
              "log:CreateLogStore",
              "log:CreateIndex",
              "log:UpdateIndex"
            ],
            "Resource": [
              "acs:log:*:*:project/Project name/logstore/internal-alert-history",
              "acs:log:*:*:project/sls-alert-*/logstore/internal-alert-center-log"
            ]
          },
          {
            "Effect": "Allow",
            "Action": [
              "log:*"
            ],
            "Resource": "acs:log:*:*:project/Project name/job/*"
          },
          {
            "Effect": "Allow",
            "Action": [
              "log:GetProject",
              "log:CreateProject"
            ],
            "Resource": [
              "acs:log:*:*:project/sls-alert-*"
            ]
          },
          {
            "Effect": "Allow",
            "Action": [
              "log:GetLogStoreLogs",
              "log:ListLogStores",
              "log:GetIndex",
              "log:GetDashboard",
              "log:CreateDashboard",
              "log:UpdateDashboard",
              "log:ListDashboard"
            ],
            "Resource": [
              "acs:log:*:*:project/Project name/*",
              "acs:log:*:*:project/sls-alert-*/*"
            ]
          },
          {
            "Effect": "Allow",
            "Action": [
              "log:*"
            ],
            "Resource": [
              "acs:log:*:*:resource/*"
            ]
          }
        ]
      }
    4. [ポリシーの作成] ページで、[名前] パラメーターを設定し、[OK] をクリックします。

  3. RAMユーザーに権限を付与します。

    1. 左側のナビゲーションペインで、[Identities] > [Users] を選択します。

    2. [ユーザー] ページで、カスタムポリシーをアタッチするRAMユーザーを見つけ、[操作] 列の [権限の追加] をクリックします。

    3. [権限の付与] パネルの [ポリシー] セクションで、ドロップダウンリストから [カスタムポリシー] を選択し、手順2で作成したポリシーを選択して、[権限の付与] をクリックします。

プロジェクト全体のデータを監視するアラートルールを作成する

承認の設定

重要

RAMユーザーを使用してアラートルールを作成してデータを監視する場合は、Alibaba Cloudアカウントを使用してRAMユーザーにアラートの管理権限を付与する必要があります。 詳細については、「RAMユーザーにアラートの管理を許可する」をご参照ください。

  1. クエリ文を指定します。 詳細については、「アラートルールの作成」をご参照ください。

  2. 承認を設定します。 次の表に、使用できる権限付与方法を示します。

    承認方法

    説明

    デフォルトの権限付与方法の使用

    プロジェクト用に設定されたアラートルールを使用して、プロジェクトのさまざまなLogstoreおよびMetricstoreのデータを監視する場合は、デフォルトの承認方法を使用できます。

    組み込みロールの使用

    プロジェクト用に設定されたアラートルールを使用して、同じAlibaba Cloudアカウント内の別のプロジェクトのLogstoreおよびMetricstoreのデータを監視する場合、組み込みロールをSimple Log Serviceに割り当てることができます。

    カスタムロールの使用

    Alibaba Cloudアカウント全体のプロジェクトに対して設定されたアラートルールを使用して、プロジェクトのLogstoreおよびMetricstoreのデータを監視する場合、Simple Log Serviceにカスタムロールを割り当てることができます。

    手順

    デフォルトの権限付与方法の使用

    [詳細設定] タブで、[権限付与] ドロップダウンリストから [デフォルト] を選択します。

    image

    組み込みロールの使用

    [詳細設定] タブで、[権限付与] ドロップダウンリストから [組み込みロール] を選択します。 初めて権限付与を設定する場合は、[クラウドリソースアクセス権限付与] ページでAlibaba Cloudアカウントを使用して権限付与を完了する必要があります。 権限付与が完了すると、Simple Log ServiceはAliyunSLSAlertMonitorRoleという名前のRAMロールを作成します。 その後、Simple Log ServiceはRAMロールを引き受けて、指定されたLogstoreからデータを読み取ることができます。

    image

    カスタムロールの使用 (Alibaba Cloudアカウント内)

    アラートルールを使用して、Alibaba Cloudアカウント内の複数のプロジェクトにわたって異なるLogstoreおよびMetricstoreのデータを監視する場合、Simple Log Serviceにカスタムロールを割り当てることができます。

    1. Alibaba Cloudアカウントを使用して、次の手順を実行します。

      1. 信頼できるエンティティがSimple Log ServiceであるRAMロールを作成します

      2. [JSON] タブでカスタムポリシーを作成します

        image

        コードエディターで、次のポリシードキュメントを入力します。 プロジェクト名を実際の値に置き換えます。 カスタムポリシーを変更して、RAMロールにきめ細かい権限を付与できます。 たとえば、特定のプロジェクトでのみアラートルールを作成する権限をロールに付与する場合は、カスタムポリシーの [リソース] 要素でプロジェクトを指定できます。 例: acs:log:*:*:project/my-project

        {
          "Statement": [
            {
              "Action": [
                "log:ListProject"
              ],
              "Effect": "Allow",
              "Resource": [
                "acs:log:*:*:*"
              ]
            },
            {
              "Action": [
                "log:ListLogStores",
                "log:GetLogStoreLogs",
                "log:GetIndex"
              ],
              "Effect": "Allow",
              "Resource": [
                "acs:log:*:*:project/Project name/*"
              ]
            }
          ],
          "バージョン": "1"
        } 
      3. カスタムポリシーをRAMロールにアタッチします。 詳細については、「RAMロールへの権限の付与」をご参照ください。

      4. RAMロールのAlibaba Cloudリソース名 (ARN) を取得します。

    2. RAMロールのARNを入力して、ロールをSimple Log Serviceに割り当てます。

      image

    カスタムロールの使用 (複数のAlibaba Cloudアカウント間)

    アラートルールを使用して、複数のAlibaba Cloudアカウントにわたる異なるLogstoreおよびMetricstoreのデータをモニタリングする場合、Simple Log Serviceにカスタムロールを割り当てることができます。 たとえば、Alibaba CloudアカウントAを使用してアラートルールを作成し、アラートルールを使用してAlibaba CloudアカウントBのLogstoreおよびMetricstoreのデータを監視できます。

    1. Alibaba Cloudアカウントを使用して、次の手順を実行します。

      1. 信頼できるエンティティがSimple Log ServiceであるRAMロールを作成します

      2. RAMロールの信頼ポリシーを変更します。 次のポリシードキュメントに基づいて、RAMロールの信頼ポリシーを変更できます。 Alibaba CloudアカウントAのIDを実際の値に置き換えます。 Alibaba CloudアカウントのIDは、アカウントセンターで確認できます。

        {
            "Statement": [
                {
                    "Action": "sts:AssumeRole",
                    "Effect": "Allow",
                    "Principal": {
                        "Service": [
                            "ID of Alibaba Cloud Account A@log.aliyuncs.com",
                            "log.aliyuncs.com"
                        ]
                    }
                }
            ],
            "Version": "1"
        }
      3. [JSON] タブでカスタムポリシーを作成します

        image

        コードエディターの内容を次のポリシードキュメントに置き換えます。 プロジェクト名を実際の値に置き換えます。 カスタムポリシーを変更して、RAMロールにきめ細かい権限を付与できます。 たとえば、特定のプロジェクトでのみアラートルールを作成する権限をロールに付与する場合は、カスタムポリシーの [リソース] 要素でプロジェクトを指定できます。 例: acs:log:*:*:project/my-project

        {
          "Statement": [
            {
              "Action": [
                "log:ListProject"
              ],
              "Effect": "Allow",
              "Resource": [
                "acs:log:*:*:*"
              ]
            },
            {
              "Action": [
                "log:ListLogStores",
                "log:GetLogStoreLogs",
                "log:GetIndex"
              ],
              "Effect": "Allow",
              "Resource": [
                "acs:log:*:*:project/Project name/*"
              ]
            }
          ],
          "Version": "1"
        }
      4. カスタムポリシーをRAMロールにアタッチします。 詳細については、「RAMロールへの権限の付与」をご参照ください。

      5. RAMロールのARNを取得します。

    2. RAMロールのARNを入力して、ロールをSimple Log Serviceに割り当てます。

      image

RAM ユーザーへの権限付与

RAMユーザーを使用して、アラートルールに基づいてプロジェクト、リージョン、またはAlibaba Cloudアカウントのデータを監視する場合、RAMユーザーには、必要なLogstoreまたはMetricstoreのデータを照会する権限が必要です。 この場合、Alibaba Cloudアカウントを使用して、次のポリシーをRAMユーザーにアタッチする必要があります。 このポリシーは、RAMユーザーに必要なRAMロールを引き受ける権限を付与します。 詳細については、「RAMユーザーへの権限付与」をご参照ください。

{
     "Action": "ram:PassRole",
     "Effect": "Allow",
     "Resource": "*"
 }