IAM-Zugriff für InstructLab verwalten

Der Zugang zu den Projekten von Red Hat AI InstructLab für die Benutzer Ihres Kontos wird durch IBM Cloud® Identity and Access Management (IAM) kontrolliert. Jedem Benutzer, der auf den Red Hat AI InstructLab-Service in Ihrem Konto zugreift, muss eine Zugriffsrichtlinie mit einer IAM-Rolle zugewiesen werden. Prüfen Sie die folgenden Rollen, Aktionen und mehr, um zu ermitteln, wie Sie den Zugriff auf Red Hat AI InstructLab am besten zuweisen können.

Die Zugriffsrichtlinien, die Sie den Benutzern in Ihrem Konto zuweisen, bestimmen, welche Aktionen ein Benutzer im Rahmen des von Ihnen ausgewählten Dienstes oder spezifischen Projekts durchführen kann. Die zulässigen Aktionen werden von Red Hat AI InstructLab angepasst und als Operationen definiert, die mit dem Dienst durchgeführt werden dürfen. Jede Aktion wird einer IAM-Plattform- oder -Servicerolle zugeordnet, die Sie einem Benutzer zuweisen können.

Vergewissern Sie sich, dass Sie auch die Viewer-Rolle für die Ressourcengruppen haben, die Sie verwenden möchten.

IAM-Zugriffsrichtlinien ermöglichen den Zugriff auf verschiedenen Ebenen. Einige Optionen sind:

  • Dem Leser oder Schreiber Zugang zu einem bestimmten Projekt geben.
  • Ermöglichung des Zugriffs von Lesern oder Autoren auf eine bestimmte Ressourcengruppe, in der viele Projekte vorhanden sein können.
  • Lese- oder Schreibzugriff auf das gesamte Konto, wo es viele Ressourcengruppen mit vielen Projekten geben kann.
  • Ermöglichung des Viewer-Zugriffs auf das/die InstructLab Projekt(e) innerhalb einer Ressourcengruppe und auf Kontoebene.
  • Ermöglicht die Erstellung von InstructLab Projekten innerhalb einer Ressourcengruppe und auf Kontoebene.

Wenn eine bestimmte Rolle und die zugehörigen Aktionen nicht für den Anwendungsfall geeignet sind, den Sie bearbeiten möchten, können Sie eine angepasste Rolle erstellen und die Aktionen auswählen, die einbezogen werden sollen.

In den folgenden Tabellen wird erläutert, welche Arten von Aufgaben jede Rolle bei der Arbeit mit dem Dienst Red Hat AI InstructLab zulässt. Mit Hilfe von Plattformmanagement-Rollen können Benutzer Aufgaben in Bezug auf Serviceressourcen auf der Plattformebene ausführen, z. B. Benutzerzugriff auf den Dienst zuweisen, Projekte erstellen oder löschen und Projekte an Anwendungen binden. Die Rollen für den Dienstzugang ermöglichen den Benutzern den Zugang zu Red Hat AI InstructLab und die Möglichkeit, die API von Red Hat AI InstructLab aufzurufen.

Dies ist eine Übersicht auf hoher Ebene darüber, was die Plattformrollen den Benutzern ermöglichen. Beschreiben Sie im Klartext, welche Art von Aufgaben erledigt werden können, oder die üblichen Aufgaben, die Benutzer erwarten können, wenn ihnen eine Rolle zugewiesen wird.

IAM-Rollen und Aktionen

