Tous les produits
Search
Centre de documentation

Resource Access Management:Use Alibaba Cloud CLI to call STS OpenAPI

Dernière mise à jour :Aug 09, 2026

Utilisez Alibaba Cloud CLI pour gérer Security Token Service (STS). Cette rubrique illustre l'appel de l'API STS depuis la CLI en prenant l'opération AssumeRole comme exemple.

Prérequis

Familiarisez-vous avec les concepts suivants :

Étape 1 : Installer Alibaba Cloud CLI

Installez Alibaba Cloud CLI. Des packages sont disponibles pour Windows, Linux et macOS.

Vous pouvez également utiliser Cloud Shell pour déboguer les commandes Alibaba Cloud CLI. Pour plus d'informations, consultez la section Qu'est-ce que Cloud Shell ?.

Étape 2 : Configurer Alibaba Cloud CLI

Important

Vous ne pouvez appeler l'opération API AssumeRole qu'en tant qu'utilisateur RAM ou en endossant un rôle RAM. Il est impossible d'appeler cette opération avec un compte Alibaba Cloud (compte racine). L'exemple de cette rubrique utilise un utilisateur RAM.

Configurez vos identifiants et un ID de région avant utilisation. Alibaba Cloud CLI prend en charge plusieurs types d'identifiants. Pour plus d'informations, consultez la section Configurer et gérer les identifiants. Cet exemple utilise une paire AccessKey.

  1. Créez un utilisateur RAM et une paire AccessKey à utiliser pour la configuration. Pour plus d'informations, consultez les sections Créer un utilisateur RAM et Créer une AccessKey.

  2. Accordez des autorisations à l'utilisateur RAM. Dans cet exemple, vous devez accorder à l'utilisateur RAM l'autorisation d'appeler l'opération API AssumeRole de STS en attachant la stratégie AliyunSTSAssumeRoleAccess. Pour plus d'informations, consultez la section Gérer les autorisations des utilisateurs RAM.

  3. Obtenez l'ID d'une région disponible. Alibaba Cloud CLI envoie les requêtes API à la région que vous spécifiez. Pour obtenir la liste des régions STS disponibles, consultez la section Endpoints.

    Remarque

    Lorsque vous utilisez Alibaba Cloud CLI, ajoutez l'option --region à une commande pour spécifier la région de la requête. Cette option remplace la région définie dans votre profil et vos variables d'environnement. Pour plus d'informations, consultez la section Options de ligne de commande.

  4. Utilisez la paire AccessKey de l'utilisateur RAM pour configurer les identifiants. Nommez le profil de configuration AkProfile. Pour plus d'informations, consultez la section Configurer et gérer les identifiants.

Étape 3 : Créer un rôle RAM

Important

Le nom de ressource Alibaba Cloud (ARN) du rôle, spécifié par le paramètre RoleArn, est requis pour appeler l'opération API AssumeRole. Pour obtenir l'ARN, créez un rôle RAM qui fait confiance à un compte Alibaba Cloud.

Dans cet exemple, vous utilisez l'utilisateur RAM créé à l'étape Étape 2 : Configurer Alibaba Cloud CLI pour endosser ce rôle. Par conséquent, le compte Alibaba Cloud de confiance doit correspondre à l'ID du compte Alibaba Cloud auquel appartient l'utilisateur RAM de l'étape Étape 2 : Configurer Alibaba Cloud CLI. Pour plus d'informations, consultez la section Créer un rôle RAM pour un compte Alibaba Cloud de confiance.

Modifiez la stratégie de confiance du rôle RAM pour spécifier quels utilisateurs RAM peuvent l'endosser. Pour plus d'informations, consultez la section Modifier la stratégie de confiance d'un rôle RAM.

