Domaines d'identité OCI avec interface de ligne de commande

Dans ce tutoriel, vous utiliserez l'interface de ligne de commande d'Oracle Cloud Infrastructure pour créer et gérer des utilisateurs dans un domaine d'identité.

L'interface de ligne de commande OCI s'appuie sur la trousse SDK Oracle Cloud Infrastructure pour Python et s'exécute sous Mac, Windows et Linux. Le code Python envoie des demandes aux API OCI pour fournir la fonctionnalité.

L'interface de ligne de commande prend en charge plusieurs méthodes d'authentification. Dans ce tutoriel, vous utiliserez la méthode d'authentification basée sur une clé d'API.

Ce tutoriel traite des tâches suivantes :

  • Générer une paire de clés de signature d'API
  • Configurer le fichier de configuration de l'interface de ligne de commande
  • Installez l'interface CLI
  • Obtenir l'URL du domaine d'identité
  • Créer un utilisateur
  • Obtenir les détails d'un utilisateur
  • Supprimer un utilisateur

Il dure environ 30 minutes.

Note

Ce tutoriel est propre à la gestion des identités et des accès OCI avec des domaines d'identité.

Avant de commencer

Pour suivre ce tutoriel, vous devez disposer des éléments suivants :

  • Un compte Oracle Cloud.

  • Compte d'utilisateur ayant accès à un domaine d'identité et auquel le rôle d'administrateur d'utilisateur est affecté. Demandez à l'administrateur du domaine d'identité ou à l'administrateur du compte en nuage si vous n'êtes pas sûr de disposer des autorisations nécessaires pour créer et gérer des utilisateurs dans un domaine d'identité.

  • Le répertoire .oci de votre répertoire de base d'utilisateurs sur l'ordinateur local : ~/.oci

    Par exemple, sous Windows, vous pouvez utiliser PowerShell pour créer le répertoire à l'aide de la commande suivante : mkdir %HOMEDRIVE%%HOMEPATH%\.oci

  • Une version prise en charge de Python sur un système d'exploitation pris en charge.

    Si vous n'avez pas déjà installé Python sous Windows ou Linux, plus loin dans ce tutoriel lorsque vous exécutez le script d'installation de l'interface de ligne de commande pour installer l'interface de ligne de commande, vous pouvez laisser le script installer Python pour vous.

1. Générer une paire de clés de signature d'API

Une paire de clés RSA au format PEM (minimum 2048 bits) est requise pour la signature des demandes d'API.

Cette tâche décrit comment utiliser la console pour créer une paire de clés.

La procédure suivante suppose que vous avez déjà créé le répertoire .oci dans votre répertoire de base d'utilisateurs sur l'ordinateur local. Le répertoire ~/.oci est requis pour stocker les informations de configuration OCI, telles que les données d'identification de signature et les valeurs d'OCID.

  1. Connectez-vous au compte Oracle Cloud à l'aide de la location (nom du compte en nuage) et du domaine d'identité appropriés, ainsi que de votre nom d'utilisateur et de votre mot de passe.

    Si vous êtes connecté pour la première fois, ouvrez le courriel d'activation et utilisez le lien Activer votre compte fourni. Vous êtes invité à entrer et à confirmer un mot de passe. Pour plus d'informations, voir Connexion pour la première fois.

    La location, le domaine d'identité et le nom d'utilisateur sont fournis dans le courriel de réinitialisation du mot de passe du profil lorsque vous avez activé le profil d'utilisateur dans le compte en nuage.

    Communiquez avec l'administrateur de compte en nuage ou l'administrateur de domaine d'identité si vous ne disposez pas des informations nécessaires pour vous connecter. Voir Communication avec le soutien technique.

  2. Dans la page d'accueil de la console, sélectionnez l'icône de profil d'utilisateur, puis sélectionnez votre nom d'utilisateur.
  3. Dans la page de profil d'utilisateur, sélectionnez Clés d'API sous Ressources.
  4. Sélectionnez Ajouter une clé d'API.
  5. Dans le panneau Ajouter une clé d'API, sélectionnez Générer une paire de clés d'API, puis Télécharger la clé privée.

    Enregistrez la clé privée dans le répertoire ~/.oci. Facultativement, vous pouvez déplacer la clé vers un sous-répertoire dans le répertoire .oci.

    Notez le nom de fichier et le chemin de la clé privée. L'exemple suivant concerne Windows :

    C:\Users\EXAMPLEUSER\.oci\examplecliuser_2025-01-02T21_18_14.873Z.pem

  6. (Facultatif) Sélectionnez Télécharger la clé publique.

    Vous pouvez télécharger la clé publique, mais ce n'est pas nécessaire. Les clés publiques et privées sont des fichiers PEM. La clé publique contient la chaîne _public dans le nom de fichier de la clé.

  7. Dans le panneau Ajouter une clé d'API, sélectionnez Ajouter.

    La console affiche la boîte de dialogue Prévisualisation du fichier de configuration, qui affiche les informations de configuration de votre utilisateur pour l'utilisation d'OCI.

  8. Pour le moment, sélectionnez Fermer.
  9. Dans la page du profil d'utilisateur, vérifiez que l'empreinte numérique de la paire de clés générée est ajoutée sous Empreinte numérique. Par exemple :

    11:22:00:aa:33:4b:5c:66:7d:88:99:ee:00:90:80:70