IAM-Plattform-Rollen
Plattformrolle Beschreibung
Anzeigeberechtigter Als Betrachter können Sie Projekte ansehen, aber nicht verändern.
Operator Als Operator können Sie Plattformaktionen durchführen, die für die Konfiguration und den Betrieb von Projekten erforderlich sind, z. B. die Anzeige des Dashboards eines Dienstes.
Bearbeiter Als Bearbeiter können Sie bis auf die Verwaltung des Kontos und die Zuweisung von Zugriffsrichtlinien alle Plattformaktionen ausführen.
Administrator Als Administrator können Sie alle Plattformaktionen ausführen, die auf der Ressource basieren, der diese Rolle zugewiesen ist. Dies gilt auch für das Zuweisen von Zugriffsrichtlinien zu anderen Benutzern.
Dienstkonfigurator Leser Fähigkeit zum Lesen der Konfiguration von Services für die Governanceverwaltung.
Schlüsselmanager Als Schlüsselmanager kann der Dienst Plattformaktionen durchführen, die für die Verwaltung von Ressourcenschlüsseln erforderlich sind, z. B. die Erstellung eines neuen Ressourcenschlüssels.
IAM-Servicezugriffsrollen
Servicerolle Beschreibung
Leseberechtigter Als Leseberechtigter können Sie Nur-Lese-Aktionen in einem Service ausführen, z. B. servicespezifische Ressourcen anzeigen.
Schreibberechtigter Als Schreibberechtigter besitzen Sie Berechtigungen, die über die Rolle 'Leseberechtigter' hinausgehen; hierzu gehört die Erstellung und Bearbeitung von servicespezifischen Ressourcen.
Manager Als Manager besitzen Sie Berechtigungen, die über die Rolle 'Schreibberechtigter' hinausgehen, damit Sie privilegierte Aktionen gemäß der Definition durch den Service ausführen können. Außerdem können Sie servicespezifische Ressourcen erstellen und bearbeiten.
IAM-Aktionen
Aktionen und Ereignisse Beschreibung Rollen
instructlab.dashboard.view InstructLab Dashboards anzeigen. Operator, Administrator, Redakteur
instructlab.taxonomy.read Lesen Sie die Details einer Taxonomie. Reader, Writer, Manager
instructlab.taxonomy.create Taxonomien erstellen Writer, Manager
instructlab.taxonomy.list Taxonomien auflisten. Reader, Writer, Manager
instructlab.taxonomy.delete Taxonomien löschen. Writer, Manager
instructlab.sdgdata.read Lesen Sie die Details eines Datengenerierungslaufs. Reader, Writer, Manager
instructlab.sdgdata.list Datengenerierungsläufe auflisten. Reader, Writer, Manager
instructlab.sdgdata.create Erstellen Sie einen Datengenerierungslauf. Writer, Manager
instructlab.sdgdata.delete Löschen Sie einen Datengenerierungslauf. Writer, Manager
instructlab.sdgdata.stop Stoppen Sie einen Datengenerierungslauf. Writer, Manager
instructlab.sdgdata.stop Stoppen Sie einen Datengenerierungslauf. Writer, Manager
instructlab.model.read Lesen Sie die Details eines Modell-Trainingslaufs. Reader, Writer, Manager
instructlab.model.list Modell-Trainingsläufe auflisten. Reader, Writer, Manager
instructlab.model.create Erstellen Sie einen Modell-Trainingslauf. Writer, Manager
instructlab.model.delete Löschen Sie einen Modell-Trainingslauf. Writer, Manager
instructlab.model.stop Stoppen Sie einen Modell-Trainingslauf. Writer, Manager

Geben Sie InstuctLab die Erlaubnis, Artefakte zu erstellen und zu aktualisieren Object Storage

