Considerações sobre a configuração da IBM Quantum Platform para uma organização
IBM Quantum® Platform é o painel de controle para as instâncias e cargas de trabalho do Compute Service do IBM Quantum da sua conta do IBM Cloud® e oferece uma visão simplificada do gerenciamento de acesso. A conta do IBM Cloud de uma organização pode ter vários usuários e várias instâncias do Quantum Compute, cada uma com sua própria alocação. O Gerenciamento de Identidade e Acesso (IAM) controla quais usuários podem acessar quais instâncias de serviço, permitindo que você promova a colaboração e, ao mesmo tempo, restrinja a visibilidade quando necessário. O gerenciamento de acesso se torna mais relevante se você tiver instâncias de serviço em planos pagos. Consulte a estrutura de contas d IBM Cloud para ter uma visão geral de como as contas, os usuários, as instâncias e o acesso se relacionam. Consulte a documentação do IAM do IBM Cloud para obter detalhes completos sobre os conceitos do IAM mencionados neste guia, como grupos de acesso, políticas, funções e grupos de recursos.
Este guia descreve as decisões e as escolhas envolvidas na configuração do acesso para uma organização com várias instâncias de serviço — por exemplo, a atribuição de uma instância por equipe ou carga de trabalho.
Se sua organização tiver várias contas do IBM Cloud — por exemplo, contas separadas para cada unidade de negócios, cada uma com suas próprias instâncias do Quantum Compute —, você poderá vinculá-las a uma única conta do IBM Cloud Enterprise, que conta com uma conta principal responsável pelo faturamento e uma ou mais contas secundárias. Para redistribuir a alocação do Plano Premium ou Flex entre contas secundárias, entre em contato com o suporte do IBM Quantum por meio da Central de Suporte do IBM Cloud. Consulte a documentação da conta Enterprise do IBM Cloud para obter todos os detalhes.
Visão geral
IBM Cloud® oferece várias maneiras de implementar os mecanismos descritos neste guia. A maioria das etapas é genérica para o IBM Cloud e não é específica do Quantum Compute, exceto os detalhes da função personalizada.
Pessoas envolvidas
As seguintes personas são mencionadas neste guia:
- Usuário : Alguém que tem acesso aos recursos do Quantum Compute ( instâncias de serviço ) e que, potencialmente, pode colaborar com outros usuários nesses recursos. O acesso dos usuários é controlado por um administrador, e eles não podem criar nem excluir instâncias do serviço.
- Administrador de nuvem : Titular de uma conta do IBM Cloud que é proprietário dos recursos do Quantum Compute e gerencia quais usuários podem acessar esses recursos. Na qualidade de proprietário do recurso, o administrador é responsável pelo pagamento de qualquer uso de recursos pagos.
- Administrador de IDP : Um administrador que define identidades e seus atributos em um provedor de identidade (IDP).
Terminologia
Este guia usa os seguintes termos:
- Recurso : Um termo genérico do IBM Cloud que se refere a um objeto que pode ser gerenciado por meio da interface de usuário da nuvem, da CLI ou da API. Para este guia, um recurso é uma instância do serviço Qiskit Runtime.
- Instância de serviço : Uma instância de serviço é utilizada para acessar serviços na nuvem — especificamente, computadores quânticos — por meio do serviço “ Qiskit Runtime ”. Isso é definido por meio do catálogo. É possível definir várias instâncias de serviço com base em planos iguais ou diferentes, que oferecem acesso a diferentes back-ends de computação quântica. Consulte os planos disponíveis do “ IBM Cloud ” para obter mais detalhes.
Planeje sua configuração
Antes de configurar o IBM Quantum Platform para sua organização, você precisa tomar essas decisões:
-
Como as identidades dos usuários são definidas? Você pode configurar usuários d IBM Cloud, usuários de outro provedor de identidade (IDP) ou ambos.
- Caso você esteja utilizando um IDP diferente, quem atribui os usuários aos grupos de acesso: o administrador da nuvem ou o administrador do IDP?
- Se o administrador do IDP atribuir usuários por meio de regras dinâmicas, será necessário um atributo personalizado do usuário do IDP para ser usado como chave de correspondência (por exemplo, um atributo
team).
-
Quantas instâncias de serviço você precisa e para que cada uma delas será utilizada? Planeje os nomes das suas instâncias com cuidado. Sempre que você cria uma instância de serviço por meio da interface de usuário do IBM Quantum Platform, a plataforma faz uma chamada adicional ao IAM em seu nome para criar um grupo de acesso correspondente (com o mesmo nome da instância, seguido de “Colaboradores”) que concede acesso de gravação a essa instância. Portanto, os nomes das instâncias passam a ser também nomes de grupos de acesso. Essa etapa adicional ocorre apenas quando você cria uma instância por meio da interface de usuário do IBM Quantum Platform. Isso não ocorre se você criar a instância usando o Terraform, a CLI do IBM Cloud ou a API do IBM Cloud.
- As cargas de trabalho pertencem às instâncias de serviço, e os usuários que têm acesso a uma instância podem visualizar suas cargas de trabalho.
- As instâncias de serviço podem ser baseadas em planos diferentes, permitindo acesso a diferentes back-ends e alocações.
-
Quais usuários precisam acessar quais instâncias de serviço?
-
Os usuários deveriam poder excluir cargas de trabalho? Manter as cargas de trabalho em instâncias de serviço proporciona maior rastreabilidade para o faturamento dos custos.
-
Você vai usar o grupo de acesso criado automaticamente para cada instância, criar seus próprios grupos de acesso, atribuir acesso diretamente a usuários individuais ou organizar as instâncias em grupos de recursos?
- Os grupos de acesso são uma forma prática e comum de controlar o acesso dos usuários aos recursos d IBM Cloud. Cada instância de serviço criada por meio da interface de usuário do IBM Quantum Platform já possui seu próprio grupo de acesso “Colaboradores”. Você pode usar esse grupo como está ou criar grupos de acesso adicionais no console do IBM Cloud para agrupar usuários por equipe ou carga de trabalho (por exemplo,
mlefinance) em uma ou mais instâncias. Cada grupo de acesso utiliza uma função personalizada que permite aos usuários acessar instâncias específicas de serviços ou grupos de recursos. Se você não precisar que um grupo de usuários compartilhe o mesmo acesso, também poderá atribuir acesso diretamente a usuários individuais, sem precisar de um grupo de acesso.- Se você utilizar regras dinâmicas baseadas em atributos do IDP para atribuir usuários a grupos de acesso, evite valores de atributos que sejam subcadeias uns dos outros. Por exemplo, se você usar
mlechemlabcomo valores de atributos, uma regra que corresponda a tambémmlcorresponderia achemlab, concedendo acidentalmente mais acesso do que o esperado. Use valores exclusivos, como emlchem-lab, ou adicione prefixos ou sufixos para evitar correspondências indesejadas de subcadeias.
- Se você utilizar regras dinâmicas baseadas em atributos do IDP para atribuir usuários a grupos de acesso, evite valores de atributos que sejam subcadeias uns dos outros. Por exemplo, se você usar
- Os grupos de recursos são utilizados apenas quando é necessário manter uma separação clara entre as instâncias de serviço. Ao criar uma instância de serviço no site IBM Quantum Platform, você pode selecionar a qual grupo de recursos ela pertence (e adicionar tags), mas é necessário usar o console IBM Cloud para criar ou gerenciar os grupos de recursos. Se forem criadas mais instâncias de serviço em um grupo de recursos, todos os usuários com acesso ao grupo de recursos as verão automaticamente, sem a necessidade de atualizar os grupos de acesso. Se você optar por usar grupos de recursos, crie primeiro os grupos de acesso e, em seguida, atribua-os aos grupos de recursos.
NoteUma instância de serviço pode pertencer a apenas um grupo de recursos, e essa atribuição não pode ser alterada após a criação da instância. Portanto, os grupos de recursos podem não oferecer flexibilidade suficiente caso seja necessário, posteriormente, transferir instâncias de serviço entre grupos de recursos.
- Os grupos de acesso são uma forma prática e comum de controlar o acesso dos usuários aos recursos d IBM Cloud. Cada instância de serviço criada por meio da interface de usuário do IBM Quantum Platform já possui seu próprio grupo de acesso “Colaboradores”. Você pode usar esse grupo como está ou criar grupos de acesso adicionais no console do IBM Cloud para agrupar usuários por equipe ou carga de trabalho (por exemplo,
Considerações
Você deve entender as seguintes considerações ao configurar seu ambiente.
Defina funções mais detalhadas
As funções personalizadas podem ser utilizadas para um controle de acesso mais detalhado. Por exemplo, alguns usuários podem precisar de acesso total para trabalhar em instâncias de serviço, enquanto outros podem precisar apenas de acesso de leitura às instâncias de serviço, aos programas e às cargas de trabalho.
Para isso, defina duas funções personalizadas diferentes, como e MLreader MLwriter. Remova todas as ações de cancelamento, exclusão e atualização da função personalizada MLreader e inclua todas as ações na função personalizada MLwriter . Em seguida, adicione as funções a dois grupos de acesso diferentes, conforme o caso.
Ao utilizar regras dinâmicas, ou seja, quando o administrador do IDP gerencia o acesso por meio de atributos personalizados de usuário do IDP, não utilize atributos personalizados de usuário do IDP que sejam subcadeias uns dos outros. Por exemplo, não use ml e mlReader, pois a comparação de cadeias de caracteres de também ml aceitaria mlReader. Você poderia usar e MLreader MLwriter para evitar esse conflito.
Para ver um exemplo, consulte “Configurar funções personalizadas ”.
Acesso compartilhado à carga de trabalho
O acesso se aplica às instâncias de serviço. Assim, os usuários com acesso de gravação a uma instância (inclusive por meio do grupo de acesso “Colaboradores”, criado automaticamente para instâncias criadas pela interface de usuário do IBM Quantum Platform ) podem cancelar suas próprias cargas de trabalho, mas também podem visualizar e cancelar as cargas de trabalho de outros usuários nessa instância. Isso é uma característica do funcionamento do IAM e não pode ser alterado.
Simular estruturas hierárquicas
Por padrão, o acesso a cada instância de serviço é gerenciado de forma independente; por exemplo, por meio do grupo de acesso “Colaboradores”, criado automaticamente para as instâncias criadas pela interface de usuário do IBM Quantum Platform. O IAM não possui uma hierarquia de grupos integrada, mas é possível simular uma criando grupos de acesso que façam referência às instâncias de serviço de várias equipes. Os usuários que precisam de acesso amplo precisam apenas ser adicionados a um grupo de “nível superior”, em vez de serem adicionados ao grupo de acesso de cada equipe.
Implantação consistente e repetível da configuração
As etapas deste guia podem ser automatizadas para garantir um gerenciamento consistente e repetível de usuários, instâncias de serviço e os mapeamentos de acesso entre eles. Consulte a documentação do provedor “ IBM Cloud® ” do Terraform para obter modelos.
Você pode usar o Terraform para definir alocações e limites, bem como restringir o acesso ao backend, para instâncias de serviço quantum-computing . Consulte “Introdução ao Terraform” em IBM Cloud para obter mais informações.
Exemplo:
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
}
}
Próximas etapas
- Consulte Configurar o IBM Quantum Platform para uma organização para obter as etapas para configurar o IBM Quantum Platform.
- Entenda os planos disponíveis.
- Crie instâncias.
- Entenda a estrutura da conta “ IBM Cloud ”.
- Crie políticas e grupos de acesso.
- Gerenciar usuários.
- IBM Cloud Documentação do IAM para obter todos os detalhes sobre o IAM.
- IBM Cloud Documentação corporativa para o gerenciamento de várias contas vinculadas.