複数のプロジェクト、リージョン、またはAlibaba Cloudアカウントのデータを監視するには、Alibaba CloudアカウントまたはRAMユーザーを使用して、必要なLogstoreまたはMetricstoreからデータを読み取る権限をLog Serviceに付与する必要があります。 RAMユーザーには、アラート機能に関連する操作を実行する権限が必要です。

権限の付与方法

デフォルトの方法を使用して、Log Serviceを承認できます。 ビジネス要件に基づいて、組み込みロールまたはカスタムロールをLog Serviceに割り当てることもできます。 承認が完了すると、Log ServiceはLogstoreとMetricstoreにアクセスできます。

認証方法シナリオ
デフォルトの方法を使用アラートモニタリングルールを使用してプロジェクトのLogstoreおよびMetricstoreのデータをモニタリングする場合、デフォルトの方法を使用してLog Serviceを承認できます。 この場合、アラートモニタリングルールはプロジェクトに属します。
組み込みロールをLog Serviceに割り当てるプロジェクトに属するアラートモニタリングルールを使用して、他のプロジェクトのLogstoreおよびMetricstoreのデータをモニタリングする場合、組み込みのロールをLog Serviceに割り当てることができます。 これらのプロジェクトは同じAlibaba Cloudアカウントに属しますが、データは異なるプロジェクトまたはリージョンに保存されます。
Log Serviceへのカスタムロールの割り当てアラートモニタリングルールを使用して、複数のAlibaba Cloudアカウント間、または同じAlibaba Cloudアカウントに属する複数のリージョンまたはプロジェクト間のデータをモニタリングする場合、Log Serviceにカスタムロールを割り当てることができます。 カスタムロールを使用して、きめ細かいアクセス制御を実行できます。
説明 RAM ユーザーに、Metricsstore または Logstore 内のデータに対するクエリを許可することができます。 この場合、RAM ユーザーは組み込みロールまたはカスタムロールを引き受ける必要があります。 このような場合、RAM ユーザーにロールの ram:PassRole 権限を付与する必要があります。 次のスクリプトは、権限ポリシーを示しています。 詳細については、「RAM ユーザーに対するアラート管理の権限付与」をご参照ください。
{
     "Action": "ram:PassRole",
     "効果": "許可"、
     "Resource": "acs:ram:: Alibaba CloudアカウントID: role ARN"
 }

デフォルトの方法で Log Service を承認する

アラートモニタリングルールを使用してプロジェクトのLogstoreおよびMetricstoreのデータをモニタリングする場合、デフォルトの方法を使用してLog Serviceを承認できます。 アラートモニタリングルールの作成時にデフォルトの方法でLog Serviceを許可するには、[クエリ統計] ダイアログボックスの [詳細設定] タブの [許可] ドロップダウンリストから [デフォルト] を選択します。 詳細については、「ログに対するアラートモニタリングルールの作成」をご参照ください。

組み込みロールをLog Serviceに割り当てる

アラートモニタリングルールを使用して、同じAlibaba Cloudアカウントに属する複数のプロジェクトのLogstoreおよびMetricstoreのデータをモニタリングする場合、AliyunSLSAlertMonitorRole組み込みロールをLog Serviceに割り当てることができます。 これにより、Log ServiceはLogstoreおよびMetricstoreからデータを読み取ることができます。 アラートモニタリングルールを作成するときにAliyunSLSAlertMonitorRole組み込みロールをLog Serviceに割り当てるには、次の手順を実行します。 詳細については、「ログに対するアラートモニタリングルールの作成」をご参照ください。

  1. [アラートモニタリングルール] パネルで、[クエリ統計] フィールドのテキストボックスをクリックします。
  2. [詳細設定] タブで、[権限付与] ドロップダウンリストから [組み込みロール] を選択します。
  3. 初めて組み込みロールを設定する場合は、[権限付与] をクリックします。
    説明 RAMユーザーを使用する場合は、Alibaba Cloudアカウントを使用してRAMユーザーに権限を付与する必要があります。
    neizih
  4. [クラウドリソースアクセス権限付与] ページで、 [権限付与ポリシーの確定] をクリックします。