Geben Sie InstructLab die Zugangsrolle Writer für den Dienst Object Storage. Der angemeldete Benutzer muss ebenfalls die gleiche Berechtigung haben.

  1. Erstellen Sie die Berechtigungsrichtlinie für InstructLab und Object Storage.

    ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storage
    

    Wenn Sie bereits über Object Storage Ressourcen verfügen, die Sie verwenden möchten, können Sie die Berechtigung auf diese Ressourcen beschränken.

    ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storage --target-service-instance-id <cloud-object-storage-instance-id> --target-resource <cloud-object-storage-bucket> --target-resource-type bucket
    
  2. Überprüfen Sie, ob die Autorisierungsrichtlinie erstellt wurde.

    ibmcloud iam authorization-policies
    

    Ergebnis, wenn die Autorisierung nicht auf einen bestimmten Bereich von Object Storage beschränkt ist:

    Getting authorization policies under account abc1234 as user...
    OK
    
    ID:                        <id>
    Source service name:       instructlab
    Source service instance:   All instances
    Target service name:       cloud-object-storage
    Target service instance:   All instances
    Roles:                     Writer
    

    Ergebnis, wenn die Autorisierung auf einen bestimmten Bereich von Object Storage beschränkt ist:

    Getting authorization policies under account abc1234 as user...
    OK
    
    ID:                        <id>
    Source service name:       instructlab
    Source service instance:   All instances
    Target service name:       cloud-object-storage
    Target service instance:   bucket
    Roles:                     Writer
    
  3. Optional Wenn Sie ein privates Repository verwenden, erstellen Sie eine weitere Serviceberechtigung für InstructLab und Secrets Manager

    ibmcloud iam authorization-policy-create Reader --source-service-name instructlab --target-service-name secrets-manager
    
  4. Erteilen Sie dem angemeldeten Benutzer gegebenenfalls die Berechtigung Writer. Geben Sie die Object Storage Service-Instanz-ID aus dem vorherigen Schritt an.

    ibmcloud iam user-policy-create <user> --roles Writer --service-instance <cloud-object-storage-instance-id>
    

Zuweisung von Benutzerzugriff auf Ihre Ressourcen

Sie können steuern, welche Benutzer (oder Gruppen von Benutzern) in Ihrem Konto auf Ihre InstructLab Ressourcen zugreifen. Gehen Sie folgendermaßen vor, um den Zugang in der Konsole zuzuweisen.

Weitere Einzelheiten zur Zuweisung des Zugriffs, wie z. B. Schritte zur Verwendung der Befehlszeilenschnittstelle oder verschiedene Möglichkeiten, wie Sie den Zugriff auf InstructLab oder Ihren Object Storage Bucket einschränken können, finden Sie unter Verwalten des IAM-Zugriffs für Red Hat AI InstructLab auf IBM Cloud.

Es gibt zwei gängige Möglichkeiten, den Zugang zu vergeben:

Zugriffsrichtlinien pro Benutzer.
Sie können Zugriffsrichtlinien pro Benutzer über die Seite Verwalten > Zugriff (IAM) > Benutzer in der Konsole verwalten. Informationen zu den Schritten für die Zuweisung von IAM-Zugriff finden Sie unter "Zugriff auf Ressourcen in der Konsole verwalten ".
Zugriffsgruppen.
Zugriffsgruppen werden verwendet, um das Zugriffsmanagement zu optimieren, indem Sie einer Gruppe einmal Zugriff erteilen. Anschließend können Sie Benutzer nach Bedarf zu der Gruppe hinzufügen oder aus der Gruppe entfernen, um ihren Zugriff zu steuern. Sie verwalten Zugriffsgruppen und deren Zugriff über die Seite Verwalten > Zugriff (IAM) > Zugriffsgruppen in der Konsole. Weitere Informationen finden Sie unter Zugriff auf eine Gruppe in der Konsole zuweisen.