2. Configurer le fichier de configuration de l'interface de ligne de commande

La configuration de l'interface de ligne de commande contient les données d'identification requises pour utiliser Oracle Cloud Infrastructure.

Cette tâche suppose que vous avez généré la paire de clés d'API pour la signature des demandes d'API.

  1. Si vous n'êtes pas déjà connecté, connectez-vous au compte Oracle Cloud à l'aide de la location (nom du compte en nuage) et du domaine d'identité appropriés, ainsi que de votre nom d'utilisateur et de votre mot de passe.
  2. Dans la page d'accueil de la console, sélectionnez l'icône de profil d'utilisateur, puis sélectionnez votre nom d'utilisateur.
  3. Dans la page de profil d'utilisateur, sélectionnez Clés d'API sous Ressources.
  4. Dans le menu Actions (trois points) à côté de l'empreinte numérique ajoutée à la tâche Générer une paire de clés de signature d'API, sélectionnez Voir le fichier de configuration.

    La console affiche la boîte de dialogue Prévisualisation du fichier de configuration, dans laquelle votre configuration d'utilisateur est spécifiée dans le profil DEFAULT.

    [DEFAULT]
    user=ocid1.user.oc1..areallylongstringoflettersandnumbers123498765
    fingerprint=11:22:00:aa:33:4b:5c:66:7d:88:99:ee:00:90:80:70
    tenancy=ocid1.tenancy.oc1..areallylongstringoflettersandnumbers123498765
    region=us-ashburn-1
    key_file=<path to your private keyfile>#TODO
  5. Dans la boîte de dialogue Prévisualisation du fichier de configuration, sélectionnez Copier pour copier le contenu de la prévisualisation du fichier de configuration dans le presse-papiers. Ensuite, fermez la boîte de dialogue.
  6. Ouvrez un éditeur de texte et collez le contenu de prévisualisation à partir du presse-papiers dans un nouveau fichier.
  7. En utilisant config comme nom de fichier, enregistrez le fichier dans le répertoire ~/.oci.

    Si un fichier config existe déjà dans le répertoire ~/.oci, effectuez l'une des tâches suivantes :

    • Renommez le fichier de configuration existant.

    • Ouvrez le fichier de configuration existant. Si un profil DEFAULT est déjà configuré dans le fichier existant, renommez le profil DEFAULT existant. Collez ensuite le contenu de prévisualisation DEFAULT à partir du presse-papiers dans le fichier.

  8. Dans le fichier ~/.oci/config où vous avez collé le contenu du profil DEFAULT de prévisualisation, mettez à jour le paramètre key_file avec le nom et le chemin du fichier dans le système de fichiers de l'ordinateur où vous avez enregistré la clé privée.

    L'exemple suivant concerne Windows :

    key_file=C:\Users\EXAMPLEUSER\.oci\examplecliuser_2025-01-02T21_18_14.873Z.pem

  9. Vérifiez que le profil DEFAULT dans ~/.oci/config ressemble à ce qui suit :

    [DEFAULT]
    user=ocid1.user.oc1..areallylongstringoflettersandnumbers123498765
    fingerprint=11:22:00:aa:33:4b:5c:66:7d:88:99:ee:00:90:80:70
    tenancy=ocid1.tenancy.oc1..areallylongstringoflettersandnumbers123498765
    region=us-ashburn-1
    key_file=C:\Users\EXAMPLEUSER\.oci\examplecliuser_2025-01-02T21_18_14.873Z.pem

    À moins qu'un profil spécifique ne soit spécifié, OCI utilise les données d'identification de signature dans le profil DEFAULT lorsque vous exécutez une commande d'interface de ligne de commande.

3. Installer l'interface de ligne de commande

Vous pouvez installer l'interface de ligne de commande OCI sous Windows, Linux ou MacOS.

