Tous les produits
Search
Centre de documentation

:CreateKey

Dernière mise à jour :Aug 06, 2026

Crée une clé maître client (CMK) pour le chiffrement d'enveloppe, les signatures numériques ou d'autres opérations cryptographiques.

Description de l'opération

  • Pour plus d'informations sur les stratégies d'accès requises pour qu'un utilisateur RAM ou un rôle RAM puisse appeler cette opération OpenAPI, consultez Resource Access Management.

  • Alibaba Cloud Key Management Service (KMS) prend en charge les spécifications courantes pour les clés symétriques et asymétriques. Pour plus d'informations, consultez Types de gestion des clés et spécifications des clés.

Testez maintenant

Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale. Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale.

Test

Autorisation RAM

Aucune autorisation n'est requise pour cette opération. En cas de problème, contactez le support technique.

Paramètres de requête

Paramètre

Type

Requis

Description

Exemple

Description

string

Non

La description de la clé.
La description peut comporter de 0 à 8 192 caractères.



exemple de description de clé

KeyUsage

string

Non

L'utilisation de la clé. Valeurs valides :

  • ENCRYPT/DECRYPT : chiffre et déchiffre des données.

  • SIGN/VERIFY : génère et vérifie des signatures numériques.

Valeur par défaut : si la clé prend en charge la vérification de signature, la valeur par défaut est SIGN/VERIFY. Sinon, la valeur par défaut est ENCRYPT/DECRYPT.

ENCRYPT/DECRYPT

Origin

string

Non

La source du matériel de clé. Valeurs valides :

  • Aliyun_KMS (par défaut) : le matériel de clé est généré par Alibaba Cloud KMS.

  • EXTERNAL : le matériel de clé est importé.

Remarque
  • La valeur respecte la casse.

Aliyun_KMS

ProtectionLevel

string

Non

Vous n'avez pas besoin de spécifier ce paramètre. KMS définit automatiquement un niveau de protection approprié pour votre clé.

Le niveau de protection de la clé. Valeurs valides :

  • SOFTWARE

  • HSM

Remarque
  • Si vous spécifiez DKMSInstanceId, ce paramètre est ignoré. Si l'instance est une instance de gestion de clés logicielle, le niveau de protection est SOFTWARE. Si l'instance est une instance de gestion de clés matérielle, le niveau de protection est HSM.

  • Si vous ne spécifiez pas DKMSInstanceId, laissez ce paramètre vide. KMS définit le niveau de protection. Si un HSM géré est disponible dans la région, KMS définit ce paramètre sur HSM. Sinon, KMS définit ce paramètre sur SOFTWARE. Pour plus d'informations, consultez Présentation de l'HSM géré.

SOFTWARE

EnableAutomaticRotation

boolean

Non

Indique si la rotation automatique des clés doit être activée. Valeurs valides :

  • true : active la rotation automatique des clés.

  • false (par défaut) : désactive la rotation automatique des clés.

Ce paramètre n'est valide que lorsque le type de gestion de clés de la clé prend en charge la rotation automatique. Pour plus d'informations, consultez Rotation des clés.

true

RotationInterval

string

Non

La période de rotation automatique. Le format est `integer[unit]`. `integer` indique la longueur de la période. `unit` indique l'unité de temps. Unités valides : d (jour), h (heure), m (minute) et s (seconde). Par exemple, 7d et 604800s représentent tous deux une période de 7 jours.

  • Si la clé est une clé par défaut, la valeur est 365d.

  • Si la clé est une clé protégée par logiciel, la valeur peut être comprise entre 7d et 365d.

  • Si la clé est une clé protégée par matériel, la rotation automatique n'est pas prise en charge.

Remarque

Ce paramètre est requis si vous définissez EnableAutomaticRotation sur true.

365d

KeySpec

string

Non

