OCI-Identitätsdomains mit CLI

In diesem Tutorial erstellen und verwalten Sie Benutzer in einer Identitätsdomain mit der Oracle Cloud Infrastructure-Befehlszeilenschnittstelle (OCI-CLI).

OCI-CLI basiert auf dem Oracle Cloud Infrastructure-SDK für Python und wird unter Mac, Windows und Linux ausgeführt. Der Python-Code sendet Anforderungen an OCI-APIs, um die Funktionalität bereitzustellen.

Die CLI unterstützt mehrere Authentifizierungsmethoden. In diesem Tutorial verwenden Sie die API-Schlüsselbasierte Authentifizierungsmethode.

In diesem Tutorial werden die folgenden Aufgaben behandelt:

  • API-Signaturschlüsselpaar generieren
  • CLI-Konfigurationsdatei einrichten
  • CLI installieren
  • Identitätsdomain-URL abrufen
  • Benutzer erstellen
  • Details eines Benutzers abrufen
  • Benutzer löschen

Dieses Tutorial dauert etwa 30 Minuten.

Hinweis

Dieses Tutorial ist spezifisch für OCI Identity and Access Management mit Identitätsdomains.

Bevor Sie beginnen

Um dieses Tutorial ausführen zu können, benötigen Sie Folgendes:

  • Ein Oracle Cloud-Account.

  • Ein Benutzeraccount mit Zugriff auf eine Identitätsdomain und zugewiesener Benutzeradministratorrolle. Fragen Sie den Identitätsdomainadministrator oder Cloud-Accountadministrator, wenn Sie nicht sicher sind, ob Sie über die Berechtigungen zum Erstellen und Verwalten von Benutzern in einer Identitätsdomain verfügen.

  • Das Verzeichnis .oci im Home-Verzeichnis des Benutzers auf dem lokalen Rechner: ~/.oci

    Beispiel: Unter Windows können Sie das Verzeichnis mit dem folgenden Befehl mit PowerShell erstellen: mkdir %HOMEDRIVE%%HOMEPATH%\.oci

  • Eine unterstützte Python-Version auf einem unterstützten Betriebssystem.

    Wenn Python noch nicht unter Windows oder Linux installiert ist, können Sie später in diesem Tutorial beim Ausführen des CLI-Installationsskripts zur Installation der CLI das Skript Python für Sie installieren lassen.

1. API-Signaturschlüsselpaar generieren

Ein RSA-Schlüsselpaar im PEM-Format (mindestens 2048 Bit) ist zum Signieren von API-Anforderungen erforderlich.

In dieser Aufgabe wird beschrieben, wie Sie mit der Konsole ein Schlüsselpaar erstellen.