Log Serviceにカスタムロールを割り当てて、Alibaba Cloudアカウント内のデータを監視する

カスタムロールを使用して、同じAlibaba Cloudアカウントに属する複数のプロジェクトのLogstoreおよびMetricstoreのデータを監視できます。

次の手順を実行する前に、RAMロールを作成する必要があります。 詳細については、「サービスロール」をご参照ください。

  1. RAM コンソール にログインします。
  2. アラートを管理するポリシーを作成します。
    1. 左側のナビゲーションウィンドウから、 [権限] > [ポリシー] を選択します。
    2. [ポリシー] ページで [ポリシーの作成] をクリックします。
    3. [カスタムポリシーの作成] ページでパラメーターを設定し、[OK] をクリックします。 次の表は、各パラメーターの説明です。
      項目説明
      ポリシー名ポリシーの名前 (sls-alert-monitor-1-policyなど) 。
      設定モード [スクリプト] をクリックします。
      ポリシードキュメントポリシーの内容。 エディターのコンテンツを次のスクリプトに置き換えます。 プロジェクト名を、アラートモニタリングルールを作成するプロジェクトの名前に置き換えます。

      ポリシーを変更して、きめ細かいアクセス制御を実行できます。 たとえば、1つのプロジェクトにのみアラートモニタリングルールを作成するようにロールに権限を付与する場合、次のポリシーのリソース要素でプロジェクトを指定できます。たとえば、acs:log:*:*:project/ my-projectです。

      {
        "Statement": [
          {
            "Action": [
              "log:ListProject"
            ],
            "効果": "許可"、
            "リソース":[
              "acs:log:*:*:*"
            ]
          },
          {
            "Action": [
              "log:ListLogStores",
              "log:GetLogStoreLogs",
              "log:GetIndex"
            ],
            "効果": "許可"、
            "リソース":[
              "acs:log:*:*:project/Project name/*"
            ]
          }
        ],
        "バージョン": "1"
      }
    4. [OK] をクリックします。
  3. RAM ロールにポリシーを割り当てます。
    1. 左側のナビゲーションウィンドウで、[ID] > [ロール] を選択します。
    2. [ロール] ページで対象の RAM ロールを確認し、[操作] 列で [権限の追加] をクリックします。
    3. [カスタムポリシー] タブで、ステップ2で作成したポリシーを選択します。 そして、[OK] をクリックします。 この例では、ポリシーは sls-alert-monitor-1-policy です。
    4. 承認結果を確認し、[完了] をクリックします。
    5. [ロール] ページで、RAMロールの名前をクリックします。
    6. 表示されるページで、[信頼ポリシー管理] タブをクリックします。 次に、[信頼ポリシーの編集] をクリックします。
      Service要素にlog.aliyuncs.comを追加します。 以下は、Alibaba Cloud アカウントのリソース管理を許可する一時的なトークンを Log Service に取得させるポリシーです。
      {
          "Statement": [
              {
                  "Action": "sts:AssumeRole",
                  "効果": "許可"、
                  "Principal": {
                      "Service": [
                          "log.aliyuncs.com"
                      ]
                  }
              }
          ],
          "バージョン": "1"
      }
  4. RAMロールの詳細ページの [基本情報] セクションで、Alibaba Cloudリソース名 (ARN) を取得します。
    権限付与の完了後、アラートモニタリングルールを作成するときにRAMロールのARNを使用できます。 詳細については、「ログに対するアラートモニタリングルールの作成」をご参照ください。 Log Service にカスタムロールを割り当て、単一の Alibaba Cloud アカウント内のデータをモニタリングする

Log Serviceにカスタムロールを割り当てて、複数のAlibaba Cloudアカウントのデータを監視する