La spécification de la clé. Les valeurs valides varient en fonction du type de gestion des clés. Pour plus d'informations sur les spécifications des clés, les normes prises en charge et les algorithmes, consultez Types de gestion des clés et spécifications des clés.

Remarque

Si vous ne spécifiez pas ce paramètre, la spécification de la clé est Aliyun_AES_256 par défaut.

Aliyun_AES_256

DKMSInstanceId

string

Non

L'identifiant de l'instance KMS.

Remarque

Ce paramètre est requis lorsque vous créez une clé pour une instance KMS. Ce paramètre n'est pas requis lorsque vous créez une clé par défaut (clé maître).

kst-bjj62d8f5e0sgtx8h****

Tags

string

Non

Les balises à lier à la clé. Chaque balise se compose d'une paire clé-valeur (Key:Value), qui comprend une clé de balise et une valeur de balise.

Spécifiez un maximum de 20 balises. Pour spécifier plusieurs balises, utilisez le format suivant : [{"TagKey":"key1","TagValue":"value1"},{"TagKey":"key2","TagValue":"value2"},...].

Chaque clé de balise et valeur de balise peut comporter jusqu'à 128 caractères et peut contenir des lettres majuscules, des lettres minuscules, des chiffres, des barres obliques (/), des barres obliques inverses (), des traits de soulignement (_), des traits d'union (-), des points (.), des signes plus (+), des signes égal (=), des deux-points (:) et des arobases (@).

Remarque

La clé de balise ne peut pas commencer par aliyun ou acs:.

[{"TagKey":"chiffrement-de-disque","TagValue":"true"}]

Policy

string

Non

Le contenu de la stratégie de clé. La valeur est au format JSON. La stratégie peut comporter jusqu'à 32 768 octets. Pour plus d'informations sur les stratégies de clé, consultez Présentation des stratégies de clé. Si vous ne spécifiez pas ce paramètre, la stratégie d'identification par défaut est utilisée.

Une stratégie de clé contient les éléments suivants :

  • Version : la version de la stratégie de clé. Seule la version 1 est prise en charge.

  • Statement : les instructions de la stratégie de clé. Chaque stratégie de clé contient une ou plusieurs instructions.

Voici le format d'une stratégie de clé :

{
  "Version": "1",
  "Statement": [
    {
      "Sid": "Enable RAM User Permissions",
      "Effect": "Allow",
      "Principal": {
        "RAM": ["acs:ram::112890462****:root"]
      },
      "Action": [
        "kms:*"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "condition operator": {
          "condition key": "condition value"
        }
      }
    }
  ]
}

Détails concernant une instruction :

  • Sid : (Facultatif) L'identifiant d'instruction personnalisé. L'identifiant peut comporter jusqu'à 128 caractères et peut contenir des lettres majuscules (A-Z), des lettres minuscules (a-z), des chiffres (0-9) et des caractères spéciaux, notamment des traits de soulignement (_), des barres obliques (/), des signes plus (+), des signes égal (=), des points (.), des arobases (@) et des traits d'union (-).

  • Effect : (Requis) L'effet de l'instruction de stratégie. Valeurs valides : Allow et Deny.

  • Principal : (Requis) Le principal auquel l'autorisation est accordée. Définissez ce paramètre sur le compte Alibaba Cloud actuel (le compte Alibaba Cloud auquel la clé appartient), un utilisateur RAM ou un rôle RAM du compte Alibaba Cloud actuel, ou un utilisateur RAM ou un rôle RAM d'un autre compte Alibaba Cloud.

  • Action : (Requis) Les opérations d'API autorisées ou refusées. La valeur doit commencer par "kms:". Pour obtenir la liste des opérations prises en charge, consultez Présentation des stratégies de clé. Si vous spécifiez une opération qui ne figure pas dans la liste, le paramètre ne prend pas effet.

  • Resource : (Requis) La valeur peut uniquement être *, ce qui indique la clé KMS actuelle.

  • Condition : (Facultatif) Les conditions pour que l'autorisation prenne effet. Utilisez les conditions pour évaluer le contexte d'une requête d'API afin de déterminer s'il faut appliquer l'instruction de stratégie. Le format est "Condition": {"condition operator": {"condition key": "condition value"}}. Pour plus d'informations, consultez Présentation des stratégies de clé.

