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

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

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

La CLI prend en charge plusieurs méthodes d'authentification. Dans ce tutoriel, vous utilisez la méthode d'authentification basée sur une clé d'API.

Ce tutoriel aborde les tâches suivantes :

  • Générer une paire de clés de signature d'API
  • Configuration du fichier de configuration de la CLI
  • Installation de l'interface de ligne de commande
  • Obtenir l'URL du domaine d'identité
  • Création d'un utilisateur
  • Obtenir les détails d'un utilisateur
  • Suppression d'un utilisateur

Ce tutoriel prend environ 30 minutes.

Remarque

Ce tutoriel est spécifique à OCI Identity and Access Management avec des domaines d'identité.

Avant de commencer

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

  • Un compte Oracle Cloud.

  • Compte utilisateur ayant accès à un domaine d'identité et disposant du rôle d'administrateur utilisateur. Demandez à l'administrateur de domaine d'identité ou à l'administrateur de compte cloud si vous n'êtes pas sûr de disposer des droits d'accès permettant de créer et de gérer des utilisateurs dans un domaine d'identité.

  • Répertoire .oci dans le répertoire de base de l'utilisateur 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 Python prise en charge sur un système d'exploitation pris en charge.

    Si Python n'est pas déjà installé sur Windows ou Linux, plus tard dans ce tutoriel lorsque vous exécutez le script d'installation de la CLI pour installer la CLI, 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 (au moins 2048 bits) est requise pour signer les demandes d'API.

Cette tâche explique 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 le répertoire de base de l'utilisateur sur l'ordinateur local. Le répertoire ~/.oci est requis pour stocker les informations de configuration OCI, telles que les informations d'identification de signature et les valeurs d'OCID.

  1. Connectez-vous au compte Oracle Cloud à l'aide de la location (nom de compte cloud) et du domaine d'identité appropriés, ainsi que de votre nom 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é à saisir un mot de passe et à le confirmer. Pour plus d'informations, reportez-vous à Connexion initiale.

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

    Contactez l'administrateur de compte cloud ou l'administrateur de domaine d'identité si vous ne disposez pas des informations dont vous avez besoin pour vous connecter. Reportez-vous à Contact avec le support technique.

  2. Sur la page d'accueil de la console, sélectionnez l'icône de profil utilisateur, puis votre nom utilisateur.
  3. Sur la page de profil 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 en local.

    Enregistrez la clé privée dans le répertoire ~/.oci. Vous pouvez éventuellement 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 en local.

    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 Aperçu du fichier de configuration, qui affiche les informations de configuration de l'utilisateur pour l'utilisation d'OCI.

  8. Pour l'instant, sélectionnez Fermer.
  9. Sur la page de profil utilisateur, vérifiez que l'empreinte de la paire de clés générée est ajoutée sous Empreinte. Par exemple :

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

2. Configuration du fichier de configuration de la CLI

La configuration de l'interface de ligne de commande contient les informations d'identification requises pour l'utilisation d'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. S'il n'est pas déjà connecté, connectez-vous au compte Oracle Cloud à l'aide de la location (nom de compte cloud) et du domaine d'identité appropriés, ainsi que de votre nom utilisateur et de votre mot de passe.
  2. Sur la page d'accueil de la console, sélectionnez l'icône de profil utilisateur, puis votre nom utilisateur.
  3. Sur la page de profil utilisateur, sélectionnez Clés d'API sous Ressources.
  4. Dans le menu Actions (trois points) en regard de l'empreinte ajoutée à la tâche Générer une paire de clés de signature d'API, sélectionnez Afficher le fichier de configuration.

    La console affiche la boîte de dialogue Aperçu du fichier de configuration, dans laquelle votre configuration utilisateur est indiqué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 Aperçu du fichier de configuration, sélectionnez Copier pour copier le contenu de l'aperçu du fichier de configuration dans le presse-papiers. Fermez ensuite la boîte de dialogue.
  6. Ouvrez un éditeur de texte et collez le contenu de l'aperçu à 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 d'aperçu DEFAULT du presse-papiers dans le fichier.

  8. Dans le fichier ~/.oci/config où vous avez collé le contenu de profil DEFAULT d'aperçu, mettez à jour le paramètre key_file avec le nom de fichier et le chemin sur 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

    Sauf si un profil spécifique est indiqué, OCI utilise les informations d'identification de signature dans le profil DEFAULT lorsque vous exécutez une commande d'interface de ligne de commande.

3. Installation de l'CLI

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.

Prenez les éléments suivants en considération :

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

  • Si Python n'est pas déjà installé 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 la CLI, 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 effectuer une mise à niveau avant de poursuivre l'installation de la CLI.

Pour installer l'interface de ligne de commande OCI sur un ordinateur, procédez comme suit :

  1. Suivez les instructions appropriées de l'O/S pour installer la CLI.
  2. Vérifiez l'installation de la CLI en exécutant la commande suivante dans une invite de commande.
    oci --version

4. Obtention de l'URL de domaine d'identité

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

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

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

    Contactez l'administrateur de compte cloud ou l'administrateur de domaine d'identité si vous ne disposez pas des informations dont vous avez besoin pour vous connecter. Reportez-vous à Contact avec le support technique.

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

    Une URL de domaine ressemble à ce qui suit :

    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éation d'un utilisateur

Cette tâche suppose que vous ayez 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 construire des commandes d'interface de ligne de commande.

Les entrées complexes, telles que les tableaux et les objets comportant plusieurs valeurs, sont transmises au format JSON à la CLI. L'entrée peut être fournie sous forme de fichier JSON ou de chaînes de paramètres en ligne sur la ligne de commande.

  1. Effectuez l'une des tâches suivantes pour préparer l'entrée à la création d'un utilisateur :
    • Fichier JSON : ouvrez un éditeur de texte. Copiez le fichier 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 en ligne : 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 valeur de paramètre entre guillemets doubles (".."). Dans un bloc, chaque apostrophe (") pour les chaînes de clé et de valeur doit faire l'objet d'un échappement à l'aide d'une barre oblique inverse (\).

      --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, placez chaque bloc de valeur 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 de la CLI pour créer un utilisateur.

    Sur la ligne de commande, vous pouvez spécifier un fichier JSON ou utiliser des paramètres en ligne comme entrée.

    • Utilisez le fichier JSON que vous avez créé en 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 intégrées que vous avez préparées en 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 de domaine que vous avez copiée dans la tâche Obtenir l'URL de 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 ayez créé un utilisateur et obtenu son OCID.

  1. Dans une invite de commande, entrez la commande d'interface de ligne de commande permettant d'extraire les détails d'un utilisateur en fournissant 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 de la commande, vérifiez que les détails de l'utilisateur corrects sont affichés.

7. Suppression d'un utilisateur

Supprimez un utilisateur en fournissant son OCID.

  1. Dans une invite de commande, entrez la commande CLI permettant de 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 renvoyée :

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

  2. Saisissez y.

    La réponse suivante est ensuite renvoyé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 Obtention d'un utilisateur.

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