Tous les produits
Search
Centre de documentation

Key Management Service:Initialiser le client

Dernière mise à jour :Aug 20, 2026

Utilisez le SDK Alibaba Cloud pour connecter votre application au service Key Management Service (KMS). La procédure d'initialisation varie selon le type de passerelle : une passerelle partagée nécessite uniquement un endpoint, tandis qu'une passerelle dédiée requiert également un certificat CA pour authentifier la connexion SSL/TLS de l'instance KMS.

Prérequis

Avant de commencer, assurez-vous de disposer des éléments suivants :

  • Un compte Alibaba Cloud avec le service KMS activé

  • Des identifiants AccessKey stockés sous forme de variables d'environnement (ALIBABA_CLOUD_ACCESS_KEY_ID et ALIBABA_CLOUD_ACCESS_KEY_SECRET)

  • (Passerelle dédiée uniquement) Une instance KMS. Consultez la rubrique Gérer les identifiants d'accès pour connaître les méthodes d'authentification prises en charge.

Remarque

Les passerelles partagées et dédiées prennent en charge les mêmes méthodes d'authentification basées sur RAM : AccessKey (AK), jeton Security Token Service (STS), RamRoleArn et rôle RAM d'instance ECS. Pour les charges de travail de production, privilégiez les jetons STS plutôt que les identifiants AccessKey à longue durée de vie. Les exemples ci-dessous utilisent AccessKey par souci de simplicité.

Comparaison des passerelles

Passerelle partagée Passerelle dédiée
Format de l'endpoint kms.<REGION_ID>.aliyuncs.com (réseau public) ou kms-vpc.<REGION_ID>.aliyuncs.com (VPC) <KMS_INSTANCE_ID>.cryptoservice.kms.aliyuncs.com
Certificat CA Non requis Requis pour le SDK V2.0 ; le SDK V1.0 doit définir HTTPSInsecure sur true à la place

Initialiser le client via une passerelle partagée

public static com.aliyun.kms20160120.Client createClient() throws Exception {
    // Avoid hardcoding credentials. Use STS tokens for higher security:
    // https://www.alibabacloud.com/help/en/sdk/developer-reference/v2-manage-access-credentials
    com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
            // Required. Set ALIBABA_CLOUD_ACCESS_KEY_ID in your runtime environment.
            .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
            // Required. Set ALIBABA_CLOUD_ACCESS_KEY_SECRET in your runtime environment.
            .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
    // Shared gateway endpoint format: kms.<REGION_ID>.aliyuncs.com
    // For VPC access: kms-vpc.<REGION_ID>.aliyuncs.com
    // Example uses Singapore (ap-southeast-1).
    config.endpoint = "kms.ap-southeast-1.aliyuncs.com";
    return new com.aliyun.kms20160120.Client(config);
}

Endpoint

Définissez config.endpoint en utilisant l'un des formats d'endpoint de passerelle partagée :

  • Réseau public : kms.<REGION_ID>.aliyuncs.com

  • VPC : kms-vpc.<REGION_ID>.aliyuncs.com

Remplacez <REGION_ID> par l'ID de la région où se trouvent vos ressources KMS, par exemple cn-hangzhou ou ap-southeast-1.

Initialiser le client via une passerelle dédiée

public static com.aliyun.kms20160120.Client createClient() throws Exception {
    // Avoid hardcoding credentials. Use STS tokens for higher security:
    // https://www.alibabacloud.com/help/en/sdk/developer-reference/v2-manage-access-credentials
    com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
            // Required. Set ALIBABA_CLOUD_ACCESS_KEY_ID in your runtime environment.
            .setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
            // Required. Set ALIBABA_CLOUD_ACCESS_KEY_SECRET in your runtime environment.
            .setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
    // Dedicated gateway endpoint format: <KMS_INSTANCE_ID>.cryptoservice.kms.aliyuncs.com
    // Find your instance ID on the Instances page (see "Endpoint" below).
    config.endpoint = "kst-hzz65f176a0ogplgq****.cryptoservice.kms.aliyuncs.com";
    // CA certificate content for the KMS instance.
    // Download it from the instance details page (see "CA certificate" below).
    config.ca = "<INSTANCE_CA_CERTIFICATE>";
    return new com.aliyun.kms20160120.Client(config);
}

Endpoint

L'endpoint de passerelle dédiée suit le format <KMS_INSTANCE_ID>.cryptoservice.kms.aliyuncs.com. Pour trouver l'endpoint de votre instance :

  1. Accédez à la page shared gateway et cliquez sur l'onglet Instances ou Software Key Management.

  2. Cliquez sur l'instance KMS cible.

  3. Dans la section Hardware Key Management, copiez la valeur du champ Basic Information.

image

Certificat CA

Le certificat CA authentifie la connexion SSL/TLS de l'instance KMS et est requis dans les environnements de production. Pour le télécharger :

  1. Sur la page Instance VPC Endpoint, cliquez sur l'onglet Instances ou Software Key Management, puis cliquez sur l'instance cible.

  2. Cliquez sur l'ID de l'instance ou sur Details dans la colonne Hardware Key Management.

  3. Sur la page des détails, cliquez sur Actions à côté de Instance CA Certificate.

Le fichier téléchargé est nommé PrivateKmsCA_kst-******.pem par défaut.

image

Important

Le paramètre ca est pris en charge uniquement par le SDK Alibaba Cloud V2.0. Si vous utilisez le SDK V1.0, omettez la ligne config.ca et définissez HTTPSInsecure sur true directement sur le client : client.SetHTTPSInsecure(true). Pour ignorer la vérification SSL/TLS dans les environnements hors production (tels que les tests hors ligne), utilisez également client.SetHTTPSInsecure(true).