Remarque

Après avoir accordé des autorisations à un utilisateur RAM ou à un rôle RAM d'un autre compte Alibaba Cloud, utilisez ce compte pour accorder à l'utilisateur RAM ou au rôle RAM les autorisations d'utiliser la clé dans la console RAM. L'utilisateur RAM ou le rôle RAM ne peut utiliser la clé qu'une fois cette opération terminée. Pour plus d'informations, consultez Stratégies personnalisées pour Key Management Service, Accorder des autorisations à un utilisateur RAM et Accorder des autorisations à un rôle RAM.

{"Statement":[{"Action":["kms:*"],"Effect":"Allow","Principal":{"RAM":["acs:ram::119285303511****:*"]},"Resource":["*"],"Sid":"stratégie de clé par défaut kms"},{"Action":["kms:List*","kms:Describe*","kms:Create*","kms:Enable*","kms:Disable*","kms:Get*","kms:Set*","kms:Update*","kms:Delete*","kms:Cancel*","kms:TagResource","kms:UntagResource","kms:ImportKeyMaterial","kms:ScheduleKeyDeletion"],"Effect":"Allow","Principal":{"RAM":["acs:ram::119285303511****:user/for_test_policy"]},"Resource":["*"]}],"Version":"1"}

KeyStorageMechanism

string

Non

L'emplacement de stockage de la clé. Ce paramètre n'est valide que lorsque DKMSInstanceId est spécifié pour une instance de gestion de clés matérielle. Valeurs valides :

  • HsmInternal (par défaut) : la clé est stockée dans un HSM et ne prend pas en charge la rotation.

  • HsmEncryptedDatabase : la clé est stockée dans une base de données.

    • Clés symétriques : la rotation est prise en charge.

    • Clés asymétriques : la rotation n'est pas prise en charge.

HsmInternal

Pour plus d'informations sur les paramètres de requête courants, consultez Paramètres courants.

Éléments de réponse

Élément

Type

Description

Exemple

object

RequestId

string

L'identifiant de la requête. Cet identifiant est un identifiant unique global (GUID) généré par Alibaba Cloud pour la requête. Utilisez cet identifiant pour résoudre les problèmes.

381D5D33-BB8F-395F-8EE4-AE3BB4B523C4

KeyMetadata

object

Les métadonnées de la clé.

KeyId

string

L'identifiant unique global (GUID) de la clé.

key-hzz62f1cb66fa42qo****

NextRotationDate

string

L'heure à laquelle la prochaine rotation est planifiée.

Ce paramètre n'est renvoyé que lorsque la valeur de AutomaticRotation est Enabled ou Suspended.

2024-03-25T10:00:00Z

KeyState

string

L'état de la clé.
Pour plus d'informations, consultez Impact de l'état de la CMK sur les appels d'API.



Enabled

RotationInterval

string

La période de rotation automatique de la clé. La valeur est en secondes. La valeur est un entier suivi du caractère s. Par exemple, une période de rotation de 7 jours correspond à 604800s.

Ce paramètre n'est renvoyé que lorsque la valeur de AutomaticRotation est Enabled ou Suspended.

31536000s

Arn

string

L'Alibaba Cloud Resource Name (ARN) de la clé.

acs:kms:cn-qingdao:154035569884****:key/key-hzz62f1cb66fa42qo****

Creator

string

Le créateur de la clé.

154035569884****

LastRotationDate

string

L'heure à laquelle la dernière rotation a été effectuée. L'heure est au format UTC.
Si la clé est nouvelle, cette valeur correspond à l'heure de génération de la version initiale de la clé.