Avant d'installer l'interface de ligne de commande, assurez-vous qu'une version Python prise en charge est déjà installée sur l'ordinateur. La section Versions Python prises en charge répertorie les versions prises en charge pour chaque système d'exploitation.

Les points suivants sont à prendre en compte :

  • Si Python est déjà installé sur l'ordinateur, utilisez la commande python --version dans une invite de commande pour savoir quelle version est installée.

  • Si vous n'avez pas déjà installé Python ou si vous n'avez pas de version Python compatible, les options sont les suivantes :

    • Installez une version Python compatible sur l'ordinateur avant d'installer l'interface de ligne de commande.

    • Sous Windows ou Linux : Lorsque vous exécutez le script d'installation de l'interface de ligne de commande, vous pouvez laisser le script installer Python pour vous en même temps.

    • Sur MacOS : Le script d'installation de l'interface de ligne de commande n'installe pas Python pour vous. Vous devez procéder à la mise à niveau pour pouvoir poursuivre l'installation de l'interface de ligne de commande.

Pour installer l'interface de ligne de commande OCI sur un ordinateur :

  1. Suivez les instructions appropriées du système d'exploitation pour installer l'interface de ligne de commande.
  2. Vérifiez l'installation de l'interface de ligne de commande en exécutant la commande suivante à partir d'une invite de commande.
    oci --version

4. Obtenir l'URL du domaine d'identité

Cette tâche suppose que vous ayez un compte d'utilisateur Oracle Cloud avec accès à un domaine d'identité.

  1. Si vous n'êtes pas déjà connecté, connectez-vous au compte Oracle Cloud à l'aide de la location (nom du compte en nuage) et du domaine d'identité appropriés, ainsi que de votre nom d'utilisateur et de votre mot de passe.

    La location, le domaine d'identité et le nom d'utilisateur sont fournis dans le courriel de réinitialisation du mot de passe du profil lorsque vous avez activé le profil d'utilisateur dans le compte en nuage.

    Communiquez avec l'administrateur de compte en nuage ou l'administrateur de domaine d'identité si vous ne disposez pas des informations nécessaires pour vous connecter. Voir Communication avec le soutien technique.

  2. Dans la page d'accueil de la console, sélectionnez l'icône de profil d'utilisateur, puis le nom du domaine d'identité.
  3. Dans l'onglet Informations sur le domaine, sélectionnez Copier à la fin de URL du domaine.
  4. Ouvrez un éditeur de texte et collez l'URL copiée.

    Une URL de domaine ressemble à la suivante :

    https://idcs-01a234bc56d77e0f89898989bg7h06ij.identity.oraclecloud.com

    Mettez de côté l'URL copiée. Vous en aurez besoin ultérieurement pour construire le paramètre endpoint dans les commandes de l'interface de ligne de commande.

5. Créer un utilisateur

Cette tâche suppose que vous avez généré la paire de clés de signature d'API, configuré le fichier de configuration OCI et installé l'interface de ligne de commande.

Vous devez également disposer de l'URL du domaine d'identité pour créer des commandes d'interface de ligne de commande.

