Considerazioni per la configurazione di IBM Quantum Platform in un'organizzazione
IBM Quantum® Platform è la dashboard per le istanze e i carichi di lavoro di IBM Quantum Compute Service del tuo account IBM Cloud®, e fornisce una vista semplificata della gestione degli accessi. L'account IBM Cloud di un'organizzazione può avere più utenti e più istanze Quantum Compute, ciascuna con la propria allocazione. Identity and Access Management (IAM) controlla quali utenti possono accedere a quali istanze di servizio, così puoi abilitare la collaborazione limitando la visibilità dove necessario. La gestione degli accessi diventa più rilevante se hai istanze di servizio su piani a pagamento. Consulta Struttura dell'account IBM Cloud per una panoramica di come account, utenti, istanze e accessi si combinano tra loro. Consulta la documentazione IAM di IBM Cloud per i dettagli completi sui concetti IAM citati in questa guida, come gruppi di accesso, policy, ruoli e gruppi di risorse.
Questa guida descrive le decisioni e i compromessi coinvolti nella configurazione degli accessi per un'organizzazione con più istanze di servizio — ad esempio, assegnando un'istanza per team o carico di lavoro.
Se la tua organizzazione ha più account IBM Cloud — ad esempio, account separati per unità aziendale, ciascuno con le proprie istanze Quantum Compute — puoi collegarli sotto un unico account IBM Cloud Enterprise, che ha un account principale responsabile della fatturazione e uno o più account figlio. Per ridistribuire l'allocazione del Premium Plan o del Flex Plan tra gli account figlio, contatta il supporto IBM Quantum tramite l'IBM Cloud Support Center. Consulta la documentazione sugli account IBM Cloud Enterprise per tutti i dettagli.
Panoramica
IBM Cloud® offre diversi modi per implementare i meccanismi descritti in questa guida. La maggior parte dei passaggi è generica per IBM Cloud e non specifica per Quantum Compute, ad eccezione dei dettagli sui ruoli personalizzati.
Ruoli coinvolti
I seguenti ruoli sono menzionati in questa guida:
-
Utente: una persona che ottiene accesso alle risorse di Quantum Compute (istanze del servizio) e può potenzialmente collaborare con altri utenti su queste risorse. L'accesso degli utenti è controllato da un amministratore, e questi non possono creare o eliminare istanze del servizio.
-
Amministratore Cloud: il proprietario di un account IBM Cloud che possiede le risorse IBM Quantum Compute e gestisce quali utenti possono accedervi. In quanto proprietario delle risorse, all'amministratore vengono addebitati i costi di qualsiasi utilizzo di risorse a pagamento.
-
Amministratore IDP: un amministratore che definisce le identità e i relativi attributi in un provider di identità (IDP).
Terminologia
Questa guida utilizza i seguenti termini:
-
Risorsa: un termine generico di IBM Cloud che indica un oggetto gestibile tramite l'interfaccia utente Cloud, la CLI o le API. In questa guida, una risorsa è un'istanza del servizio Quantum Compute.
-
Istanza del servizio: un'istanza del servizio è usata per accedere ai servizi Cloud — in particolare, ai computer quantistici, attraverso IBM Quantum Compute Service. Viene definita tramite il catalogo. Puoi definire più istanze del servizio basate sullo stesso piano o su piani diversi, che offrono accesso a diversi backend di calcolo quantistico. Consulta Piani IBM Cloud disponibili per i dettagli.
Pianifica la configurazione
Prima di configurare IBM Quantum Platform per la tua organizzazione, devi prendere queste decisioni:
-
Come vengono definite le identità degli utenti? Puoi configurare utenti IBM Cloud, utenti di un altro identity provider (IDP), o entrambi.
-
Se stai usando un IDP diverso, chi assegna gli utenti ai gruppi di accesso: l'amministratore Cloud o l'amministratore IDP?
-
Se l'amministratore IDP assegna gli utenti tramite regole dinamiche, hai bisogno di un attributo utente IDP personalizzato da usare come chiave di corrispondenza (ad esempio, un attributo
team).
-
-
Di quante istanze di servizio hai bisogno, e a cosa servirà ciascuna? Pianifica attentamente i nomi delle tue istanze. Ogni volta che crei un'istanza di servizio tramite l'interfaccia utente di IBM Quantum Platform, la piattaforma effettua una chiamata aggiuntiva a IAM per tuo conto per creare un gruppo di accesso corrispondente (con lo stesso nome dell'istanza seguito da "Collaborators") che concede l'accesso in scrittura a quell'istanza. Pertanto, i nomi delle istanze diventano anche nomi di gruppi di accesso. Questo passaggio aggiuntivo avviene solo quando crei un'istanza tramite l'interfaccia utente di IBM Quantum Platform. Non avviene se crei l'istanza usando Terraform, l'IBM Cloud CLI o l'IBM Cloud API.
-
I carichi di lavoro appartengono alle istanze del servizio, e gli utenti che hanno accesso a un'istanza possono vedere i relativi carichi di lavoro.
-
Le istanze del servizio possono essere basate su piani diversi, consentendo l'accesso a diversi backend e allocazioni.
-
-
Quali utenti devono accedere a quali istanze di servizio?
-
Gli utenti devono poter eliminare i carichi di lavoro? Mantenere i carichi di lavoro nelle istanze del servizio offre una maggiore tracciabilità per i costi di fatturazione.
-
Userai il gruppo di accesso creato automaticamente per ogni istanza, creerai altri gruppi di accesso personalizzati, assegnerai l'accesso direttamente ai singoli utenti oppure organizzerai le istanze in gruppi di risorse?
-
I gruppi di accesso sono un modo comodo e comune per controllare l'accesso degli utenti alle risorse di IBM Cloud. Ogni istanza di servizio creata tramite l'interfaccia utente di IBM Quantum Platform dispone già di un proprio gruppo di accesso "Collaborators". Puoi usare quel gruppo così com'è, oppure creare altri gruppi di accesso nella console di IBM Cloud per raggruppare gli utenti per team o carico di lavoro (ad esempio,
mlefinance) su una o più istanze. Ogni gruppo di accesso usa un ruolo personalizzato che consente agli utenti di accedere a istanze di servizio o gruppi di risorse specifici. Se non hai bisogno che un gruppo di utenti condivida lo stesso accesso, puoi anche assegnare l'accesso direttamente ai singoli utenti, senza un gruppo di accesso.- Se usi regole dinamiche basate sugli attributi IDP per assegnare gli utenti ai gruppi di accesso, evita valori di attributo che siano sottostringhe l'uno dell'altro. Ad esempio, se usi
mlechemlabcome valori di attributo, una regola che corrisponde amlcorrisponderebbe anche achemlab, concedendo inavvertitamente più accesso del previsto. Usa valori univoci comemlechem-lab, oppure aggiungi prefissi o suffissi per evitare corrispondenze indesiderate tra sottostringhe.
- Se usi regole dinamiche basate sugli attributi IDP per assegnare gli utenti ai gruppi di accesso, evita valori di attributo che siano sottostringhe l'uno dell'altro. Ad esempio, se usi
-
I gruppi di risorse vengono usati solo quando è necessario mantenere una netta separazione tra le istanze del servizio. Quando crei un'istanza di servizio da IBM Quantum Platform, puoi selezionare a quale gruppo di risorse appartiene (e aggiungere tag), ma devi usare la console di IBM Cloud per creare o gestire i gruppi di risorse. Se vengono create nuove istanze del servizio in un gruppo di risorse, tutti gli utenti che hanno accesso al gruppo di risorse le vedranno automaticamente, senza dover aggiornare i gruppi di accesso. Se scegli di usare i gruppi di risorse, prima crea gruppi di accesso e poi assegnali ai gruppi di risorse.
notaUn'istanza di servizio può appartenere a un solo gruppo di risorse, e questa assegnazione non può essere modificata dopo che l'istanza è stata creata. Pertanto, i gruppi di risorse potrebbero non offrire sufficiente flessibilità qualora in seguito le istanze di servizio dovessero essere spostate tra gruppi di risorse.
-
Considerazioni
Tieni presenti le seguenti considerazioni quando configuri il tuo ambiente.
Definire ruoli con granularità maggiore
I ruoli personalizzati possono essere usati per un controllo degli accessi più granulare. Ad esempio, alcuni utenti potrebbero aver bisogno di accesso completo per lavorare sulle istanze del servizio, mentre altri potrebbero aver bisogno solo dell'accesso in lettura alle istanze del servizio, ai programmi e ai carichi di lavoro.
Per ottenere ciò, definisci due ruoli personalizzati diversi, come MLreader e MLwriter. Rimuovi tutte le azioni di annullamento, eliminazione e aggiornamento dal ruolo personalizzato MLreader, e includi tutte le azioni nel ruolo personalizzato MLwriter. Quindi aggiungi i ruoli a due diversi gruppi di accesso di conseguenza.
Quando si usano le regole dinamiche, ovvero quando l'amministratore IDP gestisce l'accesso tramite attributi utente IDP personalizzati, non usare attributi utente IDP personalizzati che siano sottostringhe gli uni degli altri. Ad esempio, non usare ml e mlReader, perché il confronto della stringa ml accetterebbe anche mlReader. Potresti usare MLreader e MLwriter per evitare questo conflitto.
Per un esempio, consulta Configurare ruoli personalizzati.
Accesso condiviso ai carichi di lavoro
L'accesso si applica alle istanze di servizio. Pertanto, gli utenti con accesso in scrittura a un'istanza (incluso tramite il gruppo di accesso "Collaborators" creato automaticamente per le istanze create tramite l'interfaccia utente di IBM Quantum Platform) possono annullare i propri carichi di lavoro, ma possono anche visualizzare e annullare i carichi di lavoro degli altri utenti in quell'istanza. Questa è una caratteristica del funzionamento di IAM e non può essere modificata.
Simulare strutture gerarchiche
Per impostazione predefinita, l'accesso di ogni istanza di servizio viene gestito in modo indipendente, ad esempio tramite il gruppo di accesso "Collaborators" creato automaticamente per le istanze create tramite l'interfaccia utente di IBM Quantum Platform. IAM non dispone di una gerarchia di gruppi integrata, ma puoi approssimarne una creando gruppi di accesso che fanno riferimento alle istanze di servizio di più team. Gli utenti che necessitano di un accesso ampio devono essere aggiunti solo a un gruppo "di livello superiore", anziché al gruppo di accesso individuale di ogni team.
Distribuzione coerente e ripetibile della configurazione
I passaggi in questa guida possono essere automatizzati per una gestione coerente e ripetibile di utenti, istanze del servizio e del mapping di accesso tra di esse. Consulta la documentazione del provider Terraform IBM Cloud® per i template.
Puoi usare Terraform per impostare allocazioni e limiti, nonché limitare l'accesso ai backend, per le istanze del servizio quantum-computing. Consulta Iniziare con Terraform su IBM Cloud per ulteriori informazioni.
Esempio:
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
}
}
Passi successivi
- Consulta Configurare IBM Quantum Platform per un'organizzazione per i passaggi di configurazione di IBM Quantum Platform.
- Scopri i piani disponibili.
- Crea istanze.
- Comprendi la struttura dell'account IBM Cloud.
- Crea policy e gruppi di accesso.
- Gestisci gli utenti.
- Documentazione IBM Cloud IAM per i dettagli completi su IAM.
- Documentazione IBM Cloud Enterprise per la gestione di più account collegati.