Tous les produits
Search
Centre de documentation

MaxCompute:USE_WRAPPED_KEYSET

Dernière mise à jour :Sep 08, 2026

Utilisez MaxCompute avec Key Management Service (KMS) pour gérer les clés. Cette rubrique décrit la fonction USE_WRAPPED_KEYSET. Elle convertit un jeu de clés encapsulé en jeu de clés de base, utilisé comme paramètre dans les fonctions de chiffrement ou de déchiffrement des données.

Informations générales et prérequis

MaxCompute s'intègre à KMS pour la gestion des clés. Vous générez un jeu de clés encapsulé en chiffrant un jeu existant avec une clé KMS. La fonction USE_WRAPPED_KEYSET convertit le jeu de clés encapsulé, produit par la fonction NEW_WRAPPED_KEYSET, en jeu de clés de base. Ce dernier sert de paramètre aux fonctions de chiffrement ou de déchiffrement. Utilisez également USE_WRAPPED_KEYSET pour récupérer les informations d'un jeu de clés encapsulé et les conserver pour la maintenance.

Avant d'utiliser la fonction USE_WRAPPED_KEYSET, vérifiez les prérequis suivants :

  • Un jeu de clés encapsulé a été généré via la fonction NEW_WRAPPED_KEYSET. Pour plus d'informations, consultez la rubrique NEW_WRAPPED_KEYSET.

  • Une clé KMS a été créée et son Alibaba Cloud Resource Name (ARN) a été récupéré. Le paramètre kms_cmk_arn spécifie cet ARN. Un rôle RAM dispose des autorisations nécessaires pour utiliser cette clé.

Syntaxe

binary USE_WRAPPED_KEYSET(string <kms_cmk_arn> , string <role-arn>, string <wrapped_keyset> [,string <role_chain>])

Paramètres

  • kms_cmk_arn : obligatoire. ARN de la clé maître client (CMK) KMS du jeu de clés à chiffrer. Format : 'acs:kms:<RegionId>:<UserId>:key/<CmkId>'. RegionId correspond à l'ID de région, UserId à l'ID utilisateur et CmkId à l'ID de la CMK. Récupérez l'ARN depuis la page Key Details de la console KMS.

  • role_arn : obligatoire. ARN du rôle RAM disposant des autorisations sur KMS. MaxCompute doit endosser ce rôle. Format : 'acs:ram:${<userAID>}:role/${<roleName>}'. userAID correspond à l'ID utilisateur et roleName au nom du rôle.

  • wrapped_keyset : obligatoire. Jeu de clés encapsulé existant.

  • role_chain : facultatif.

    Chaîne de rôles pour l'autorisation des utilisateurs. Format : 'acs:ram:<userAID>:role/<roleName2>,acs:ram:<userBID>:role/<roleName3>},...'. Les chaînes de rôles permettent d'appeler des jeux de clés encapsulés entre différents comptes Alibaba Cloud.

Valeur renvoyée

Renvoie un jeu de clés anonymisé de type STRUCT. Utilisez la fonction get_json_object pour extraire les champs liés au jeu de clés selon vos besoins métier.

Exemples

Remarque

Exécutez l'exemple de code ci-dessous contenant des variables dans l'éditeur de code, ou intégrez directement les variables dans l'instruction SQL. MaxCompute ne prend pas en charge les portées de variables entre plusieurs instructions SQL.

Récupérez les informations sur l'algorithme de clé d'un jeu de clés encapsulé.

@kms_resource_keyId := 'acs:kms:${<RegionId>}:${<UserId>}:key/${<CmkId>}';
@role_arn := 'acs:ram:${<UserId>}:role/${<roleName>}';
@origin_key := unhex('<wrapped_keyset>');
@role_chain := 'acs:ram:${<UserAId>}:role/${<roleName2>},acs:ram:${<UserBId>}:role/${<roleName3>}';
@use_keyset_new := USE_WRAPPED_KEYSET(@kms_resource_keyId, @role_arn, @origin_key, @role_chain);

select get_json_object(get_json_object(use_keyset_new.wrapped_keyset_info,'$.masked_keyset'), '$.key[0].key_meta_data.type');

Le résultat suivant s'affiche :

+-----+
| _c0 |
+-----+
| AES-GCM-256 |
+-----+