{{../account/iam-mng-access.md#access-resources-console}}

{{../account/iam-mng-access.md#access-to-resources-console}}

{{../account/iam-mng-access.md#access-to-resource-group}}

Zuweisung des Zugriffs auf InstructLab mit Hilfe der CLI

Schrittweise Anleitungen zum Zuweisen, Entfernen und Prüfen des Zugriffs finden Sie unter Zugriff auf Ressourcen über die Befehlszeilenschnittstelle zuweisen. Das folgende Beispiel zeigt einen Befehl zur Zuweisung der Rolle Writer für instructlab:

Verwenden Sie instructlab als Servicenamen. Um die Rollen-IDs zu ermitteln, führen Sie den Befehl ibmcloud iam roles aus. Verwenden Sie außerdem Anführungszeichen bei Rollennamen, die aus mehr als einem Wort bestehen. Zum Beispiel "Service Configuration Reader".

Beispielbefehl, um einem Benutzer die Viewer-Rolle für ein bestimmtes InstructLab Projekt im Konto zu geben.

ibmcloud iam user-policy-create name@example.com --roles Viewer --service-name instructlab --attributes "projectId=1b111111-1ef1-11f1-1111-111bae11111a"

Beispielbefehl, um einem Benutzer die Rolle des Schlüsselmanagers für ein bestimmtes InstructLab Projekt im Konto zu geben.

ibmcloud iam user-policy-create name@email.com --roles "Key Manager" --service-name instructlab

Beispielbefehl, um einem Benutzer die Rolle des Verfassers für alle InstructLab Projekte im Konto zu geben.

ibmcloud iam user-policy-create USER@EXAMPLE.COM --service-name instructlab --roles Writer

Beispielbefehl, um die Rolle Administrator für alle Instanzen des InstructLab-Dienstes im Konto zuzuweisen.

ibmcloud iam user-policy-create name@example.com --roles Administrator --service-name instructlab

Beispielbefehl für die Zuweisung der Viewer-Rolle an alle Ressourcengruppen des Kontos.

ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group

Beispielbefehl für die Zuweisung der Viewer-Rolle an alle Benutzer in einer bestimmten Ressourcengruppe.

ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group

Beispielbefehl zum Abrufen einer Ressourcengruppe mit der Rolle Administrator.

ibmcloud iam service-policy-create test --roles Administrator --resource-group-name sample-resource-group

Zuweisung des Benutzerzugriffs auf InstructLab mithilfe der API

Eine schrittweise Anleitung zum Zuweisen, Entfernen und Prüfen des Zugriffs finden Sie unter Zugriff auf Ressourcen über die API zuweisen oder in den Dokumenten zur Erstellen einer Richtlinien-API. Die Cloudressourcennamen (CRN) der Rolle in der folgenden Tabelle werden verwendet, um Zugriff mit der API zuzuweisen.

Verwenden Sie instructlab für den Dienstnamen und sehen Sie in der Tabelle der Rollen-CRN-Werte nach, um sicherzustellen, dass Sie den richtigen Wert für die Rolle verwenden. Überprüfen Sie die folgende Liste der Rollen-CRNs.

IAM-Rolle CRNs
Rolle CRN
Leseberechtigter crn:v1:bluemix:public:iam::::serviceRole:Reader
Schreibberechtigter crn:v1:bluemix:public:iam::::serviceRole:Writer
Manager crn:v1:bluemix:public:iam::::serviceRole:Manager
Anzeigeberechtigter crn:v1:bluemix:public:iam::::role:Viewer
Operator crn:v1:bluemix:public:iam::::role:Operator
Bearbeiter crn:v1:bluemix:public:iam::::role:Editor
Administrator crn:v1:bluemix:public:iam::::role:Administrator
Service-Konfigurator-Reader crn:v1:bluemix:public:iam::::role:ConfigReader
Schlüsselmanager crn:v1:bluemix:public:resource-controller::::role:KeyManager

Das folgende Beispiel weist die Rolle Writer für instructlab zu.

curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H 'Authorization: Bearer $TOKEN' -H 'Content-Type: application/json' -d '{
  "type": "access",
  "description": "Writer role for InstructLab",
  "subjects": [
    {
      "attributes": [
        {
          "name": "iam_id",
          "value": "IBMid-123453user"
        }
      ]
    }'
  ],
  "roles":[
    {
      "role_id": "crn:v1:bluemix:public:iam::::serviceRole:Writer"
    }
  ],
  "resources":[
    {
      "attributes": [
        {
          "name": "accountId",
          "value": "$ACCOUNT_ID"
        },
        {
          "name": "serviceName",
          "value": "instructlab"
        }
      ]
    }
  ]
}

{{../account/iam-mng-access.md#access-resources-api}}

{{../account/iam-mng-access.md#access-resourcegroups-api}}