2023-03-25T10:00:00Z

DeleteDate

string

L'heure planifiée pour la suppression de la clé. Pour plus d'informations, consultez ScheduleKeyDeletion .

Ce paramètre n'est renvoyé que lorsque la valeur de KeyState est PendingDeletion.

2025-03-25T10:00:00Z

PrimaryKeyVersion

string

L'identifiant de la version principale actuelle de la clé.

7ce1d081-06cb-42e6-aab6-5c5de030****

Description

string

La description de la clé.

exemple de description de clé

KeySpec

string

La spécification de la clé.

Aliyun_AES_256

Origin

string

La source du matériel de clé.

Aliyun_KMS

MaterialExpireTime

string

L'heure d'expiration du matériel de clé. L'heure est au format UTC.
Si cette valeur est vide, le matériel de clé n'expire pas.



2025-03-25T10:00:00Z

AutomaticRotation

string

Indique si la rotation automatique des clés est activée. Valeurs valides :

  • Enabled : la rotation automatique est activée.

  • Disabled : la rotation automatique est désactivée.

  • Suspended : la rotation automatique est suspendue.

Enabled

ProtectionLevel

string

Le niveau de protection de la clé.

SOFTWARE

KeyUsage

string

L'utilisation de la clé.

ENCRYPT/DECRYPT

CreationDate

string

La date et l'heure de création de la clé. L'heure est au format UTC.

2024-03-25T10:00:00Z

DKMSInstanceId

string

L'identifiant de l'instance KMS.

kst-bjj62d8f5e0sgtx8h****

Exemples

JSON format

{
  "RequestId": "381D5D33-BB8F-395F-8EE4-AE3BB4B523C4",
  "KeyMetadata": {
    "KeyId": "key-hzz62f1cb66fa42qo****",
    "NextRotationDate": "2024-03-25T10:00:00Z",
    "KeyState": "Enabled",
    "RotationInterval": "31536000s",
    "Arn": "acs:kms:cn-qingdao:154035569884****:key/key-hzz62f1cb66fa42qo****",
    "Creator": "154035569884****",
    "LastRotationDate": "2023-03-25T10:00:00Z",
    "DeleteDate": "2025-03-25T10:00:00Z",
    "PrimaryKeyVersion": "7ce1d081-06cb-42e6-aab6-5c5de030****",
    "Description": "key description example",
    "KeySpec": "Aliyun_AES_256",
    "Origin": "Aliyun_KMS",
    "MaterialExpireTime": "2025-03-25T10:00:00Z",
    "AutomaticRotation": "Enabled",
    "ProtectionLevel": "SOFTWARE",
    "KeyUsage": "ENCRYPT/DECRYPT",
    "CreationDate": "2024-03-25T10:00:00Z",
    "DKMSInstanceId": "kst-bjj62d8f5e0sgtx8h****"
  }
}

Codes d'erreur

Code de statut HTTP

Code d'erreur

Message d'erreur

Description

400 Rejected.LimitExceeded The request was rejected because user create resource limit was exceeded The request is rejected because the number of created resources reaches the upper limit.
400 InvalidParameter The specified parameter is not valid. An invalid value is specified for the parameter.
400 UnsupportedOperation This action is not supported. The operation is not supported.
400 Forbidden.NoPermission This operation is forbidden by permission system. You are not authorized to perform this operation.
400 Rejected.ShareQuotaExceedLimit Instance Share Quota Exceed Limit. The instance share quota exceeds the limit.
500 InternalFailure Internal Failure An internal error occurred.
403 Forbidden.DKMSInstanceNotFound The specified DKMS Instance is not found. Your dedicated KMS instance is not found.
503 SerivceUnvailableTemporary Service Unvailable Temporary The service is temporarily unavailable.

Consultez Codes d'erreur pour la liste complète.

Notes de version

Consultez Notes de version pour la liste complète.