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

MaxCompute:REWRAP_KEYSET

最終更新日:Mar 26, 2026

REWRAP_KEYSET 関数は、既存のラップされたキーセットを、新しい Key Management Service (KMS) カスタマーマスターキー (CMK) で再暗号化します。この関数を使用して、NEW_WRAPPED_KEYSET で生成されたラップされたキーセットを、別の KMS キーで再暗号化してください。

ラップされたキーセットの作成方法については、「NEW_WRAPPED_KEYSET」をご参照ください。

前提条件

実行前に、以下の条件を満たしていることを確認してください。

  • NEW_WRAPPED_KEYSET で生成されたラップされたキーセット

  • 新しい KMS CMK の ARN(kms_cmk_arn)が利用可能であること

  • 旧および新の KMS キーに対して権限を持つ RAM ロールが存在し、MaxCompute がそのロールを偽装できるよう許可されていること

構文

binary REWRAP_KEYSET(string <kms_cmk_arn>, string <role_arn>, string <wrapped_keyset> [, string <role_chain>])

パラメーター

パラメーター必須説明
kms_cmk_arnはい再暗号化に使用する新しい KMS CMK の ARN。フォーマット: 'acs:kms:<RegionId>:<UserId>:key/<CmkId>'キーの詳細ページ(KMS コンソール)から取得できます。
role_arnはい旧および新の KMS キーに対して権限を持つ RAM ロールの ARN。MaxCompute はこのロールを偽装して再暗号化を実行します。フォーマット: 'acs:ram::<UserId>:role/<roleName>'
wrapped_keysetはい再暗号化対象のラップされたキーセット。
role_chainいいえクロスアカウント認証用のロールチェーン。フォーマット: 'acs:ram:<UserAId>:role/<roleName2>,acs:ram:<UserBId>:role/<roleName3>,...'。Alibaba Cloud アカウント間でラップされたキーセットを呼び出す場合に使用します。

戻り値

再暗号化されたラップされたキーセットを、BINARY 値として返します。これを保存可能な文字列に変換するには、HEX 関数で呼び出しをラップします。詳細については、「HEX」をご参照ください。

説明

以下の例には変数プレースホルダーが含まれています。SQL モードで実行する場合は、各プレースホルダーを実際の値に置き換えてから実行するか、スクリプトモードで実行してください。

ラップされたキーセットの再暗号化

@origin_key := unhex('<wrapped_keyset>');
SELECT HEX(REWRAP_KEYSET(
  'acs:kms:cn-hangzhou:1**************7:key/key-hzz******************',
  'acs:ram::1**************7:role/kms',
  @origin_key
));

再暗号化とクロスアカウントアクセスの有効化

@origin_key  := unhex('<wrapped_keyset>');
@role_chain  := 'acs:ram:<UserAId>:role/<roleName2>,acs:ram:<UserBId>:role/<roleName3>';
SELECT HEX(REWRAP_KEYSET(
  'acs:kms:cn-hangzhou:1**************7:key/key-hzz******************',
  'acs:ram::1**************7:role/kms',
  @origin_key,
  @role_chain
));

role_chain パラメーターにより、他の Alibaba Cloud アカウントが再暗号化されたラップされたキーセットを利用する権限が付与されます。

参照

ドキュメント

説明

キーセットの使用ガイド

キーセット暗号化関数の使用方法について説明します。

NEW_KEYSET

指定されたアルゴリズムに基づいてキーセットを作成します。

ADD_KEY_TO_KEYSET

キーセットに新しいキーを追加し、そのキーをマスターキーとして設定します。

KEYSET_TO_JSON

BINARY 型のキーセットを読み取り可能な JSON 形式に変換し、キーセットの詳細を確認します。

KEYSET_FROM_JSON

JSON 型のキーセットを BINARY 型に変換します。

ROTATE_KEYSET

システムが自動的に新しいキーを生成し、それをマスターキーとして設定します。

NEW_WRAPPED_KEYSET

新しいラップされたキーセットを作成します。この関数では、KMS CMK の権限を持つロールを MaxCompute に付与します。また、ロールチェーンを使用して、他の Alibaba Cloud アカウントによるキーセットの復号を許可することもできます。

ROTATE_WRAPPED_KEYSET

既存の暗号化済みキーセットを復号し、キーのローテーションを実行した後、新しいキーでキーセットを再暗号化します。

USE_WRAPPED_KEYSET

ラップされたキーセットを基本キーセットに変換し、暗号化および復号関数のパラメーターとして使用できるようにします。また、ラップされたキーセットに関する情報を取得・保存することで、メンテナンスを容易にします。

ENHANCED_SYM_ENCRYPT

指定されたキーセットでデータを暗号化します。

ENHANCED_SYM_DECRYPT

指定されたキーセットでデータを復号します。

次のステップ

  • NEW_WRAPPED_KEYSET — ラップされたキーセットの作成

  • HEXBINARY 出力を保存可能な文字列に変換します