Étape 4 : Générer un exemple de commande CLI

  1. Dans OpenAPI Explorer, accédez à la page de débogage AssumeRole.

  2. Dans l'onglet Parameters, saisissez les paramètres de requête. Cliquez ensuite sur l'onglet CLI Example pour afficher la commande générée.

  3. Exécutez la commande dans Cloud Shell ou copiez l'exemple de commande.

    • Cliquez sur Run in Cloud Shellimage pour ouvrir Cloud Shell et déboguer rapidement la commande.

    • Cliquez sur Repeatimage pour copier la commande dans le presse-papiers. Vous pouvez ensuite la coller dans votre shell local pour l'exécuter.

      Remarque
      • Si vous copiez la commande dans un shell local pour le débogage, assurez-vous que le format des paramètres est correct. Pour plus d'informations sur les paramètres de commande d'Alibaba Cloud CLI, consultez la section Comprendre les paramètres de commande.

      • Par défaut, OpenAPI Explorer ajoute l'option --region à la commande générée. Lorsque vous exécutez la commande localement, cette option remplace les paramètres de région de votre profil par défaut et de vos variables d'environnement. Conservez ou supprimez cette option selon vos besoins.

Étape 5 : Appeler les API STS

Exemple 1 : Répertorier les API STS disponibles

Utilisez l'option --help pour répertorier les opérations API STS disponibles. Vous pouvez également les consulter dans la section Présentation de l'API.

  1. Exécutez la commande.

    aliyun sts --help
  2. Le résultat suivant s'affiche.

    Usage:
      aliyun sts <ApiName> --parameter1 value1 --parameter2 value2 ...
    Product: Sts (Security Token Service)
    Version: 2015-04-01
    Available Api List:
      AssumeRole            Calls the AssumeRole operation to obtain temporary security credentials (an STS Token) to assume a RAM role.
      AssumeRoleWithOIDC    [Anonymous] Calls the AssumeRoleWithOIDC operation to obtain temporary security credentials (an STS Token) for a RAM role during OIDC-based role SSO.
      AssumeRoleWithSAML    [Anonymous] Calls the AssumeRoleWithSAML operation to obtain temporary security credentials (an STS Token) for a RAM role during SAML-based role SSO.
      GetCallerIdentity     Calls the GetCallerIdentity operation to obtain information about the current caller's identity.

Exemple 2 : Endosser un rôle RAM

Appelez AssumeRole pour obtenir des identifiants de sécurité temporaires pour un rôle RAM.

  1. Exécutez la commande.

    Remarque

    Pour obtenir de l'aide sur les paramètres de commande :

    • Exécutez la commande aliyun sts AssumeRole --help pour obtenir des suggestions de paramètres.

    • Consultez la rubrique AssumeRole pour obtenir des descriptions détaillées des paramètres.

    aliyun sts AssumeRole \
      --DurationSeconds 3600 \
      --Policy '{"Statement": [{"Action": ["*"],"Effect": "Allow","Resource": ["*"]}],"Version":"1"}' \
      --RoleSessionName alice \
      --RoleArn 'acs:ram::123456789012****:role/adminrole' \
      --ExternalId abcd1234
  2. Voici un exemple de résultat. La valeur SecurityToken correspond à l'identifiant de sécurité temporaire.

    {
      "RequestId": "6894B13B-6D71-4EF5-88FA-F32781734A7F",
      "AssumedRoleUser": {
        "AssumedRoleId": "34458433936495****:alice",
        "Arn": "acs:ram::123456789012****:role/adminrole/alice"
      },
      "Credentials": {
        "SecurityToken": "********",
        "Expiration": "2015-04-09T11:52:19Z",
        "AccessKeySecret": "wyLTSmsyPGP1ohvvw8xYgB29dlGI8KMiH2pK****",
        "AccessKeyId": "STS.L4aBSCSJVMuKg5U1****"
      }
    }
    Remarque

    Si une erreur se produit lors de l'appel d'une opération API STS, vérifiez le code d'erreur renvoyé pour valider vos paramètres et valeurs de requête.

    Utilisez l'ID de requête de la réponse ou le message d'erreur SDK avec OpenAPI Troubleshoot pour diagnostiquer le problème.