OCI-Identitätsdomains mit CLI

In diesem Tutorial verwenden Sie die Oracle Cloud Infrastructure-Befehlszeilenschnittstelle (OCI-CLI), um Benutzer in einer Identitätsdomain zu erstellen und zu verwalten.

Die OCI-CLI basiert auf dem Oracle Cloud Infrastructure-SDK für Python und wird unter Mac, Windows und Linux ausgeführt. Der Python-Code stellt 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 erstellen
  • CLI-Konfigurationsdatei einrichten
  • CLI installieren
  • Identitätsdomain-URL abrufen
  • Benutzer erstellen
  • Benutzerdetails abrufen
  • Benutzer löschen

Dieses Tutorial nimmt ca. 30 Minuten in Anspruch.

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, dem die Benutzeradministratorrolle zugewiesen ist. 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 Benutzer-Home-Verzeichnis auf dem lokalen Rechner: ~/.oci

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

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

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

1. API-Signaturschlüsselpaar erstellen

Für das Signieren von API-Anforderungen ist ein RSA-Schlüsselpaar im PEM-Format (mindestens 2048 Bit) 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 in Ihrem Benutzer-Home-Verzeichnis 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 mit dem entsprechenden Mandanten (Cloud-Accountname) und der Identitätsdomain sowie Ihrem Benutzernamen und Kennwort beim Oracle Cloud-Account an.

    Wenn Sie sich zum ersten Mal anmelden, öffnen Sie die Aktivierungs-E-Mail, und verwenden Sie den angegebenen Link Account aktivieren. Sie werden aufgefordert, ein Kennwort einzugeben und zu bestätigen. 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 Informationen haben, die Sie für die Anmeldung benötigen. Siehe Support kontaktieren.

  2. Wählen Sie auf der Konsolenhomepage das Benutzerprofilsymbol und dann Ihren Benutzernamen aus.
  3. Wählen Sie auf der Benutzerprofilseite 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 innerhalb des Verzeichnisses .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, er 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.

    In der Konsole wird das Dialogfeld Vorschau der Konfigurationsdatei angezeigt, in dem die Konfigurationsinformationen Ihres Benutzers zur Verwendung von OCI angezeigt werden.

  8. Wählen Sie vorerst Schließen aus.
  9. Prüfen Sie auf der Benutzerprofilseite, 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 zum Signieren von API-Anforderungen generiert haben.

  1. Wenn Sie noch nicht angemeldet sind, melden Sie sich mit dem entsprechenden Mandanten (Cloud-Accountname) und der Identitätsdomain sowie Ihrem Benutzernamen und Kennwort beim Oracle Cloud-Account an.
  2. Wählen Sie auf der Konsolenhomepage das Benutzerprofilsymbol und dann Ihren Benutzernamen aus.
  3. Wählen Sie auf der Benutzerprofilseite 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.

    In der Konsole wird das Dialogfeld Vorschau der Konfigurationsdatei angezeigt, 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 der Konfigurationsdatei die Option Kopieren aus, um den Inhalt der Vorschau 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 unter dem Dateinamen mit config im Verzeichnis ~/.oci.

    Wenn bereits eine Datei config 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 ein DEFAULT-Profil bereits in der vorhandenen Datei 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 der Sie den Profilinhalt der Vorschau DEFAULT eingefügt haben, den Parameter key_file in den Dateinamen und 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 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 Anmeldedaten im Profil DEFAULT, wenn Sie einen CLI-Befehl ausführen.

3. CLI installieren

Sie können 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.

Berücksichtigen Sie Folgendes:

  • Wenn Python bereits auf dem Rechner installiert sein soll, ermitteln Sie mit dem Befehl python --version in einer Eingabeaufforderung, welche Version installiert sind.

  • 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 zulassen, dass das Skript Python für Sie gleichzeitig installiert.

    • 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 zum Installieren 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 vorausgesetzt, 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 mit dem entsprechenden Mandanten (Cloud-Accountname) und der Identitätsdomain sowie Ihrem Benutzernamen und Kennwort beim Oracle Cloud-Account 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 Informationen haben, die Sie für die Anmeldung benötigen. Siehe Support kontaktieren.

  2. Wählen Sie auf der Konsolenhomepage das Benutzerprofilsymbol und dann den Namen der Identitätsdomain 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 Inlineparameterzeichenfolgen in der Befehlszeile angegeben werden.

  1. Führen Sie eine der folgenden Aufgaben aus, um die Eingabe für das 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. unter 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 für die spätere 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 ein umgekehrtes Schrägstrich (\) als Escapezeichen vorangestellen 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 Inline-Parameterzeichenfolgen, 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
      

      MacOS-, Linux- oder Unix-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
      

    Der Parameter endpoint ist die Domain-URL, die Sie in der 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. Löschen eines Benutzers

Benutzer durch Angabe der OCID des Benutzers löschen.

  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,

    Anschließend wird die folgende Antwort 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 ausführen, um einen Benutzer abzurufen, wie unter Benutzer abrufen beschrieben.

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