Bei dem folgenden Verfahren wird davon ausgegangen, dass Sie das Verzeichnis .oci bereits im Home-Verzeichnis des Benutzers auf dem lokalen Rechner erstellt haben. Das Verzeichnis ~/.oci ist erforderlich, um OCI-Konfigurationsinformationen wie Signaturzugangsdaten und OCID-Werte zu speichern.

  1. Melden Sie sich beim Oracle Cloud-Account mit dem entsprechenden Mandanten (Cloud-Accountname) und der Identitätsdomain sowie Ihrem Benutzernamen und Kennwort an.

    Wenn Sie sich das erste Mal anmelden, öffnen Sie die Aktivierungs-E-Mail, und verwenden Sie den angegebenen Link Account aktivieren. Sie werden zur Eingabe und Bestätigung eines Kennworts aufgefordert. Weitere Informationen finden Sie unter Zum ersten Mal anmelden.

    Der Mandant, die Identitätsdomain und der Benutzername werden in der E-Mail zum Zurücksetzen des Profilkennworts angegeben, wenn Sie das Benutzerprofil im Cloud-Account aktiviert haben.

    Wenden Sie sich an den Cloud-Accountadministrator oder Identitätsdomainadministrator, wenn Sie keine der Informationen zur Anmeldung haben. Siehe Support kontaktieren.

  2. Wählen Sie auf der Homepage der Konsole das Benutzerprofilsymbol und dann Ihren Benutzernamen aus.
  3. Wählen Sie auf der Seite "Benutzerprofil" unter Ressourcen die Option API-Schlüssel aus.
  4. Wählen Sie API-Schlüssel hinzufügen aus.
  5. Wählen Sie im Bereich API-Schlüssel hinzufügen die Option API-Schlüsselpaar generieren und dann Private Key herunterladen aus.

    Speichern Sie den Private Key im Verzeichnis ~/.oci. Optional können Sie den Schlüssel in ein Unterverzeichnis im Verzeichnis .oci verschieben.

    Notieren Sie sich den Dateinamen und Pfad des Private Keys. Das folgende Beispiel gilt für Windows:

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

  6. (Optional) Wählen Sie Public Key herunterladen aus.

    Sie können den Public Key herunterladen, dies ist jedoch nicht erforderlich. Sowohl der Public Key als auch der Private Key sind PEM-Dateien. Der Public Key enthält die Zeichenfolge _public im Dateinamen des Schlüssels.

  7. Wählen Sie im Bereich API-Schlüssel hinzufügen die Option Hinzufügen aus.

    Die Konsole zeigt das Dialogfeld Vorschau der Konfigurationsdatei an, in dem die Konfigurationsinformationen Ihres Benutzers für die Verwendung von OCI angezeigt werden.

  8. Wählen Sie vorerst Schließen aus.
  9. Prüfen Sie auf der Seite "Benutzerprofil", ob der Fingerprint für das generierte Schlüsselpaar unter Fingerprint hinzugefügt wurde. Beispiel:

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

2. CLI-Konfigurationsdatei einrichten

Die CLI-Konfiguration enthält die erforderlichen Zugangsdaten für die Arbeit mit Oracle Cloud Infrastructure.

