Éléments à prendre en compte pour la mise en place de la plate-forme IBM Quantum dans une organisation
IBM Quantum® Platform Il s'agit du tableau de bord dédié aux instances et aux charges de travail du service de calcul IBM Quantum de votre compte IBM Cloud®. Il offre une vue simplifiée de la gestion des accès. Le compte « IBM Cloud » d'une organisation peut comporter plusieurs utilisateurs et plusieurs instances Quantum Compute, chacune disposant de sa propre allocation. La gestion des identités et des accès (IAM) permet de contrôler quels utilisateurs peuvent accéder à quelles instances de service, ce qui vous permet de favoriser la collaboration tout en limitant l'accès lorsque cela s'avère nécessaire. La gestion des accès revêt une importance accrue si vous disposez d'instances de service dans le cadre de formules payantes. Consultez la section « Structure des comptes » sur IBM Cloud pour avoir une vue d'ensemble de la manière dont les comptes, les utilisateurs, les instances et les droits d'accès s'articulent entre eux. Pour plus d'informations sur les concepts IAM mentionnés dans ce guide, tels que les groupes d'accès, les politiques, les rôles et les groupes de ressources, consultez la documentation IAM d' IBM Cloud.
Ce guide décrit les choix et les compromis à prendre en compte lors de la configuration des droits d'accès pour une organisation disposant de plusieurs instances de service — par exemple, l'attribution d'une instance par équipe ou par charge de travail.
Si votre organisation dispose de plusieurs comptes « IBM Cloud » — par exemple, des comptes distincts par unité opérationnelle, chacun disposant de ses propres instances Quantum Compute —, vous pouvez les regrouper sous un seul compte « IBM Cloud Enterprise », qui comprend un compte principal chargé de la facturation et un ou plusieurs comptes enfants. Pour redistribuer les quotas des formules Premium ou Flex entre les comptes enfants, contactez le service d'assistance d' IBM Quantum via le Centre d'assistance IBM Cloud. Pour plus d'informations, consultez la documentation relative au compte « Enterprise » d' IBM Cloud.
Aperçu
IBM Cloud® propose plusieurs façons de mettre en œuvre les mécanismes décrits dans ce guide. La plupart des étapes sont communes à l'ensemble de l' IBM Cloud e et ne sont pas spécifiques à Quantum Compute, à l'exception des détails relatifs au rôle personnalisé.
Personnages impliqués
Les personas suivantes sont mentionnées dans ce guide :
- Utilisateur : personne ayant accès aux ressources de Quantum Compute ( instances de service ) et pouvant éventuellement collaborer avec d'autres utilisateurs sur ces ressources. L'accès des utilisateurs est géré par un administrateur; ceux-ci ne peuvent ni créer ni supprimer d'instances de service.
- Administrateur cloud : titulaire d’un compte « IBM Cloud » qui détient des ressources de calcul d IBM Quantum et gère les utilisateurs autorisés à accéder à ces ressources. En tant que propriétaire de la ressource, l'administrateur est facturé pour toute utilisation payante de celle-ci.
- Administrateur IDP : Un administrateur qui définit les identités et leurs attributs dans un fournisseur d'identité (IDP).
Terminologie
Ce guide utilise les termes suivants :
- Ressource : terme générique d' IBM Cloud désignant un objet pouvant être géré via l'interface utilisateur Cloud, l'interface de ligne de commande (CLI) ou l'API. Dans le cadre de ce guide, une ressource correspond à une instance du service de calcul quantique.
- Instance de service : une instance de service permet d'accéder aux services cloud, notamment aux ordinateurs quantiques, via le service de calcul d' IBM Quantum. Il est défini dans le catalogue. Vous pouvez définir plusieurs instances de service basées sur des formules identiques ou différentes, qui donnent accès à différents backends de calcul quantique. Pour plus d'informations, consultez les offres « IBM Cloud » disponibles.
Planifiez votre installation
Avant de mettre en place IBM Quantum Platform pour votre organisation, vous devez prendre les décisions suivantes :
-
Comment les identités des utilisateurs sont-elles définies? Vous pouvez configurer des utilisateurs d' IBM Cloud, des utilisateurs provenant d'un autre fournisseur d'identité (IDP), ou les deux.
- Si vous utilisez un autre fournisseur d'identité (IDP), est-ce l'administrateur du cloud ou l'administrateur de l'IDP qui affecte les utilisateurs aux groupes d'accès?
- Si l'administrateur de l'IDP attribue des utilisateurs à l'aide de règles dynamiques, vous devez disposer d'un attribut utilisateur IDP personnalisé à utiliser comme clé de correspondance (par exemple, un attribut
team).
-
De combien d'instances de service avez-vous besoin, et à quoi servira chacune d'entre elles? Choisissez soigneusement les noms de vos instances. Chaque fois que vous créez une instance de service via l'interface utilisateur d' IBM Quantum Platform, la plateforme effectue en votre nom un appel supplémentaire à IAM afin de créer un groupe d'accès correspondant (portant le même nom que l'instance, suivi de « Collaborateurs ») qui accorde un accès en écriture à cette instance. Par conséquent, les noms d'instance deviennent également des noms de groupes d'accès. Cette étape supplémentaire n'est nécessaire que lorsque vous créez une instance via l'interface utilisateur de IBM Quantum Platform. Ce problème ne se produit pas si vous créez l'instance à l'aide de Terraform, de l'interface CLI d' IBM Cloud ou de l'API IBM Cloud.
- Les charges de travail sont associées à des instances de service, et les utilisateurs ayant accès à une instance peuvent voir ses charges de travail.
- Les instances de service peuvent s'appuyer sur différents forfaits, ce qui permet d'accéder à différents backends et à différentes allocations.
-
Quels utilisateurs doivent pouvoir accéder à quelles instances de service?
-
Les utilisateurs devraient-ils pouvoir supprimer des charges de travail? Le fait de regrouper les charges de travail au sein d'instances de service permet une meilleure traçabilité des coûts facturés.
-
Allez-vous utiliser le groupe d'accès créé automatiquement pour chaque instance, créer vous-même des groupes d'accès supplémentaires, attribuer directement des droits d'accès à des utilisateurs individuels ou regrouper les instances au sein de groupes de ressources?
- Les groupes d'accès constituent un moyen pratique et courant de contrôler l'accès des utilisateurs aux ressources d' IBM Cloud. Chaque instance de service que vous créez via l'interface utilisateur d' IBM Quantum Platform dispose déjà de son propre groupe d'accès « Collaborateurs ». Vous pouvez utiliser ce groupe tel quel ou créer des groupes d'accès supplémentaires dans la console d' IBM Cloud s afin de regrouper les utilisateurs par équipe ou par charge de travail (par exemple,
mletfinance) sur une ou plusieurs instances. Chaque groupe d'accès utilise un rôle personnalisé qui permet aux utilisateurs d'accéder à des instances de service ou à des groupes de ressources spécifiques. Si vous n'avez pas besoin qu'un groupe d'utilisateurs partage le même accès, vous pouvez également attribuer un accès directement à des utilisateurs individuels, sans passer par un groupe d'accès.- Si vous utilisez des règles dynamiques basées sur des attributs IDP pour affecter des utilisateurs à des groupes d'accès, évitez les valeurs d'attributs qui sont des sous-chaînes les unes des autres. Par exemple, si vous utilisez et
mlchemlabcomme valeurs d'attribut, une règle correspondant àmlcorrespondrait également àchemlab, ce qui accorderait par inadvertance un accès plus large que prévu. Utilisez des valeurs uniques telles que etmlchem-lab, ou ajoutez des préfixes ou des suffixes pour éviter toute correspondance involontaire de sous-chaînes.
- Si vous utilisez des règles dynamiques basées sur des attributs IDP pour affecter des utilisateurs à des groupes d'accès, évitez les valeurs d'attributs qui sont des sous-chaînes les unes des autres. Par exemple, si vous utilisez et
- Les groupes de ressources ne sont utilisés que lorsque vous devez maintenir une séparation claire entre les instances de service. Lorsque vous créez une instance de service à partir de IBM Quantum Platform, vous pouvez sélectionner le groupe de ressources auquel elle appartient (et ajouter des balises), mais vous devez utiliser la console IBM Cloud pour créer ou gérer les groupes de ressources. Si d'autres instances de service sont créées dans un groupe de ressources, tous les utilisateurs ayant accès à ce groupe de ressources les voient automatiquement, sans qu'il soit nécessaire de mettre à jour les groupes d'accès. Si vous choisissez d'utiliser des groupes de ressources, commencez par créer des groupes d'accès, puis affectez-les à des groupes de ressources.
NoteUne instance de service ne peut appartenir qu'à un seul groupe de ressources, et cette affectation ne peut plus être modifiée une fois l'instance créée. Par conséquent, les groupes de ressources pourraient ne pas offrir suffisamment de flexibilité si les instances de service devaient ultérieurement être déplacées d'un groupe de ressources à un autre.
- Les groupes d'accès constituent un moyen pratique et courant de contrôler l'accès des utilisateurs aux ressources d' IBM Cloud. Chaque instance de service que vous créez via l'interface utilisateur d' IBM Quantum Platform dispose déjà de son propre groupe d'accès « Collaborateurs ». Vous pouvez utiliser ce groupe tel quel ou créer des groupes d'accès supplémentaires dans la console d' IBM Cloud s afin de regrouper les utilisateurs par équipe ou par charge de travail (par exemple,
Considérations
Vous devez tenir compte des considérations suivantes lors de la mise en place de votre environnement.
Définir des rôles plus précis
Les rôles personnalisés permettent un contrôle d'accès plus précis. Par exemple, certains utilisateurs peuvent avoir besoin d'un accès complet pour intervenir sur les instances de service, tandis que d'autres peuvent se contenter d'un accès en lecture aux instances de service, aux programmes et aux charges de travail.
Pour ce faire, définissez deux rôles personnalisés distincts, tels que MLreader et MLwriter. Supprimez toutes les actions « Annuler », « Supprimer » et « Mettre à jour » du rôle personnalisé MLreader , puis incluez toutes les actions dans ce rôle personnalisé MLwriter . Ajoutez ensuite les rôles aux deux groupes d'accès correspondants.
Lorsque vous utilisez des règles dynamiques, c'est-à-dire lorsque l'administrateur de l'IDP gère les accès via des attributs utilisateur personnalisés de l'IDP, n'utilisez pas d'attributs utilisateur personnalisés de l'IDP qui sont des sous-chaînes les uns des autres. Par exemple, n'utilisez pas ml et mlReader, car la comparaison de chaînes de caractères de ml accepterait également mlReader. Vous pourriez utiliser et MLreader MLwriter pour éviter ce conflit.
Pour plus d'exemples, consultez la section « Configurer des rôles personnalisés ».
Accès partagé à la charge de travail
L'accès s'applique aux instances de service. Ainsi, les utilisateurs disposant d'un accès en écriture à une instance (notamment via le groupe d'accès « Collaborateurs » créé automatiquement pour les instances générées via l'interface utilisateur IBM Quantum Platform ) peuvent annuler leurs propres charges de travail, mais peuvent également consulter et annuler celles des autres utilisateurs au sein de cette instance. Cela tient au fonctionnement de l'IAM et ne peut pas être modifié.
Simuler des structures hiérarchiques
Par défaut, l'accès à chaque instance de service est géré de manière indépendante, par exemple via le groupe d'accès « Collaborateurs » créé automatiquement pour les instances créées via l'interface utilisateur IBM Quantum Platform. IAM ne dispose pas d'une hiérarchie de groupes intégrée, mais vous pouvez en simuler une en créant des groupes d'accès qui font référence aux instances de service de plusieurs équipes. Les utilisateurs qui ont besoin d'un accès étendu doivent simplement être ajoutés à un seul groupe « de niveau supérieur », plutôt qu'aux groupes d'accès individuels de chaque équipe.
Déploiement cohérent et reproductible de la configuration
Les étapes décrites dans ce guide peuvent être automatisées afin d'assurer une gestion cohérente et reproductible des utilisateurs, des instances de service et des mappages d'accès entre celles-ci. Pour les modèles, consultez la documentation relative au fournisseur « IBM Cloud® » de Terraform.
Vous pouvez utiliser Terraform pour définir des allocations et des limites, ainsi que pour restreindre l'accès au backend, pour les instances de service quantum-computing . Pour plus d'informations, consultez la section « Premiers pas avec Terraform » sur IBM Cloud.
Exemple :
resource "ibm_resource_instance" "instance1" {
name = "name"
service = "quantum-computing"
plan = "premium"
location = "us-east"
parameters = {
usage_allocation_seconds = "10" # Mandatory
usage_limit_seconds = "20" # Optional. If omitted, it can
# continue using time after reaching the allocation
backends = ["ibm_boston"] # Optional
}
}
Etapes suivantes
- Consultez la section Configurer IBM Quantum Platform pour une organisation pour connaître les étapes à suivre pour configurer IBM Quantum Platform.
- Comprendre les plans disponibles.
- Créer des instances.
- Comprendre la structure des comptes de l' IBM Cloud.
- Créer des politiques et des groupes d'accès.
- Gérer les utilisateurs.
- IBM Cloud Documentation IAM pour plus de détails sur l'IAM.
- IBM Cloud Documentation d'entreprise relative à la gestion de plusieurs comptes associés.