Les entrées complexes, telles que les tableaux et les objets avec plus d'une valeur, sont transmises au format JSON à l'interface de ligne de commande. L'entrée peut être fournie en tant que fichier JSON ou en tant que chaînes de paramètres insérés à la ligne de commande.

  1. Effectuez l'une des tâches suivantes pour préparer l'entrée de création d'un utilisateur :
    • Fichier JSON : Ouvrez un éditeur de texte. Copiez le JSON suivant et enregistrez le fichier avec l'extension .json dans n'importe quel répertoire.

      Notez ensuite le nom et le chemin du fichier, par exemple sous Windows : C:\examples\clicreateuser.json

      {
        "schemas": [
          "urn:ietf:params:scim:schemas:core:2.0:User"
        ],
        "name": {
      	"givenName": "John",
      	"familyName": "Doe"
        },
        "userName": "jdoe@cliexample.com",
        "emails": [
      	{
      	  "value": "john.doe@examplecli.com",
      	  "type": "work",
      	  "primary": true
      	}
        ]
      }
    • Chaînes de paramètres insérées : Ouvrez un éditeur de texte. Copiez les chaînes suivantes et mettez-les de côté pour une utilisation ultérieure.

      Dans Windows, placez chaque bloc de valeurs de paramètre entre guillemets doubles (".."). Dans un bloc, chaque apostrophe double (") pour les chaînes de clé et de valeur doit être précédée d'une barre oblique (\).

      --user-name jdoe@cliexample.com
      --name "{\"givenName\":\"John\",\"familyName\":\"Doe\"}"
      --emails "[{\"value\":\"john.doe@examplecli.com\",\"type\":\"work\",\"primary\":true}]"
      --schemas "[\"urn:ietf:params:scim:schemas:core:2.0:User\"]" 
      

      Dans MacOS, Linux ou Unix, encadrez chaque bloc de valeurs de paramètre entre apostrophes ('..').

      --user-name jdoe@cliexample.com
      --name '{"givenName":"John","familyName":"Doe"}'
      --emails '[{"value":"john.doe@examplecli.com","type":"work","primary":true}]'
      --schemas '["urn:ietf:params:scim:schemas:core:2.0:User"]' 
      
  2. Ouvrez une invite de commande et entrez la commande d'interface de ligne de commande pour créer un utilisateur.

    À la ligne de commande, vous pouvez spécifier un fichier JSON ou utiliser des paramètres insérés comme entrée.

    • Utilisez le fichier JSON que vous avez créé en tant qu'entrée.

      Exemple Windows :

      oci identity-domains user create
       --from-json file://C:\examples\clicreateuser.json
       --endpoint https://idcs-01a234bc56d77e0f89898989bg7h06ij.identity.oraclecloud.com
      
    • Utilisez les chaînes de paramètres insérés que vous avez préparées en tant qu'entrée.

      Exemple Windows :

      oci identity-domains user create 
      --user-name jdoe@cliexample.com 
      --name "{\"givenName\":\"John\",\"familyName\":\"Doe\"}" 
      --emails "[{\"value\":\"john.doe@examplecli.com\",\"type\":\"work\",\"primary\":true}]" 
      --schemas "[\"urn:ietf:params:scim:schemas:core:2.0:User\"]" 
      --endpoint https://idcs-01a234bc56d77e0f89898989bg7h06ij.identity.oraclecloud.com
      

      Exemple MacOS, Linux ou Unix :

      oci identity-domains user create 
      --user-name jdoe@cliexample.com
      --name '{"givenName":"John","familyName":"Doe"}'
      --emails '[{"value":"john.doe@examplecli.com","type":"work","primary":true}]'
      --schemas '["urn:ietf:params:scim:schemas:core:2.0:User"]' 
      --endpoint https://idcs-01a234bc56d77e0f89898989bg7h06ij.identity.oraclecloud.com
      

    Le paramètre endpoint est l'URL du domaine que vous avez copiée dans la tâche Obtenir l'URL du domaine d'identité.

  3. Dans la réponse de la commande, vérifiez que l'utilisateur est créé.

    Par exemple :

    {
      "data": {
        ...
        "name": {
          "family-name": "Doe",
          "given-name": "John",
          ...
        },
        ...
        "ocid": "ocid1.user.oc1..areallylongstringoflettersandnumbers987654321abcxyz",
        ...
        "user-name": "jdoe@cliexample.com",
        ...
      }
    }
  4. Copiez l'OCID de l'utilisateur nouvellement créé.

    Par exemple :

    ocid1.user.oc1..areallylongstringoflettersandnumbers987654321abcxyz

6. Obtenir un utilisateur

Cette tâche suppose que vous avez créé un utilisateur et obtenu son OCID.

  1. Dans une invite de commande, entrez la commande d'interface de ligne de commande pour extraire les détails d'un utilisateur en indiquant son OCID.

    Exemple :

    oci identity-domains user get
     --user-id ocid1.user.oc1..areallylongstringoflettersandnumbers987654321abcxyz
     --endpoint https://idcs-01a234bc56d77e0f89898989bg7h06ij.identity.oraclecloud.com
    
  2. Dans la réponse à la commande, vérifiez que les détails de l'utilisateur sont affichés.

7. Supprimer un utilisateur

Supprimez un utilisateur en indiquant son OCID.

  1. Dans une invite de commande, entrez la commande d'interface de ligne de commande pour supprimer un utilisateur.

    Exemple :

    oci identity-domains user delete
     --user-id ocid1.user.oc1..areallylongstringoflettersandnumbers987654321abcxyz
     --endpoint https://idcs-01a234bc56d77e0f89898989bg7h06ij.identity.oraclecloud.com
    

    La réponse suivante est retournée :

    Are you sure you want to delete this resource? [y/N]

  2. Entrez y.

    La réponse suivante est ensuite retournée :

    {
      "opc-next-page": "MQ==",
      "opc-total-items": "1"
    }
    
  3. (Facultatif) Vous pouvez vérifier que l'utilisateur a été supprimé en exécutant la commande d'interface de ligne de commande pour obtenir un utilisateur, comme décrit dans Obtenir un utilisateur.

    Si l'utilisateur est supprimé, OCI inclut le message "The resource does not exist." dans la réponse.