Structure du compte IBM Cloud
Avant de configurer IBM Quantum® Platform, il est important de comprendre la structure du compte Identity and Access Management (IAM) d'IBM Cloud®. Comme le montre le schéma général ci-dessous, il y a un compte au niveau le plus élevé. Il n'y a qu'un seul propriétaire de compte, qui dispose d'un contrôle exclusif sur la gestion de la facturation.
Ce compte contient plusieurs utilisateurs et instances de service (comme IBM Qiskit Runtime). Chaque instance de service existe dans une région spécifique et possède un plan, donc si tu souhaites proposer plusieurs plans à tes utilisateurs, tu auras plusieurs instances de service, chacune associée à un plan différent.
Chaque utilisateur se voit attribuer des politiques d'accès, qui lui accordent différents niveaux d'accès aux instances de service. Les politiques d'accès peuvent être regroupées dans un groupe d'accès.
Par défaut, tous les utilisateurs du compte peuvent se voir mutuellement. Dans les paramètres du compte, tu peux activer l'option pour restreindre la visibilité, en t'assurant que seuls les utilisateurs disposant d'autorisations pour le service IAM peuvent voir les autres. Il est important de noter qu'IBM Cloud ne prend pas en charge les groupes d'utilisateurs ni les administrateurs spécifiques à un groupe.
Politiques d'accès et groupes
Comme décrit précédemment, chaque utilisateur peut se voir attribuer une ou plusieurs politiques d'accès : individuellement, en tant que membre d'un groupe d'accès, ou les deux.
Dans une politique d'accès, tu peux spécifier des permissions en sélectionnant des rôles de plateforme et de service, ou en créant des rôles personnalisés. Les rôles de plateforme définissent des actions au niveau de la plateforme, comme la création ou la gestion d'instances. Les rôles de service accordent l'accès pour effectuer des actions au sein du service, comme l'appel d'un endpoint API « créer des jobs » (c'est-à-dire, exécuter un job).
Ce guide décrit une représentation simplifiée du modèle IAM. Pour les détails complets, consulte la documentation IBM Cloud IAM.
Rôles
Il existe deux familles de rôles : la gestion de plateforme et l'accès aux services.
Les rôles de gestion de plateforme définissent les actions autorisées, comme l'attribution des accès utilisateurs et la création d'instances de service pour gérer les ressources au niveau de la plateforme. Les rôles de plateforme s'appliquent également aux actions pouvant être effectuées dans le contexte des services de gestion de compte, comme l'invitation et la suppression d'utilisateurs, la gestion des groupes d'accès et la gestion des ID de service.
Les rôles d'accès aux services définissent les actions autorisées, comme l'appel des API de service ou l'accès au tableau de bord d'un service. Ces rôles sont personnalisés en fonction du service sélectionné dans la politique. Dans le contexte de ces guides, le service est toujours Qiskit Runtime.
L'exécution d'actions nécessite souvent une combinaison de rôles de gestion de plateforme et d'accès aux services. Le rôle de service writer te permet d'exécuter des jobs, par exemple, mais pas de lister les instances. Pour lister l'instance, tu as besoin au minimum du rôle viewer pour la plateforme. Voici quelques rôles couramment utilisés :
- La création d'instances nécessite le rôle d'accès au service
manager, ainsi que le rôle de gestion de plateformeviewersur tous les services de gestion de compte.remarqueLes utilisateurs disposant du rôle de gestion de plateforme
viewersur tous les services de gestion de compte peuvent également consulter des services comme la facturation. Si tu veux empêcher cet accès supplémentaire en lecture, utilise l'interface en ligne de commande IBM Cloud pour leur accorder l'accès uniquement aux groupes de ressources :ibmcloud iam access-group-policy-create <group name> --roles Viewer --resource-type resource-group - L'exécution de jobs nécessite le rôle d'accès au service
writeret l'accès au rôle de gestion de plateformeviewerpour l'instance.
Lors de la création d'une politique d'accès (que ce soit sur un groupe d'accès ou pour un utilisateur), tu peux vérifier quelles actions font partie du rôle en consultant la description. Par exemple quantum-computing.job.create - Create a job to run a program.
Tu peux également déterminer les actions autorisées par chaque rôle depuis la page Rôles IAM. Sélectionne Qiskit Runtime dans le menu déroulant en haut de la page. Ensuite, pour une liste plus détaillée, clique sur le nombre dans la colonne à côté du nom du rôle. Par exemple, en visitant cette page et en cliquant sur le nombre à côté du rôle Manager, tu peux voir que ce rôle inclut la possibilité de supprimer un job (quantum-computing.job.delete).
Le tableau suivant fournit des exemples de certaines des actions de gestion de plateforme que les utilisateurs peuvent effectuer dans le contexte du service Qiskit Runtime.
| Rôle de gestion de plateforme | Service Qiskit Runtime |
|---|---|
| Rôle Viewer | Afficher les instances et les identifiants |
| Rôle Operator | Afficher les instances et gérer les identifiants |
| Rôle Editor | Créer, supprimer, modifier et afficher des instances. Gérer les identifiants |
| Rôle Administrator | Toutes les actions de gestion pour les services |
Le tableau suivant fournit des exemples de certaines des actions d'accès aux services que les utilisateurs peuvent effectuer dans le contexte du service Qiskit Runtime.
| Rôle d'accès au service | Actions Qiskit Runtime |
|---|---|
| Reader | Effectuer des actions en lecture seule, comme la consultation des jobs |
| Writer | Permissions au-delà du rôle Reader, incluant l'exécution de jobs |
| Manager | Permissions au-delà du rôle Writer, incluant le provisionnement d'instances, la définition de la limite de coût de l'instance, et la suppression ou l'annulation d'un job |
Étapes suivantes
- Créer des instances.
- Passer du plan Open.
- Comprendre les rôles IAM (sélectionne Qiskit Runtime dans le menu déroulant en haut de la page).