カスタムロールを使用して、複数のAlibaba CloudアカウントのLogstoreおよびMetricstoreのデータをモニタリングできます。 たとえば、Alibaba CloudアカウントAを使用してアラートモニタリングルールを作成し、そのルールを使用してAlibaba CloudアカウントBのLogstoreおよびMetricstoreのデータをモニタリングできます。Log Serviceにカスタムロールを割り当てるには、次の手順を実行します。

次の手順を実行する前に、RAMロールを作成する必要があります。 詳細については、「サービスロール」をご参照ください。

  1. Alibaba CloudアカウントBを使用して、RAMコンソールにログインします。
  2. アラートを管理するポリシーを作成します。
    1. 左側のナビゲーションウィンドウから、 [権限] > [ポリシー] を選択します。
    2. [ポリシー] ページで [ポリシーの作成] をクリックします。
    3. [カスタムポリシーの作成] ページでパラメーターを設定し、[OK] をクリックします。 次の表は、各パラメーターの説明です。
      項目説明
      ポリシー名ポリシーの名前 (sls-alert-monitor-2-policyなど) 。
      設定モード [スクリプト] をクリックします。
      ポリシードキュメントポリシーの内容。 エディターのコンテンツを次のスクリプトに置き換えます。 プロジェクト名を、アラートモニタリングルールを作成するプロジェクトの名前に置き換えます。

      ポリシーを変更して、きめ細かいアクセス制御を実行できます。 たとえば、1つのプロジェクトにのみアラートモニタリングルールを作成するようにロールに権限を付与する場合、次のポリシーのリソース要素でプロジェクトを指定できます。たとえば、acs:log:*:*:project/ my-projectです。

      {
        "Statement": [
          {
            "Action": [
              "log:ListProject"
            ],
            "効果": "許可"、
            "リソース":[
              "acs:log:*:*:*"
            ]
          },
          {
            "Action": [
              "log:ListLogStores",
              "log:GetLogStoreLogs",
              "log:GetIndex"
            ],
            "効果": "許可"、
            "リソース":[
              "acs:log:*:*:project/Project name/*"
            ]
          }
        ],
        "バージョン": "1"
      }
    4. [OK] をクリックします。
  3. RAM ロールにポリシーを割り当てます。
    1. 左側のナビゲーションウィンドウで、[ID] > [ロール] を選択します。
    2. [ロール] ページで対象の RAM ロールを確認し、[操作] 列で [権限の追加] をクリックします。
    3. [カスタムポリシー] タブで、ステップ2で作成したポリシーを選択します。 そして、[OK] をクリックします。 この例では、ポリシーは sls-alert-monitor-2-policy です。
    4. 承認結果を確認し、[完了] をクリックします。
    5. [ロール] ページで、RAMロールの名前をクリックします。
    6. 表示されるページで、[信頼ポリシー管理] タブをクリックします。 次に、[信頼ポリシーの編集] をクリックします。
      Alibaba CloudアカウントA@log.aliyuncs.comのIDサービス要素に追加します。 Alibaba CloudアカウントAのIDをAlibaba CloudアカウントのIDに置き換えます。 アカウント管理コンソールでAlibaba CloudアカウントのIDを確認できます。 以下のポリシーを使用すると、Alibaba Cloud のアカウント A は、Alibaba Cloud のアカウント B が Logstore および Metricstore のデータをモニタリングするための一時トークンを取得できます。
      {
          "Statement": [
              {
                  "Action": "sts:AssumeRole",
                  "効果": "許可"、
                  "Principal": {
                      "Service": [
                          "ID of Alibaba Cloud Account A@log.aliyuncs.com",
                          "log.aliyuncs.com"
                      ]
                  }
              }
          ],
          "バージョン": "1"
      }
  4. RAMロールの詳細ページの [基本情報] セクションで、ARNを取得します。
    権限付与の完了後、アラートモニタリングルールを作成するときにRAMロールのARNを使用できます。 詳細については、「ログに対するアラートモニタリングルールの作成」をご参照ください。 Log Service にカスタムロールを割り当て、単一の Alibaba Cloud アカウント内のデータをモニタリングする