Überlegungen zur Einrichtung von IBM Quantum Platform für eine Organisation
In einer Organisation, in der Einzelpersonen möglicherweise an mehreren Projekten arbeiten, kann die Governance von IBM Quantum Platform komplex erscheinen. Allerdings kann die Zugriffsverwaltung einfach verwendet werden, um die Zusammenarbeit von Benutzern zu ermöglichen und die Sichtbarkeit von Benutzern und Projekten bei Bedarf einzuschränken. Die Zugriffsverwaltung wird wichtiger bei IBM Quantum Platform-Ressourcen, die nicht kostenlos sind - das heißt, Serviceinstanzen, die kostenpflichtige Pläne verwenden (für die Organisationen berechnet werden).
Überblick
IBM Cloud® bietet verschiedene Möglichkeiten, die in dieser Anleitung beschriebenen Mechanismen zu implementieren. Es gibt mehrere Wege, diese Ziele zu erreichen. Außerdem sind die meisten Schritte in dieser Anleitung generisch für IBM Cloud und nicht spezifisch für IBM Quantum Platform, mit Ausnahme der Details zu benutzerdefinierten Rollen.
Beteiligte Personas
Es gibt mehrere Hauptpersonas, die in dieser Anleitung erwähnt werden:
- Benutzer: Jemand, der Zugriff auf IBM Quantum Platform-Ressourcen (Serviceinstanzen) erhält und potenziell mit anderen Benutzern an diesen Ressourcen zusammenarbeiten kann. Der Zugriff der Benutzer wird von einem Administrator kontrolliert, und sie können keine Serviceinstanzen erstellen oder löschen.
- Cloud-Administrator: Ein IBM Cloud-Kontoinhaber, der IBM Quantum Platform-Ressourcen besitzt und verwaltet, welche Benutzer auf diese Ressourcen zugreifen können. Als Ressourcenbesitzer wird dem Administrator die Nutzung jeder bezahlten Ressource in Rechnung gestellt.
- IDP-Administrator: Ein Administrator, der Identitäten und deren Attribute in einem Identitätsprovider (IDP) definiert.
Terminologie
Diese Anleitung verwendet die folgenden Begriffe:
-
Ressource: Ein generischer IBM Cloud-Begriff, der sich auf ein Objekt bezieht, das über die Cloud-Benutzeroberfläche, CLI oder API verwaltet werden kann. Für diese Anleitung ist eine Ressource eine IBM Quantum Platform-Serviceinstanz.
-
Serviceinstanz: Eine Serviceinstanz wird verwendet, um auf Cloud-Services zuzugreifen - insbesondere auf Quantencomputer. Sie wird über den Katalog definiert. Du kannst mehrere Serviceinstanzen basierend auf demselben oder unterschiedlichen Plänen definieren, die Zugriff auf verschiedene Quantencomputing-Backends bieten. Einzelheiten findest du unter Verfügbare IBM Cloud-Pläne.
-
Projekt: Eine Gruppierungseinheit, die es Benutzern ermöglicht, an denselben Ressourcen zu arbeiten. Diese Anleitung verwendet zwei Projekte:
mlundfinance. Weitere Informationen findest du unter Hierarchische Projektstrukturen.hinweisDieses Projekt steht nicht im Zusammenhang mit dem "Projekt"-Konzept in der klassischen IBM Quantum®-Platform.
Plane deine Einrichtung
Bevor du IBM Quantum Platform für deine Organisation einrichtest, musst du diese Entscheidungen treffen:
-
Wie werden Benutzeridentitäten definiert? Du kannst IBM Cloud-Benutzer, Benutzer von einem anderen IDP oder beides einrichten.
- Wenn du einen anderen IDP verwendest, weist der Cloud-Administrator oder der IDP-Administrator Benutzer Projektressourcen zu?
- Wenn der IDP-Administrator Benutzer Projekten zuweist, benötigst du eine Zeichenkette, die als Schlüssel verwendet werden soll, wie z.B.
project(das diese Anleitung verwendet) für Projektvergleiche.
-
Was sind die Projekte und welche Serviceinstanzen gehören zu jedem? Du musst deine Projektnamen sorgfältig planen.
- Mache Projektnamen nicht zu Teilzeichenketten eines anderen. Wenn du beispielsweise
mlundchemlabfür Projektnamen verwendest, wird später, wenn du eine Projektübereinstimmung fürmleinrichtest, auchchemlabausgelöst und versehentlich mehr Zugriff gewährt als erwartet. Verwende stattdessen eindeutige Namen wiemlundchem-lab. Alternativ verwende Präfix- oder Suffixwerte, um solche unbeabsichtigten Teilzeichenketten-Übereinstimmungen zu vermeiden. - Die Verwendung von Namenskonventionen zusammen mit Präfix- oder Suffixwerten kann dir helfen, den Zugriff auf mehrere Projekte einfach zu ermöglichen.
- Quantenexperimente (Jobs) gehören zu Serviceinstanzen, und Benutzer, die Zugriff auf eine Instanz haben, können deren Jobs sehen.
- Serviceinstanzen können auf unterschiedlichen Plänen basieren und Zugriff auf unterschiedliche Backends ermöglichen.
- Mache Projektnamen nicht zu Teilzeichenketten eines anderen. Wenn du beispielsweise
-
Welche Benutzer benötigen Zugriff auf welche Projekte?
-
Sollten Benutzer Jobs löschen können? Das Behalten von Jobs in Serviceinstanzen bietet mehr Nachvollziehbarkeit für Abrechnungskosten.
-
Wirst du Zugriffsgruppen verwenden, die direkt auf IBM Quantum Platform-Serviceinstanzen verweisen, oder Dienste in Ressourcengruppen organisieren?
- Zugriffsgruppen sind eine bequeme und gängige Methode zur Steuerung des Benutzerzugriffs für IBM Cloud-Ressourcen. Sie sind ein einfaches, aber leistungsstarkes Mittel, um Benutzerzugriff konsistent zuzuweisen. Wir erstellen eine Zugriffsgruppe für jedes Projekt und ordnen Benutzer Zugriffsgruppen zu. Jede Zugriffsgruppe verwendet eine benutzerdefinierte Rolle, die Benutzern den Zugriff auf bestimmte Serviceinstanzen oder Ressourcengruppen ermöglicht.
- Ressourcengruppen werden nur verwendet, wenn du eine klare Trennung von Serviceinstanzen beibehalten musst. Wenn mehr Serviceinstanzen in einer Ressourcengruppe erstellt werden, sehen alle Benutzer mit Zugriff auf die Ressourcengruppe sie automatisch, ohne Zugriffsgruppen zu aktualisieren. Wenn du dich für Ressourcengruppen entscheidest, erstelle Zugriffsgruppen und weise sie dann Ressourcengruppen zu.
hinweisEine Serviceinstanz kann nur zu einer Ressourcengruppe gehören, und nachdem Instanzen Ressourcengruppen zugewiesen wurden, können sie nicht geändert werden. Dies bedeutet auch, dass die Ressourcengruppenzuweisung nur bei der Erstellung der Serviceinstanz erfolgen kann. Daher bieten Ressourcengruppen möglicherweise nicht genügend Flexibilität, wenn sich Zuweisungen von Serviceinstanzen zu Ressourcengruppen ändern müssen.
Überlegungen
Du solltest die folgenden Überlegungen beim Einrichten deiner Umgebung verstehen.
Definiere feinkörnigere Rollen
Die Aktionen in den benutzerdefinierten Rollen können für eine feinkörnigere Zugriffskontrolle verwendet werden. Einige Benutzer benötigen möglicherweise vollen Zugriff, um an Serviceinstanzen zu arbeiten, während andere möglicherweise nur Lesezugriff auf Serviceinstanzen, Programme und Jobs benötigen.
Um dies zu erreichen, definiere zwei verschiedene benutzerdefinierte Rollen, wie z.B. MLreader und MLwriter. Entferne alle Abbrechen-, Lösch- und Aktualisierungsrollen aus der benutzerdefinierten Rolle MLreader und schließe alle Aktionen in der benutzerdefinierten Rolle MLwriter ein. Füge dann die Rollen entsprechend zwei verschiedenen Zugriffsgruppen hinzu.
Verwende bei der Verwendung dynamischer Regeln, d.h. wenn der Identitätsprovider (IDP)-Administrator den Zugriff über benutzerdefinierte IDP-Benutzerattribute verwaltet, keine benutzerdefinierten IDP-Benutzerattribute, die Teilzeichenketten voneinander sind. Verwende beispielsweise nicht ml und mlReader, da der Zeichenkettenvergleich von ml auch mlReader akzeptieren würde. Du könntest MLreader und MLwriter verwenden, um diesen Konflikt zu vermeiden.
Ein Beispiel für das Einrichten benutzerdefinierter Rollen findest du unter Zugriffsgruppen für Projekte erstellen.
Zugriff auf gemeinsame Workloads
Es ist wichtig zu beachten, dass der Zugriff für Serviceinstanzen gilt. Daher können Benutzer mit 'Schreib'-Zugriff auf eine Instanz ihre eigenen Workloads abbrechen, aber auch Workloads anderer Benutzer anzeigen und abbrechen. Dies ist eine Funktion der Arbeitsweise von IAM und kann nicht geändert werden.
Andere Cloud-Ressourcen
Die Schritte in dieser Anleitung können verwendet werden, um auch den Zugriff auf andere Cloud-Ressourcen zu verwalten. Schließe die entsprechenden Berechtigungen in die Zugriffsgruppen der relevanten Projekte ein.
Hierarchische Projektstrukturen
In dieser Anleitung wurde die Zuordnung von Benutzern zu Projekten und Serviceinstanzen einfach gehalten. Durch die Zuordnung mehrerer Benutzer zu Zugriffsgruppen und das Verweisen auf Serviceinstanzen aus mehreren Zugriffsgruppen können jedoch komplexere Zuordnungen implementiert werden.
Diese Methode kann eine hierarchische Struktur aufnehmen. Das heißt, sie kann sich daran ausrichten, wie Benutzer möglicherweise der Hub/Group/Project-Zugriffsstruktur in der klassischen Version von IBM Quantum®-Platform zugewiesen werden. Eine Gruppe könnte beispielsweise eine Zugriffsgruppe sein, die allen Serviceinstanzen der Projekte der Gruppe zugewiesen ist. Benutzer, die Zugriff auf alle Projekte der Gruppe erhalten sollten, müssten dann nur zur Zugriffsgruppe der Gruppe hinzugefügt werden.
Konsistente und wiederholbare Bereitstellung der Konfiguration
Die Schritte dieser Anleitung können für eine konsistente und wiederholbare Verwaltung von Benutzern, Projekten und der Zuordnung zwischen diesen automatisiert werden. Lies die Terraform IBM Cloud®-Provider-Dokumentation für Vorlagen.
Nächste Schritte
- Siehe IBM Quantum Platform für eine Organisation konfigurieren für die Schritte zur Einrichtung von IBM Quantum Platform.
- Verstehe die verfügbaren Pläne.
- Erstelle Instanzen.
- Verstehe die IBM Cloud-Struktur.
- Erstelle Richtlinien und Zugriffsgruppen.
- Verwalte Benutzer.