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

Tablestore:データ暗号化

最終更新日:May 15, 2025

Tablestore は保存データの暗号化を提供します。テーブルを作成する際に暗号化方式を設定することで、データセキュリティを確保できます。

背景情報

Key Management Service (KMS) は、キー管理とデータ暗号化、および安全な認証情報管理のためのワンストップ プラットフォームです。シンプルで信頼性が高く、安全でコンプライアンスに準拠したデータ暗号化保護と認証情報管理機能を提供します。 KMS は、暗号化インフラストラクチャ、データ暗号化プロダクト、およびシークレット管理プロダクトの調達、運用および保守 (O&M)、研究開発 (R&D) のコストを削減するのに役立ちます。これにより、ビジネスの開発に集中できます。

Tablestore は、Key Management Service (KMS) キー暗号化と Bring Your Own Key (BYOK) 暗号化の 2 つの暗号化方式を提供します。どちらの方式でも、暗号化キーは KMS から取得する必要があります。要件に基づいて暗号化方式を選択してください。

  • KMS キー暗号化: KMS デフォルトキーのマスターキーを使用してサービスキーを生成し、データを暗号化します。データの読み取り時には自動的に復号されます。この暗号化方式を使用する場合、KMS インスタンスを購入または作成する必要はありません。

  • BYOK 暗号化: KMS で作成およびホストするカスタマーマスターキー (CMK) を使用してデータを暗号化します。この方式を使用する前に、KMS コンソールで CMK を作成し、Tablestore サービスが偽装するための暗号化および復号権限を持つ RAM ロールを作成する必要があります。

使用上の注意

  • データ暗号化機能は、テーブルの作成時にのみ有効化および設定できます。テーブルの作成後、暗号化機能を無効にすることはできません。注意して進めてください。

  • データ暗号化機能は、現在、次のリージョンでサポートされています。中国 (杭州)、中国 (上海)、中国 (北京)、中国 (張家口)、中国 (ウランチャブ)、中国 (深セン)、中国 (香港)、日本 (東京)、シンガポール、インドネシア (ジャカルタ)、ドイツ (フランクフルト)、英国 (ロンドン)、米国 (シリコンバレー)、米国 (バージニア)。

暗号化方式

KMS キー暗号化

KMS キーを使用してデータを暗号化する場合は、KMS インスタンスを購入または作成する必要はありません。 Tablestore コンソールでテーブルを作成するときに、暗号化スイッチをオンにして、暗号化タイプとして kms service master key を選択するだけです。

  1. Tablestore 管理コンソール にログオンします。

  2. ページ上部で、リージョンを選択します。

  3. [概要] ページで、インスタンス名をクリックするか、[アクション] 列の [インスタンスの管理] をクリックします。

  4. [インスタンスの詳細] タブで、[テーブルの作成] をクリックします。

  5. [テーブルの作成] ダイアログボックスで、テーブルパラメータを設定します。

    1. テーブル名を入力し、プライマリキーを設定します。

    2. [暗号化] スイッチをオンにし、[暗号化タイプ][Kms サービスマスターキー] を選択します。

      image

  6. [作成] をクリックします。

テーブルの作成後、テーブル名をクリックし、[基本情報] タブの [基本情報] セクションにある [暗号化] フィールドを確認して、データ暗号化機能が有効になっているかどうかを確認できます。

image

BYOK 暗号化

BYOK 方式を使用してデータを暗号化する場合は、テーブルを作成する前にキー ID と RAM ロール ARN を取得する必要があります。

  1. キー ID: Tablestore はこのキーを使用してデータを暗号化および復号します。

    1. Key Management Service コンソール にログオンします。

    2. 左側のナビゲーションウィンドウで [キー] をクリックし、カスタマーマスターキーリストからキーを選択して、キー ID をコピーします。新しいソフトウェア保護キーを作成することもできます。詳細については、「ソフトウェア保護キーを作成する」をご参照ください。

      image

  2. RAM ロール ARN: Tablestore は RAM ロールを偽装することで Key Management Service を呼び出してデータを暗号化および復号します。 RAM ロールを作成し、権限を付与する必要があります。

    1. RAM ロールを作成します。

      1. Resource Access Management コンソール にログオンします。

      2. [ID] > [ロール] をクリックし、[ロール] セクションで [ロールの作成] をクリックします。

      3. 信頼できるエンティティタイプとして [Alibaba Cloud サービス] を選択し、信頼できるサービス名として [Tablestore/OTS] を選択します。 [OK] をクリックします。

        image

      4. [ロールの作成] ダイアログボックスで、[ロール名] (例: TablestoreBYOK) を入力し、[OK] をクリックします。プロンプトに従って検証を完了し、ロールを作成します。

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

      1. Resource Access Management コンソール にログオンします。

      2. [権限] > [ポリシー] をクリックし、[ポリシー] セクションで [ポリシーの作成] をクリックします。

      3. [スクリプト] を選択し、次のスクリプトコンテンツを入力して、[OK] をクリックします。

        {
            "Version": "1",
            "Statement": [
                {
                    "Effect": "Allow",
                    "Action": [
                        "kms:Decrypt", // 復号
                        "kms:GenerateDataKey" // データキーの生成
                    ],
                    "Resource": [
                        "*"
                    ]
                }
            ]
        }
      4. [ポリシーの作成] ダイアログボックスで、[ポリシー名] (例: TablestoreBYOKPolicy) を入力し、[OK] をクリックします。

    3. カスタムポリシーを RAM ロールに付与します。

      1. Resource Access Management コンソール にログオンします。

      2. [ID] > [ロール] をクリックし、ロールリストの [アクション] 列で [権限の追加] をクリックします。

      3. [権限の追加] タブの [ポリシー] セクションで、ポリシー名を入力して検索し、カスタムポリシーを選択して、[OK] をクリックして権限付与を完了します。

        image

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

      1. Resource Access Management コンソール にログオンします。

      2. [ID] > [ロール] をクリックし、ロールリストでロール名をクリックします。

      3. [基本情報] セクションから ARN をコピーします。

        image

キー ID と RAM ロール ARN を取得したら、Tablestore コンソールでテーブルを作成し、BYOK 方式を使用して暗号化できます。

  1. Tablestore 管理コンソール にログオンします。

  2. ページ上部で、リージョンを選択します。

  3. [概要] ページで、インスタンス名をクリックするか、[アクション] 列の [インスタンスの管理] をクリックします。

  4. [インスタンスの詳細] タブで、[テーブルの作成] をクリックします。

  5. [テーブルの作成] ダイアログボックスで、テーブルパラメータを設定します。

    1. テーブル名を入力し、プライマリキーを設定します。

    2. [暗号化] スイッチをオンにし、[暗号化タイプ][BYOK カスタムキー] を選択し、キー ID と ARN を入力します。

      image

  6. [作成] をクリックします。

テーブルの作成後、テーブル名をクリックし、[基本情報] タブの [基本情報] セクションにある [暗号化] フィールドを確認して、データ暗号化機能が有効になっているかどうかを確認できます。

image

開発統合

Java SDKGo SDK を使用してテーブルを作成する際に、テーブルの暗号化を設定できます。

課金

データ暗号化料金は KMS によって課金されます。詳細については、「Key Management Service の課金」をご参照ください。

関連情報