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

Data Online Migration:準備

最終更新日:Apr 12, 2025

このトピックでは、データ移行前に実行する必要がある操作について説明します。

ステップ 1: 移行先バケットを作成する

移行されたデータを格納するために、OSS コンソールで移行先バケットを作成します。詳細については、「バケットを作成する」をご参照ください。

ステップ 2: RAM ユーザーを作成し、RAM ユーザーに権限を付与する

重要
  • Resource Access Management (RAM) ユーザーは、データ移行タスクを実行するために使用されます。 RAM ロールを作成し、RAM ユーザーとしてデータ移行タスクを実行する必要があります。 ソースまたは移行先 OSS バケットを所有する Alibaba Cloud アカウント内に RAM ユーザーを作成することをお勧めします。

  • RAM ユーザーを作成していない場合は、RAM ユーザーを作成し、RAM ユーザーに権限を付与することができます。

Alibaba Cloud アカウントの RAM コンソールにログインします。[ユーザー] ページで、作成した RAM ユーザーの Alibaba Cloud アカウントの RAM コンソールにログオンします。[ユーザー] ページで、作成した RAM ユーザーの [権限の追加][アクション] 列の をクリックします。 列の をクリックします。

  1. システムポリシー: AliyunOSSImportFullAccess (OSS データオンライン移行の権限を管理します)。

  2. カスタムポリシー: ポリシーには、ram:CreateRoleram:CreatePolicyram:AttachPolicyToRole、および ram:ListRoles 権限が含まれている必要があります。

    権限管理については、カスタムポリシーを作成するを参照できます。以下は、ポリシースクリプトコードです。

    {
        "Version":"1",
        "Statement":[
            {
                "Effect":"Allow", // 許可
                "Action":[
                    "ram:CreateRole", // ロールの作成
                    "ram:CreatePolicy", // ポリシーの作成
                    "ram:AttachPolicyToRole", // ロールへのポリシーのアタッチ
                    "ram:ListRoles" // ロールのリスト表示
                ],
                "Resource":"*"
            }
        ]
    }

ステップ 3: 移行先バケットに権限を付与する

移行先バケットが現在の Alibaba Cloud アカウントに属しているかどうかに基づいて、対応する操作を実行します。

移行先バケットが現在の Alibaba Cloud アカウントに属している場合

  • 自動承認

    データオンライン移行データを移行する コンソールで自動承認を使用することをお勧めします。詳細については、「データを移行する」トピックの「ステップ 3: 移行先データアドレスを作成する」セクションをご参照ください。

  • 手動承認

    説明

    以下のシナリオでは、手動承認を実行できます。

    • 複数のソースバケットに対する権限を 1 つの RAM ロールに付与する場合。これにより、複数のソースバケットを効果的に管理できます。

    • 現在の Alibaba Cloud アカウント内の RAM ロールの数が上限に近いので、これ以上 RAM ロールを作成したくない場合。

    • 自動承認が適用できないか、使用できない場合。

    1. データを移行するために使用する RAM ロールを作成する

    RAM ユーザーが作成された RAM コンソールにログオンします。[ロール] ページで、[ロールの作成] をクリックします。

    1. プリンシパルタイプ: [クラウドサービス] を選択します。

    2. プリンシパル名: [Data Transport] を選択します。

    3. : RAM ロール名を入力します。 RAM ロール名は小文字にする必要があります。

    lQLPKIBPhyQhs7vNAlPNA-mwb_9Zfe8j6sMHtpv2syNfAA_1001_595

    image

    2. 移行先バケットに対する権限を RAM ロールに付与する

    [ロール] ページで、作成した RAM ロールを見つけ、[アクション] 列の 権限の付与アクション をクリックします。

    • カスタムポリシー: oss:List*oss:Get*oss:Put*、および oss:AbortMultipartUpload* 権限を含むカスタムポリシーを RAM ロールにアタッチします。

    カスタムポリシーのアタッチ方法の詳細については、カスタムポリシーを作成するを参照してください。次のサンプルコードは、カスタムポリシーの例を示しています。

    説明

    次のポリシーは参照用です。<myDestBucket> を 宛先バケットの名前 に置き換えます。

    OSS の RAM ポリシーの詳細については、RAM ポリシーの一般的な例を参照してください。

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow", // 許可
          "Action": [
            "oss:List*", // オブジェクトのリスト表示
            "oss:Get*", // オブジェクトの取得
            "oss:Put*", // オブジェクトの書き込み
            "oss:AbortMultipartUpload" // マルチパートアップロードの中止
          ],
          "Resource": [
            "acs:oss:*:*:<myDestBucket>", // バケットレベルのリソース
            "acs:oss:*:*:<myDestBucket>/*" // オブジェクトレベルのリソース
          ]
        }
      ]
    }

移行先バケットが現在の Alibaba Cloud アカウントに属していない場合

1. データを移行するために使用する RAM ロールを作成する

RAM ユーザーが作成された RAM コンソールにログオンします。[ロール] ページで、[ロールの作成] をクリックします。

  1. プリンシパルタイプ: [クラウドサービス] を選択します。

  2. プリンシパル名: [Data Transport] を選択します。

  3. : RAM ロール名を入力します。 RAM ロール名は小文字にする必要があります。

lQLPKIBPhyQhs7vNAlPNA-mwb_9Zfe8j6sMHtpv2syNfAA_1001_595

image

2. 移行先バケットに対する権限を RAM ロールに付与する

重要

ポリシー文を指定してバケットポリシーを設定し、必要な権限を RAM ロールに付与する場合、新しいバケットポリシーは既存のバケットポリシーを上書きします。新しいバケットポリシーに既存のバケットポリシーの内容が含まれていることを確認してください。そうでない場合、既存のバケットポリシーに基づく承認が失敗する可能性があります。

  1. 移行先バケットを所有する Alibaba Cloud アカウントで OSS コンソール にログインします。

  2. 左側のナビゲーションウィンドウで、[バケット] をクリックします。[バケット] ページで、移行先バケットの名前をクリックします。

  3. バケット詳細ページの左側のウィンドウで、[権限管理] > [バケットポリシー] を選択します。

  4. [バケットポリシー] タブで、[構文で追加] をクリックし、[編集] をクリックします。コードエディタで、カスタムバケットポリシーを入力します。次に、[保存] をクリックします。

    • RAM ロールに、デスティネーション バケット内のオブジェクトのリスト、読み取り、削除、およびオブジェクトの書き込み権限を付与します。

説明

次のポリシーは参照用です。[デスティネーション バケットの名前] を <otherDestBucket> に、デスティネーション バケットを所有する Alibaba Cloud アカウントの ID を <otherUid> に、[データオンライン移行コンソールにログインするために使用する Alibaba Cloud アカウントの ID] を <myUid> に、作成した RAM ロールの名前 を <roleName> に置き換えます。 詳細については、「RAM ポリシーの一般的な例」をご参照ください。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow", // 許可
      "Action": [
        "oss:List*", // オブジェクトのリスト表示
        "oss:Get*", // オブジェクトの取得
        "oss:Put*", // オブジェクトの書き込み
        "oss:AbortMultipartUpload" // マルチパートアップロードの中止
      ],
      "Principal": [  // 権限を付与されるプリンシパル
         "arn:sts::<myUid>:assumed-role/<roleName>/*" // ロールがアクセスできるリソース
      ],
      "Resource": [
        "acs:oss:*:<otherUid>:<otherDestBucket>", // バケットレベルのリソース
        "acs:oss:*:<otherUid>:<otherDestBucket>/*" // オブジェクトレベルのリソース
      ]
    }
  ]
}