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

Simple Log Service:カスタムRAMロールを使用してAlibaba Cloudアカウント内のデータにアクセスする

最終更新日:Jan 23, 2025

Object Storage Service (OSS) データシッピングジョブを実行すると、ジョブはログストアからデータを取得し、そのデータをOSSバケットに送信します。 ジョブに、必要なデータにアクセスするためのカスタムRAM (Resource Access Management) ロールを引き受ける権限を付与できます。 このトピックでは、カスタムRAMロールを使用してOSSデータシッピングジョブにデータへのアクセスを許可する方法について説明します。

前提条件

RAMロールが作成されます。 詳細については、「信頼できるAlibaba CloudサービスのRAMロールの作成」をご参照ください。

重要
  • RAMロールを作成するときは、[信頼できるエンティティの選択] パラメーターを [Alibaba Cloud Service] に設定し、[信頼できるサービスの選択] パラメーターを [Log Service] に設定する必要があります。

  • RAMロールの信頼ポリシーを確認します。 Service要素に少なくとも "log.aliyuncs.com" が含まれていることを確認します。

    {
      "Statement": [
        {
          "Action": "sts:AssumeRole",
          "Effect": "Allow",
          "Principal": {
            "Service": [
              "log.aliyuncs.com"
            ]
          }
        }
      ],
      "Version": "1"
    }

手順1: ログストアからデータを読み取る権限をRAMロールに付与する

RAMロールにログストアからデータを読み取る権限を付与した後、RAMロールをOSSデータ配布ジョブに割り当てて、ログストアからデータを読み取ることができます。

  1. にログインします。RAMコンソールAlibaba Cloudアカウントまたは管理者権限を持つRAMユーザーを使用します。

  2. Logstoreからデータを読み取る権限を付与するカスタムポリシーを作成します。

    権限付与に完全一致またはファジー一致を使用するポリシードキュメントを使用できます。

    認証の完全一致

    [ポリシーの作成] ページで、[JSON] タブをクリックします。 エディターの既存の内容を次のスクリプトに置き換えます。 詳細については、「JSONタブでカスタムポリシーを作成する」をご参照ください。

    重要

    交換プロジェクト名ログストア名ビジネス要件に基づいてポリシードキュメントで

    {
        "Version":"1",
        "Statement":[
            {
                "Action":[
                    "log:GetCursorOrData",
                    "log:ListShards"
                ],
                "Resource":[
                    "acs:log:*:*:project/Project name/logstore/Logstore name"
                ],
                "Effect":"Allow"
            }
        ]
    }

    承認のためのファジーマッチ

    [ポリシーの作成] ページで、[JSON] タブをクリックします。 エディターの既存の内容を次のスクリプトに置き換えます。 詳細については、「JSONタブでカスタムポリシーを作成する」をご参照ください。

    重要
    • この例では、プロジェクトの名前はlog-project-dev-a、log-project-dev-b、およびlog-project-dev-cであり、Logstoreの名前はwebsite_a_log、website_b_log、およびwebsite_c_logです。

    • 交換log-project-dev-*ウェブサイト_*_log *ビジネス要件に基づいてポリシードキュメントで

    {
        "Version":"1",
        "Statement":[
            {
                "Action":[
                    "log:GetCursorOrData",
                    "log:ListShards"
                ],
                "Resource":[
                    "acs:log:*:*:project/log-project-dev-*/logstore/website_*_log*"
                ],
                "Effect":"Allow"
            }
        ]
    }
  3. 作成したカスタムポリシーをRAMロールにアタッチします。 詳細については、「」をご参照ください。RAMロールに権限を付与する.

手順2: OSSバケットにデータを書き込む権限をRAMロールに付与する

OSSバケットにデータを書き込む権限をRAMロールに付与した後、RAMロールをOSSデータシッピングジョブに割り当てて、ログストアから読み取られたデータをOSSバケットに書き込むことができます。

  1. にログインします。RAMコンソールAlibaba Cloudアカウントまたは管理者権限を持つRAMユーザーを使用します。

  2. OSSバケットにデータを書き込む権限を付与するカスタムポリシーを作成します。

    [ポリシーの作成] ページで、[JSON] タブをクリックします。 エディターの既存の内容を次のスクリプトに置き換えます。 詳細については、「JSONタブでカスタムポリシーを作成する」をご参照ください。

    {
        "Version": "1",
        "Statement": [
            {
                "Action": [
                    "oss:PutObject"
                ],
                "Resource": "*",
                "Effect": "Allow"
            }
        ]
    }
    説明

    OSSリソースにきめ細かいアクセス制御を実装する場合は、RAMポリシーに記載されている手順に基づいてポリシーを設定できます。

  3. 作成したカスタムポリシーをRAMロールにアタッチします。 詳細については、「」をご参照ください。RAMロールに権限を付与する.

次に何をすべきか

RAMロールのAlibaba Cloudリソース名 (ARN) を取得します。 詳細については、「」をご参照ください。RAMロールに関する情報の表示.

OSSにデータを送信するためのOSSデータシッピングジョブを作成する場合、Logstore Read RAM RoleまたはOSS Write RAM Roleカスタムロールを選択した場合、ARNが必要です。 詳細については、「OSSデータ配布ジョブの作成 (新バージョン) 」をご参照ください。