Bei dieser Aufgabe wird davon ausgegangen, dass Sie das API-Schlüsselpaar für das Signieren von API-Anforderungen generiert haben.

  1. Wenn Sie noch nicht angemeldet sind, melden Sie sich beim Oracle Cloud-Account mit dem entsprechenden Mandanten (Cloud-Accountname) und der Identitätsdomain sowie Ihrem Benutzernamen und Kennwort an.
  2. Wählen Sie auf der Homepage der Konsole das Benutzerprofilsymbol und dann Ihren Benutzernamen aus.
  3. Wählen Sie auf der Seite "Benutzerprofil" unter Ressourcen die Option API-Schlüssel aus.
  4. Wählen Sie im Menü Aktionen (drei Punkte) neben dem Fingerprint, der in der Aufgabe API-Signaturschlüsselpaar generieren hinzugefügt wurde, die Option Konfigurationsdatei anzeigen aus.

    Die Konsole zeigt das Dialogfeld Vorschau der Konfigurationsdatei an, in dem Ihre Benutzerkonfiguration im Profil DEFAULT angegeben ist.

    [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. Wählen Sie im Dialogfeld Vorschau von Konfigurationsdatei die Option Kopieren aus, um den Vorschauinhalt der Konfigurationsdatei in die Zwischenablage zu kopieren. Schließen Sie dann das Dialogfeld.
  6. Öffnen Sie einen Texteditor, und fügen Sie den Vorschauinhalt aus der Zwischenablage in eine neue Datei ein.
  7. Speichern Sie die Datei mit config als Dateinamen im Verzeichnis ~/.oci.

    Wenn eine config-Datei bereits im Verzeichnis ~/.oci vorhanden ist, führen Sie eine der folgenden Aufgaben aus:

    • Benennen Sie die vorhandene Konfigurationsdatei um.

    • Öffnen Sie die vorhandene Konfigurationsdatei. Wenn in der vorhandenen Datei bereits ein DEFAULT-Profil konfiguriert ist, benennen Sie das vorhandene DEFAULT-Profil um. Fügen Sie dann den Inhalt der Vorschau DEFAULT aus der Zwischenablage in die Datei ein.

  8. Aktualisieren Sie in der Datei ~/.oci/config, in die Sie den Profilinhalt für die Vorschau DEFAULT eingefügt haben, den Parameter key_file in den Dateinamen und den Pfad im Dateisystem des Rechners, in dem Sie den Private Key gespeichert haben.

    Das folgende Beispiel gilt für Windows:

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

  9. Stellen Sie sicher, dass das Profil DEFAULT in ~/.oci/config ungefähr wie folgt aussieht:

    [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

    Sofern kein bestimmtes Profil angegeben ist, verwendet OCI die Signaturzugangsdaten im Profil DEFAULT, wenn Sie einen CLI-Befehl ausführen.

3. CLI installieren

Sie können die OCI-CLI unter Windows, Linux oder MacOS installieren.

Stellen Sie vor der Installation der CLI sicher, dass bereits eine unterstützte Python-Version auf dem Rechner installiert ist. Im Abschnitt Unterstützte Python-Versionen werden die Versionen aufgeführt, die für jedes BS unterstützt werden.

Gehen Sie wie folgt vor:

  • Wenn Python bereits auf dem Rechner installiert ist, verwenden Sie den Befehl python --version in einer Eingabeaufforderung, um herauszufinden, welche Version installiert ist.

  • Wenn Sie Python noch nicht installiert haben oder keine kompatible Python-Version haben, stehen folgende Optionen zur Verfügung:

    • Installieren Sie eine kompatible Python-Version auf dem Rechner, bevor Sie die CLI installieren.

    • Unter Windows oder Linux: Wenn Sie das CLI-Installationsskript ausführen, können Sie das Skript gleichzeitig Python für Sie installieren lassen.

    • Unter MacOS: Das CLI-Installationsskript installiert Python nicht für Sie. Sie müssen ein Upgrade ausführen, bevor Sie mit der CLI-Installation fortfahren können.

So installieren Sie die OCI-CLI auf einem Rechner:

  1. Befolgen Sie die geeigneten BS-Anweisungen zur Installation der CLI.
  2. Prüfen Sie die CLI-Installation, indem Sie den folgenden Befehl in einer Eingabeaufforderung ausführen.
    oci --version

4. Identitätsdomain-URL abrufen

Bei dieser Aufgabe wird davon ausgegangen, dass Sie über einen Oracle Cloud-Benutzeraccount mit Zugriff auf eine Identitätsdomain verfügen.

  1. Wenn Sie noch nicht angemeldet sind, melden Sie sich beim Oracle Cloud-Account mit dem entsprechenden Mandanten (Cloud-Accountname) und der Identitätsdomain sowie Ihrem Benutzernamen und Kennwort an.

    Der Mandant, die Identitätsdomain und der Benutzername werden in der E-Mail zum Zurücksetzen des Profilkennworts angegeben, wenn Sie das Benutzerprofil im Cloud-Account aktiviert haben.

    Wenden Sie sich an den Cloud-Accountadministrator oder Identitätsdomainadministrator, wenn Sie keine der Informationen zur Anmeldung haben. Siehe Support kontaktieren.

  2. Wählen Sie auf der Homepage der Konsole das Benutzerprofilsymbol und dann den Identitätsdomainnamen aus.
  3. Wählen Sie auf der Registerkarte Domaininformationen die Option Kopieren am Ende der Domain-URL aus.
  4. Öffnen Sie einen Texteditor, und fügen Sie die kopierte URL ein.

    Eine Domain-URL sieht in etwa wie folgt aus:

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

    Legen Sie die kopierte URL beiseite. Sie benötigen ihn später, um den Parameter endpoint in CLI-Befehlen zu erstellen.

5. Benutzer erstellen

Bei dieser Aufgabe wird davon ausgegangen, dass Sie das API-Signaturschlüsselpaar generiert, die OCI-Konfigurationsdatei eingerichtet und die CLI installiert haben.

Sie benötigen auch die Identitätsdomain-URL, um CLI-Befehle zu erstellen.

Komplexe Eingaben, wie Arrays und Objekte mit mehr als einem Wert, werden im JSON-Format an die CLI übergeben. Die Eingabe kann als JSON-Datei oder als Inline-Parameterzeichenfolgen in der Befehlszeile angegeben werden.

  1. Führen Sie eine der folgenden Aufgaben aus, um die Eingabe zum Erstellen eines Benutzers vorzubereiten:
    • JSON-Datei: Öffnen Sie einen Texteditor. Kopieren Sie die folgende JSON, und speichern Sie die Datei mit der Erweiterung .json in einem beliebigen Verzeichnis.

      Notieren Sie sich dann den Dateinamen und Pfad, z.B. in 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
      	}
        ]
      }
    • Inline-Parameterzeichenfolgen: Öffnen Sie einen Texteditor. Kopieren Sie die folgenden Zeichenfolgen, und legen Sie sie zur späteren Verwendung beiseite.

      Setzen Sie in Windows jeden Parameterwertblock in doppelte Anführungszeichen (".."). Innerhalb eines Blocks muss jedes doppelte Anführungszeichen (") für die Schlüssel- und Wertzeichenfolgen mit einem umgekehrten Schrägstrich (\) als Escapezeichen versehen werden.

      --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\"]" 
      

      Setzen Sie in MacOS, Linux oder Unix jeden Parameterwertblock in einfache Anführungszeichen ('..').

      --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. Öffnen Sie eine Eingabeaufforderung, und geben Sie den CLI-Befehl ein, um einen Benutzer zu erstellen.

    In der Befehlszeile können Sie eine JSON-Datei angeben oder Inlineparameter als Eingabe verwenden.

    • Verwenden Sie die JSON-Datei, die Sie als Eingabe erstellt haben.

      Windows-Beispiel:

      oci identity-domains user create
       --from-json file://C:\examples\clicreateuser.json
       --endpoint https://idcs-01a234bc56d77e0f89898989bg7h06ij.identity.oraclecloud.com
      
    • Verwenden Sie die Inlineparameterzeichenfolgen, die Sie als Eingabe vorbereitet haben.

      Windows-Beispiel:

      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
      

      Beispiel für MacOS, Linux oder 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
      

    Der Parameter endpoint ist die Domain-URL, die Sie in die Aufgabe Identitätsdomain-URL abrufen kopiert haben.

  3. Prüfen Sie in der Befehlsantwort, ob der Benutzer erstellt wurde.

    Beispiel:

    {
      "data": {
        ...
        "name": {
          "family-name": "Doe",
          "given-name": "John",
          ...
        },
        ...
        "ocid": "ocid1.user.oc1..areallylongstringoflettersandnumbers987654321abcxyz",
        ...
        "user-name": "jdoe@cliexample.com",
        ...
      }
    }
  4. Kopieren Sie die OCID des neu erstellten Benutzers.

    Beispiel:

    ocid1.user.oc1..areallylongstringoflettersandnumbers987654321abcxyz

6. Benutzer abrufen

Bei dieser Aufgabe wird davon ausgegangen, dass Sie einen Benutzer erstellt und die OCID des Benutzers abgerufen haben.

  1. Geben Sie in einer Eingabeaufforderung den CLI-Befehl ein, um die Details eines Benutzers abzurufen, indem Sie die OCID des Benutzers angeben.

    Beispiel:

    oci identity-domains user get
     --user-id ocid1.user.oc1..areallylongstringoflettersandnumbers987654321abcxyz
     --endpoint https://idcs-01a234bc56d77e0f89898989bg7h06ij.identity.oraclecloud.com
    
  2. Prüfen Sie in der Befehlsantwort, ob die korrekten Benutzerdetails angezeigt werden.

7. Benutzer löschen

Löschen Sie einen Benutzer, indem Sie die OCID des Benutzers angeben.

  1. Geben Sie in einer Eingabeaufforderung den CLI-Befehl ein, um einen Benutzer zu löschen.

    Beispiel:

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

    Die folgende Antwort wird zurückgegeben:

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

  2. Geben Sie y ein.

    Die folgende Antwort wird zurückgegeben:

    {
      "opc-next-page": "MQ==",
      "opc-total-items": "1"
    }
    
  3. (Optional) Sie können prüfen, ob der Benutzer gelöscht wurde, indem Sie den CLI-Befehl zum Abrufen eines Benutzers ausführen, wie unter Benutzer abrufen beschrieben.

    Wenn der Benutzer gelöscht wird, nimmt OCI die Nachricht "The resource does not exist." in die Antwort auf.